Flink集群部署
快速上手
创建maven工程,JDK1.8,导入相关依赖
xml
<properties>
<flink.version>1.17.0</flink.version>
</properties>
<dependencies>
<dependency>
<groupId>org.apache.flink</groupId>
<artifactId>flink-streaming-java</artifactId>
<version>${flink.version}</version>
</dependency>
<dependency>
<groupId>org.apache.flink</groupId>
<artifactId>flink-clients</artifactId>
<version>${flink.version}</version>
</dependency>
</dependencies>
Flink集群搭建
需要保证大数据集群三台虚拟机CentOS7(hadoop102,hadoop103,hadoop104)已经完成了ssh免密登录、hadoop集群搭建,配置好host变量为hadoop102,hadoop103,hadoop104等相关工作。未完成的请先看:
https://blog.csdn.net/weixin_73195042/article/details/135886619
。
集群规划&集群角色分配
节点服务器 | hadoop102 | hadoop103 | hadoop104 |
---|---|---|---|
角色 | JobManagerTaskManager | TaskManager | TaskManager |
部署
从官网下载flink安装包:flink.apache.org/zh/downloads/,本文使用1.17版本。
将安装包上传到/opt/software.,在/opt/software路径上解压flink-1.17.0-bin-scala_2.12.tgz到/opt/module路径上。
tar -zxvf flink-1.17.0-bin-scala_2.12.tgz -C /opt/module/
修改集群配置
进入conf路径,修改flink-conf.yaml文件,指定hadoop102节点服务器为JobManager
# JobManager节点地址.
jobmanager.rpc.address: hadoop102
jobmanager.bind-host: 0.0.0.0
rest.address: hadoop102
rest.bind-address: 0.0.0.0
# TaskManager节点地址.需要配置为当前机器名
taskmanager.bind-host: 0.0.0.0
taskmanager.host: hadoop102
修改workers文件,指定hadoop102、hadoop103和hadoop104为TaskManager
hadoop102
hadoop103
hadoop104
修改masters文件
hadoop102:8081
分发安装目录
可以使用scp命令(注意三台虚拟机需要提前配置好免密登录)分发flink文件夹到hadoop103,hadoop104
修改hadoop103的 taskmanager.host
vim flink-conf.yaml
修改如下内容:
# TaskManager节点地址.需要配置为当前机器名
taskmanager.host: hadoop103
hadoop104也要修改这个文件,并且配置对应的机器名
启动集群
hadoop102节点服务器上执行start-cluster.sh启动Flink集群。
bin/start-cluster.sh
查看进程情况:
=============== hadoop102 ===============
81655 TaskManagerRunner
81242 StandaloneSessionClusterEntrypoint
82398 Jps
=============== hadoop103 ===============
74112 Jps
73420 TaskManagerRunner
=============== hadoop104 ===============
74882 Jps
74251 TaskManagerRunner
访问Web UI
启动成功后,同样可以访问http://hadoop102:8081对flink集群和任务进行监控管理。我们能看到当前集群的TaskManager数量为3;由于默认每个TaskManager的Slot数量为1,所以总Slot数和可用Slot数都为3。至此,flink集群搭建成功!
快速删除输错命令
bash
esc+删除键(backspace)
ctrl+u
如果用退格删除可能会出现^H,此时我们可以用ctrl+退格键来删除内容。