1.standalone模式
1.1 安装
解压缩 flink-1.7.0-bin-hadoop27-scala_2.11.tgz
修改 flink/conf/flink-conf.yaml 文件
修改 /conf/slave文件
分发给 另外两台机子
scp -r flink-1.7.0-bin-hadoop27-scala_2.11 slave1:/usr/local/src
scp -r flink-1.7.0-bin-hadoop27-scala_2.11 slave2:/usr/local/src
启动
访问 http://hadoop1:8081
1.2 测试
-
准备数据文件
在linux上开启socket端口
nc -l 9999
输入如下数据:
-
执行程序
./flink run -c com.gzjy.StreamWordCount flink-study.jar
输出结果如下
补充
如果需要用到HDFS,则需要在每台节点配置HADOOP_CONF_DIR和HADOOP_CLASSPATH
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
export HADOOP_CLASSPATH=`hadoop classpath`
并且下载一个jar包放在Flink的lib目录下
下载地址:https://repo.maven.apache.org/maven2/org/apache/flink/flink-shaded-hadoop-2-uber/
要按照HADOOP版本下载(记得分发到从节点)
2.yarn模式
1)启动hadoop集群
2)导入环境变量:
export HADOOP_HOME=/app/hadoop-2.6.4
export PATH=$JAVA_HOME/bin:$HADOOP_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
3)启动yarn-session
./yarn-session.sh -n 2 -s 2 -jm 1024 -tm 1024 -nm test -d
其中:
-n(--container):TaskManager的数量。
-s(--slots): 每个TaskManager的slot数量,默认一个slot一个core,默认每个taskmanager的slot的个数为1,有时可以多一些taskmanager,做冗余。
-jm:JobManager的内存(单位MB)。
-tm:每个taskmanager的内存(单位MB)。
-nm:yarn 的appName(现在yarn的ui上的名字)。
-d:后台执行。
启动后报错,说找不到jar包
实在百度不出来,就做了一下操作解决了问题
1.更换Flink版本为Flink1.9.1,这个问题还是存在
2.去官网下载一个额外的jar包,放入flink安装包的lib目录下
下载地址:https://flink.apache.org/downloads.html
重启Hadoop集群,再次执行启动Flink集群命令,发现启动成功。
4)去yarn控制台查看任务状态
3.单机版部署
step1 解压:
]# tar -zxvf flink-1.9.1-bin-scala_2.11.tgz
step2 配置
1)配置flink-conf.yaml
首先查看主机名:[root@logserver flink-1.9.1]# hostname
logserver
再配置主机名:
]# vim conf/flink-conf.yaml
jobmanager.rpc.address: logserver
2)配置conf/masters
[root@logserver flink-1.9.1]# cat conf/masters
logserver:8081
step3 启动单机版flink:
]# ./bin/start-cluster.sh
step4 查看dashboard界面:http://logserver:8081
step5 官方案例演示
- 启动一个终端输入如下指令:
nc -lk 8000 -
启动第二个终端,执行flink自带的wordcount案例
bin/flink run examples/streaming/SocketWindowWordCount.jar --port 8000
3.在第一个终端发送数据:
hello
world
zhangsan
lisi
hello
aaa
aaa
-
测试结果保存在log/flink-root-taskexecutor-0-woniu.out文件中
网友评论