部署Flink1.15集群

部署Flink1.15集群


一、准备工作

准备工作可以看我的另一篇文章https://blog.csdn.net/weixin_44328192/article/details/126861349
本节不再复述

1、准备 3 台 Linux 机器

本文所用的系统为CentOS7.6

2、下载Java8、最好下载Java11(注意:这里为了照顾已经下载Java8的同志)

在这里插入图片描述
翻译下意思就是:
Java 8的支持现在已弃用,并将在未来的版本中删除(FLINK-25247)。我们建议所有用户迁移到Java 11
在Flink docker镜像中的默认Java版本现在是Java 11 (Flink -25251)。有些图像是用Java 8构建的,标记为“java8”。

对Scala 2.11的支持已经在FLINK-20845中移除。所有(过渡地)依赖于Scala的Flink依赖都以它们所针对的Scala版本作为后缀,例如Flink -stream -scala_2.12。用户应该更新所有Flink依赖项,将“2.11”改为“2.12”。
Scala版本(2.11、2.12等)之间不是二进制兼容的。这也意味着,如果你正在升级到Flink Scala 2.12应用程序,你不能保证可以从Flink Scala 2.11应用程序的保存点恢复。这取决于您在应用程序中使用的数据类型。
Scala Shell/REPL已经在FLINK-24360中被移除。

3、安装 Hadoop 集群

Hadoop 建议选择 Hadoop 2.7.5 以上版本


二、下载安装Flink

这一节看https://blog.csdn.net/weixin_44328192/article/details/126906987
本文用的Flink的版本号为1.15.2
最后的配置和启动要回来看本篇文章

三、部署集群

Flink 是典型的 Master-Slave 架构的分布式数据处理框架,其中 Master 角色对应着
JobManager,Slave 角色则对应 TaskManager。我们对三台节点服务器的角色分配如表 所示
在这里插入图片描述

1、修改配置文件

①修改masters文件

vim masters
bigdata01:8081

在这里插入图片描述
这样就指定了bigdata01为 JobManager 节点。
②修改 workers 文件,将另外两台节点服务器添加为本 Flink 集群的 TaskManager 节点。

 vim workers
 bigdata02
 bigdata03

这样就指定了 bigdata02和 bigdata03为 TaskManager 节点。
③配置flink-conf.yaml

# master地址
jobmanager.rpc.address: bigdata01
 
# master端口,不用改
jobmanager.rpc.port: 6123
 
# master地址绑定设置(master节点参数)
jobmanager.bind-host: 0.0.0.0
 
# worker地址绑定设置
taskmanager.bind-host: 0.0.0.0
 
# worker地址(注意:要改成每个worker节点的主机名)
taskmanager.host: localhost
 
# worker槽位数设置,默认为 1
taskmanager.numberOfTaskSlots: 2
 
# 默认并行度,默认为 1
parallelism.default: 3
 
# WEB UI 端口(master节点参数) 放开注释即可
rest.port: 8081
 
# WEB UI 管理地址
rest.address: bigdata01
 
# WEB UI 地址绑定设置,想让外部访问,可以设置具体的IP,或者直接设置成“0.0.0.0”(master节点参数)
rest.bind-address: 0.0.0.0
 
# IO临时目录,默认:/tmp
io.tmp.dirs: /opt/module/flink-1.15.2/tmp

# 集群节点进程ID存放目录,默认:/tmp
env.pid.dir: /opt/module/flink-1.15.2/pids

# Job文件目录(master节点参数)
web.upload.dir: /opt/module/flink-1.15.2/usrlib

另外,在 flink-conf.yaml 文件中还可以对集群中的 JobManager 和 TaskManager 组件
进行优化配置,主要配置项如下:
(1)jobmanager.memory.process.size:对 JobManager 进程可使用到的全部内存进行配置,包括 JVM 元空间和其他开销,默认为 1600M,可以根据集群规模进行适当调整。
(2)taskmanager.memory.process.size:对 TaskManager 进程可使用到的全部内存进行配置,包括 JVM 元空间和其他开销,默认为 1728M,可以根据集群规模进行适当调整。
(3)taskmanager.numberOfTaskSlots:对每个 TaskManager 能够分配的 Slot 数量进行配置,默认为 1,可根据 TaskManager 所在的机器能够提供给 Flink 的 CPU 数量决定。所谓Slot 就是 TaskManager 中具体运行一个任务所分配的计算资源。
(4)parallelism.default:Flink 任务执行的默认并行度,优先级低于代码中进行的并行度配置和任务提交时使用参数指定的并行度数量。

2、分发安装目录

配置修改完毕后,将 Flink 安装目录发给另外两个节点服务器。

scp -r /opt/module/flink-1.15.2 bigdata02:/opt/module
scp -r /opt/module/flink-1.15.2 bigdata03:/opt/module

也可以用我之前部署hadoop文章中的xsync分发脚本

xsync /opt/module/flink-1.15.2

3、每个节点修改flink-conf.yaml中taskmanager.host的参数

在这里插入图片描述
在这里插入图片描述

3、启动集群

在 bigdata01节点服务器上执行 start-cluster.sh 启动 Flink 集群

start-cluster.sh

在这里插入图片描述
然后三台主机分别jps看一下
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
可以看到三台主机的Flink进程都已经正常启动了
我们打开bigdata01:8081看一下
在这里插入图片描述

可以看到每一个taskmanager节点的内存信息
在这里插入图片描述
在这里插入图片描述
也可以看到jobmanager节点的内存信息
在这里插入图片描述

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值