1、环境配置
- 为方便演示,准备3台CentOS Linux release 7.9.2009虚机
- 安装Java 8
- 配置集群节点服务器时间同步以及免密登录,关闭防火墙
其中,三台服务器具体参数如下
节点1,IP为192.168.0.3,主机名为node1
节点1,IP为192.168.0.4,主机名为node2
节点1,IP为192.168.0.5,主机名为node3
2、本地启动(Local)
最简单的启动方式是直接本地启动,不搭建集群,直接解压安装包就可以使用,不用进行任何配置,一般用来做一些简单的测试,具体步骤如下。
2.1 下载安装包
进入Flink官网(https://flink.apache.org/downloads.html),下载1.13.0版本的安装包flink-1.13.0-bin-scala_2.12.tgz,此处选用的是scala版本为scala 2.12的安装包。
2.2 解压
在node1节点服务器上创建安装包上传目录/opt/software和安装目录/opt/module,上传flink安装包完成后,解压至指定目录。
$ tar-zxvf flink-1.13.0-bin-scala_2.12.tgz -C /opt/module/
2.3 启动与停止
进入解压后的目录,执行启动命令,并查看进程。配置文件为conf/flink-conf.yaml。
$ cd /opt/module/flink-1.13.0/bin
$ ./start-cluster.sh
# 查看进程jsp或者ps -ef|grep flink
$ jps
# 以下是启动的进程2546 StandaloneSessionClusterEntrypoint
2813 TaskManagerRunner
# 停止flink集群
$ ./stop-cluster.sh
2.4 访问Web UI
启动成功后,访问http://192.168.0.3:8081,可以对flink集群和任务进行监控管理,如图所示。注:如果无法访问,检查下集群机器防火墙是否已经关闭。
3、集群启动(Standalone cluster)
Flink是典型的Master-Slave架构的分布式数据处理框架,其中Master角色对应着JobManager,Slave角色对应TaskManager,我们对三台服务器的角色分配如下:
节点服务器node1node2node3角色JobManagerTaskManagerTaskManager
3.1 下载并解压安装包
具体操作与上节相同。
3.2 修改集群配置
(1)进入conf目录下,修改flink-conf.yaml文件,修改jobmanager.rpc.address参数为node1 IP,指定JobManager,如下所示:
$ cd conf/
$ vi flink-conf.yaml
# JobManager节点地址
jobmanager.rpc.address: 192.168.0.3
(2)修改workers文件,将另外两台节点服务器添加为本Flink集群的TaskManager节点,如下所示:
$ cd conf/ &&vi workers
192.168.0.4
192.168.0.5
# 注意,masters文件可以不用修改localhost,不影响JobManager的指定
(3)flink安装目录分发到其他两个节点上,如下所示:
$ cd /opt/
$ scp-r module [email protected]:/opt
$ scp-r module [email protected]:/opt
(4)在node1上启动集群,如下所示。集群启动成功后,同样可以通过web ui查看监控情况。
$ cd /opt/module/flink-1.13.0/bin
$ ./start-cluster.sh
# 输出如下,表示node2和node3分别启动了一个taskmanager,node1上只有jobmanager
Starting cluster.
Starting standalonesession daemon on host node1.
Starting taskexecutor daemon on host node2.
Starting taskexecutor daemon on host node3.
$ jps
2301 Jps
2238 StandaloneSessionClusterEntrypoint
# node2上
$ jps
3710 Jps
3583 TaskManagerRunner
# node3上
$ jps
2887 Jps
2749 TaskManagerRunner
4、Yarn集群启动
Yarn模式是使用Yarn集群做为Flink运行平台,JobManager、TaskManager、用户提交的应用程序都运行在YARN上。具体安装部署方式请参考。
版权归原作者 Ant Brother 所有, 如有侵权,请联系我们删除。