03. Flink 集群部署
1、集群角色
Flink 提交作业和执行任务,需要几个关键组件:
- **客户端:**代码由客户端获取并做转换,之后提交给 JobManager。
- **JobManager:**Flink 集群里的管事人,对作业进行中央调度管理,而它获取到要执行的作业后,会进一步处理转换,然后分发任务给众多的 TaskManager。
- **TaskManager:**真正干活的人,数据的处理都是由他们来做。
2、集群部署
准备三台虚拟机,一台作为主节点部署 JobManager,然后三台机器分别部署 TaskManager。
ip地址 | JobManager | TaskManager |
---|---|---|
192.168.135.132 | JobManager | TaskManager |
192.168.135.133 | TaskManager | |
192.168.135.134 | TaskManager |
2.1 下载安装包
(1)下载 Flink 安装包,上传到 /root/software 路径
下载地址:https://archive.apache.org/dist/flink/flink-1.17.0/flink-1.17.0-bin-scala_2.12.tgz
(2)解压到/usr/local
https://archive.apache.org/dist/flink/flink-1.17.0/flink-1.17.0-bin-scala_2.12.tgz
2.2 配置
先部署主节点 192.168.135.132。
(1)修改配置 /usr/local/flink-1.17.0/conf/flink-conf.yaml
机器192.168.135.132配置:
jobmanager.rpc.address: 192.168.135.132
jobmanager.bind-host: 192.168.135.132
taskmanager.bind-host: 192.168.135.132
taskmanager.host: 192.168.135.132
rest.address: 192.168.135.132
rest.bind-address: 192.168.135.132
(2)修改 /usr/local/flink-1.17.0/conf/workers:
192.168.135.132
192.168.135.133
192.168.135.134
(3)修改 /usr/local/flink-1.17.0/conf/masters:
192.168.135.132:8081
(4)将 Flink 整个文件夹发送给192.168.135.133 和 192.168.135.134。
scp -r /usr/local/flink-1.17.0 root@192.168.135.133:/usr/local/
scp -r /usr/local/flink-1.17.0 root@192.168.135.134:/usr/local/
第一步输入 yes:
第二步输入机器密码:
(5)修改192.168.135.133 机器的配置,其他保持不变。
/usr/local/flink-1.17.0/conf/flink-conf.yaml
taskmanager.bind-host: 192.168.135.133
taskmanager.host: 192.168.135.133
(5)修改192.168.135.134 机器的配置,其他保持不变。
/usr/local/flink-1.17.0/conf/flink-conf.yaml
taskmanager.bind-host: 192.168.135.134
taskmanager.host: 192.168.135.134
2.3 启动集群
(1)在主节点 192.168.135.132 机器启动
cd /usr/local/flink-1.17.0/bin
./start-cluster.sh
然后依次输入三台机器的密码
(2)进入web管理端,进入下面地址
http://192.168.135.132:8081/
可以查看有三台工作节点
如果能看到上述信息,说明我们的集群已经部署完成。