最新版Flink1.14.0集群超详细部署及测试
Flink在去年9月份发布了最新版Flink1.14.0,新版本中 Flink 一个主要变化是集成了流媒体和批处理体验,此外,在 SQL API、更多连接器支持、检查点和 PyFlink 等方面也带来了许多新功能和改进。
更多详细内容,点击1.14.0 发布公告
参考链接:Apache Flink: Apache Flink 1.14.0 Release Announcement
正好我的Flink环境需要重新配置,那我就把最新的1.14安排上,具体介绍下怎么配置。
一、系统环境
主机名 |
系统 |
内存 |
磁盘 |
ss3(主节点) |
Centos7.6 |
4G |
50G |
ss4 |
Centos7.6 |
4G |
50G |
ss5 |
Centos7.6 |
2G |
50G |
大数据基础环境就不必说了,ssh免密,时间同步,hosts配置,scala环境,最基本的hdfs肯定要有的,具体操作可以参考我另一篇文章
二、Flink配置
2.1、下载上传Flink1.14.0软件包
下载:https://flink.apache.org/downloads.html
2.2、上传解压
tar -xzvf flink-1.14.0-bin-scala_2.12.tgz
2.3、修改配置文件
修改master节点即可
[root@ss3 conf]# vi /software/flink-1.14.0/conf/masters
ss3:8081
[root@localhost conf]# vi /software/flink-1.14.0/conf/workers
ss3
ss4
ss5
[root@ss3 conf]# vi /software/flink-1.14.0/conf/flink-conf.yaml
jobmanager.rpc.address: ss3 ##指向master节点
jobmanager.rpc.port: 6123
jobmanager.memory.process.size: 1024m 定义允许JVM在每个节点上分配的最大主内存量
taskmanager.memory.process.size: 1024m
taskmanager.numberOfTaskSlots: 1
parallelism.default: 1
jobmanager.execution.failover-strategy: region
web.upload.dir: /software/flink-1.14.0/jars #不能设置为HDFS
env.ssh.opts: -p 22 ##指定传输端口,默认22时可不设置
将以上修改的3个配置文件同步到ss4,ss5两个从节点
scp flink-conf.yaml root@ss4:/software/flink-1.14.0/conf/
scp masters root@ss4:/software/flink-1.14.0/conf/
scp workers root@ss4:/software/flink-1.14.0/conf/
2.4、启动
在master启动即可,另外两台无需操作:
[root@ss3 flink-1.14.0]# ./bin/start-cluster.sh
访问web管理端查看启动情况
三、测试运行
测试的话当然还是大数据的经典案例wordcount了
3.1安装nc
yum install -y nc
3.2 在控制台窗口1中启动一个本地服务
nc -l -p 19000
3.3 在控制台窗口2中提交flink程序
bin/flink run examples/streaming/SocketWindowWordCount.jar --hostname ss3 --port 19000
我们刷新web管理端,可以看到启动了一个job
3.4 在控制台窗口3中打开out日志文件
[root@ss3 ~]# cd /software/flink-1.14.0/log/
[root@ss3 log]# tail -f flink-root-taskexecutor-0-ss3.out
out文件更新后,控制台中会自动显示新增的数据
3.5 输入测试数据
我们回到控制台1窗口,输入语句,在控制台3中查看统计结果,如下图所示
我们在一行语句中输入重复单词
可以看到flink被统计了2次
Job运行详情
总结
感谢能看到这里的朋友😉
本次的分享就到这里,猫头鹰数据致力于为大家分享技术干货😎
如果以上过程中出现了任何的纰漏错误,烦请大佬们指正😅
受益的朋友或对技术感兴趣的伙伴记得点赞关注支持一波🙏