1 基础环境
1.1 list
代码语言:javascript复制CentOS 7.9.2009
flink-1.13.1
jdk1.8.0_151
[root@op-node-221 ~]# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.0.220 flink01
192.168.0.221 flink02
192.168.0.222 flink03
192.168.0.223 flink04
192.168.0.224 flink05
1.2 主机清单
节点名 | IP | 软件版本 | 硬件 | 网络 | 说明 |
---|---|---|---|---|---|
flink01 | 192.168.0.220 | list 里面都有 | 4c8g | Nat,内网 | 测试环境 |
flink02 | 192.168.0.221 | list 里面都有 | 4c8g | Nat,内网 | 测试环境 |
flink03 | 192.168.0.222 | list 里面都有 | 4c8g | Nat,内网 | 测试环境 |
2 部署 Standalone Cluster 单机模式(开发)
代码语言:javascript复制tar xf flink-1.13.1-bin-scala_2.12(1).tgz -C /opt/data/apps/
/opt/data/apps/flink-1.13.1/bin/start-cluster.sh
3 集群模式(测试)
3.1 修改配置文件
代码语言:javascript复制vim /opt/data/apps/flink-1.13.1/conf/flink-conf.yaml
jobmanager.rpc.address: flink01
jobmanager.rpc.port: 6123
#jobmanager.heap.size: 1024m
taskmanager.memory.process.size: 1568m
taskmanager.numberOfTaskSlots: 3
parallelism.default: 3
# 修改/opt/data/apps/flink-1.13.1/conf/masters节点
[root@op-node-221 ~]# cat /opt/data/apps/flink-1.13.1/conf/masters
flink02:8081
[root@op-node-220 flink-1.13.1]# cat /opt/data/apps/flink-1.13.1/conf/masters
flink01:8081
[root@op-node-222 ~]# cat /opt/data/apps/flink-1.13.1/conf/masters
flink03:8081
# 修改/opt/data/apps/flink-1.13.1/conf/slaves节点
[root@op-node-222 ~]# cat /opt/data/apps/flink-1.13.1/conf/slaves
flink01
flink02
flink03
# 拷贝到其他两台机器,也可以压缩再传输过去
scp -r /opt/data/apps/flink-1.13.1/ flink02:/opt/data/apps/
scp -r /opt/data/apps/flink-1.13.1/ flink03:/opt/data/apps/
# 此处记得修改/opt/data/apps/flink-1.13.1/conf/flink-conf.yaml 里面的
jobmanager.rpc.address: flink01(此处为对应主机的主机名)
3.2 启动集群
三台主机执行以下命令
代码语言:javascript复制/opt/data/apps/flink-1.13.1/bin/start-cluster.sh
随后访问 http://IP:8081/
可以看到有3个Task Managers,1个Job Manager 为bigdata1
可以看到有3个Task Managers,1个Job Manager;
4 HA高可用模式(生产)
目前没用,hadoop,hdfs说是后面要独立出来;
- 对应hadoop版本下载
我使用的hadoop版本为:hadoop-2.6.5 对应依赖包:下载
其他版本:下载
- 把依赖包放在flink 的 lib 目录下
- 配置环境变量
vi /etc/profile
# 添加环境变量
export HADOOP_CONF_DIR=/home/admin/hadoop-2.6.5/etc/hadoop
# 环境变量生效
source /etc/profile
4.1 修改conf/flink-conf.yaml配置文件
修改如下几个参数
代码语言:javascript复制high-availability: zookeeper
high-availability.storageDir: hdfs://bigdata1/flinkha/
high-availability.zookeeper.quorum: bigdata1:2181
high-availability.zookeeper.path.root: /flink
state.checkpoints.dir: hdfs:///flink/checkpoints
state.savepoints.dir: hdfs:///flink/savepoints
4.2 启动hdfs
关于hadoop的配置文件与启动方式在这就不赘述了;
4.3 启动Flink中Zookeeper
进入flink文件夹
代码语言:javascript复制./bin/start-zookeeper-quorum.sh
jps查看是否启动
4.4 启动Flink
代码语言:javascript复制/opt/data/apps/flink-1.13.1/bin/start-cluster.sh
分别打开访问:
http://bigdata1:8081/
http://bigdata2:8081/
两个页面都可以查看集群信息
4.5 测试
我们可以 kill掉bigdata1机器上的Job Manager,然后备用(bigdata2)Job Manager也是可以使用的;
- 再启动bigdata1的Job Manager
https://developer.aliyun.com/article/765741
https://juejin.cn/post/7010599971233890312#heading-1