0%

在linux-aarch64下部署flink集群

环境版本介绍

跟之前zookeeper&solr一致,本教程也是基于脚本,目的是简单快速、高效率的部署。废话不说,让我们开始吧。

虽然kafka集群基于 zookeeper,flink的高可用也可基于 zookeeper,但是本此安装包中并不包含zookeeper的安装,关于zookeeper的安装参考solr那一篇教程

软件 版本
JDK 1.8.0_251-ARM64
KAFKA 2.12-2.6.0
FLINK 1.9.3-bin-scala_2.12
WI-KAFKA-INSTALLER (内含上述软件) 1.0

[WI-KAFKA-INSTALLER] 安装包下载

服务器部署信息

IP kafka[brokerid] flink
192.168.1.210 1 master
192.168.1.211 2 slave
192.168.1.212 3 slave

安装过程

上传安装包至 /wisoft目录,并解压 tar -zxf wi-kafka-installer-1.0.tar.gz

然后在/wisoft目录下执行脚本 wi-kafka-install..sh

脚本首先会检测JAVA环境,如果未检测到会自动给系统添加JAVA环境,如下:

接着脚本会提示你想要安装的软件,2选1

1
2
3
4
5
6
7
8
[root@dfs-01 wisoft]# ./wi-kafka-install.sh
获取到本机IP: 192.168.1.210
安装包目录 : /wisoft/installs
JDK版本 : jdk-8u261-linux-arm64-vfp-hflt.tar.gz
FLINK版本 : flink-1.9.3-bin-scala_2.12.tgz
KAFKA版本 : kafka_2.12-2.6.0.tgz
JAVA_HOME = /wisoft/java/jdk1.8.0_261
请输入你要安装的软件,1:kafka,2:flink[1/2]?

flink安装

在选择安装flink之后,脚本将提示输入本机标识,并提示你设置MASTER节点IP和SLAVE节点的IP

1
2
3
4
5
6
7
8
9
10
11
12
13
14
获取到本机IP: 192.168.1.210
安装包目录 : /wisoft/installs
JDK版本 : jdk-8u261-linux-arm64-vfp-hflt.tar.gz
FLINK版本 : flink-1.9.3-bin-scala_2.12.tgz
KAFKA版本 : kafka_2.12-2.6.0.tgz
JAVA_HOME = /wisoft/java/jdk1.8.0_251
请输入你要安装的软件,1:kafka,2:flink[1/2]?2
正在安装flink...
请设置MASTER节点IP地址: 192.168.1.210

请添加SLAVE节点IP地址,用','分隔: 192.168.1.211,192.168.1.212

flink安装完成,FLINK_HOME: /wisoft/flink/flink-1.9.3
请在MASTER节点,执行 start-cluster.sh 启动集群

在提示安装完成后,最好执行 source ~/.bashrc 来刷新环境变量

附安装过程视频

flink测试

安装完毕后,在master节点使用命令 start-cluster.sh 在启动集群

使用 jps 查看启动后进程是否存在

1
2
3
[root@dfs-01 flink-1.9.3]# jps
4834 Jps
4668 StandaloneSessionClusterEntrypoint
1
2
3
[root@dfs-02 flink-1.9.3]# jps
4608 Jps
4493 TaskManagerRunner
1
2
3
[root@dfs-03 flink-1.9.3]# jps
12266 Jps
10715 TaskManagerRunner

本例中 master主要是 jobmanager StandaloneSessionClusterEntrypoint 两个 slave TaskManagerRunner

使用 cd $FLINK_HOME/log 查看日志是否正常

通过 http://192.168.1.210:8081/ 访问master 的WEB-UI界面是否正常
image

安然无恙之后,使用在其中一个节点上执行 flink run $FLINK_HOME/examples/streaming/WordCount.jar

1
2
3
4
5
6
7
8
[root@dfs-01 flink-1.9.3]# flink run examples/streaming/WordCount.jar
Starting execution of program
Executing WordCount example with default input data set.
Use --input to specify file input.
Printing result to stdout. Use --output to specify output path.
Program execution finished
Job with JobID b8f8d355e0ca5dfa3511907cd86e1695 has finished.
Job Runtime: 6430 ms

通过 http://192.168.1.210:8081/ 访问master 的WEB-UI界面查看执行的任务

image

查看任务执行结果输出

image

基本运维命令

操作 命令
启动 master节点 start-cluster.sh
停止 master节点 stop-cluster.sh