1.1 架构说明(standalone模式)
standalone模式是Flink自带的分布式集群模式,不依赖其他的资源调度框架

1.2 搭建步骤
- 下载flink安装包,下载地址:https://flink.apache.org/downloads.html
- 上传flink安装包到Linux服务器上
- 解压flink安装包
tar -xvf flink-1.12.0-bin-scala_2.12.tgz -C /bigdata/
- 修改conf目录下的flink-conf.yaml配置文件
#指定jobmanager的地址
jobmanager.rpc.address: node-1.51doit.cn
#指定taskmanager的可用槽位的数量taskmanager.numberOfTaskSlots: 2
- 修改conf目录下的workers配置文件,指定taskmanager的所在节点
node-2.51doit.cn
node-3.51doit.cn
- 将配置好的Flink拷贝到其他节点
for i in {2..3}; do scp -r flink-1.12.0/ node-$i.51doit.cn:$PWD; done
1.3 启动flink集群和检测
- 执行启动脚本
bin/start-cluster.sh
- 执行jps命令查看Java进程
jps
在ndoe-1上可用看见StandaloneSessionClusterEntrypoint进程即JobManager,在其他的节点上可用看见到TaskManagerRunner 即TaskManager
- 访问JobManager的web管理界面,端口8081

1.4 提交Flink任务
第①步:启动nc
在指定的节点上先启动一个socket端口服务,这里可以使用nc,如果没有可以使用yum install -y nc安装,我这里是在node-1.51doit.cn主机名的节点上启动的
nc -lk 8888
- 第一种方式:通过web页面提交
第②步:方法jobManager所在节点的8081端口,点击Submint New Job

第③步:点击Add New 上传Jar包,这个示例jar包在官方给的example目录下

第④步:设置参数并点击Submit提交

- 第二种方式:使用命令行提交
bin/flink run -m node-1.51doit.cn:8081 -p 4 -c org.apache.flink.streaming.examples.socket.SocketWindowWordCount jar包 --hostname node-1.51doit.cn --port 8888
参数说明:
-m指定主机名后面的端口为JobManager的REST的端口,而不是RPC的端口,RPC通信端口是6123
-p 指定是并行度
-c 指定main方法的全类名
第⑤步:查看执行信息

第⑥步:在启动nc服务的节点上输入一下测试数据

第⑦步:查看执行结果

在点击Stdout查看打印的结果

第⑧步:点击Overview查看集群资源情况

星哥原创,未经许可,不得转载