Flink1.18.1 Standalone模式集群搭建
- Flink1.18.1 Standalone模式集群搭建
- 1. 环境准备
- 1.1 Flink下载地址
- 1.2 集群角色分配
- 2. Flink 集群安装步骤
- 2.1 下载并解压 Flink
- 2.2 解压安装包
- 2.3 配置环境变量
- 2.4 配置 SSH 免密登录
- 3. 配置 Flink 集群
- 3.1 修改 `flink-conf.yaml` 配置文件
- JobManager 节点 (`node1`)
- TaskManager 节点 (`node2`)
- TaskManager 节点 (`node3`)
- 3.2 配置 Master 和 Worker 节点
- 配置 Master 节点
- 配置 Worker 节点
- 3.3 分发 Flink 安装包到其他节点
- 4. 启动 Flink 集群
- 4.1 启动集群
- 4.2 验证集群状态
Flink1.18.1 Standalone模式集群搭建
本文将介绍如何在 Linux 服务器上搭建 Flink Standalone 集群,包含环境准备、配置修改和任务提交的步骤。
工具 | 版本 | 作用 |
---|---|---|
Flink | 1.18.1 | Apache Flink,支持大数据处理和流处理任务 |
MySQL | 8.0.31 | MySQL 数据库,提供高性能的关系型数据库服务 |
1. 环境准备
搭建集群需要准备 3 台 Linux 服务器,并在每台服务器上安装 JDK 8 以上版本。
1.1 Flink下载地址
官网下载地址:https://dlcdn.apache.org/flink/flink-1.18.1/flink-1.18.1-bin-scala_2.12.tgz
1.2 集群角色分配
节点IP | 节点名称 | Flink服务 |
---|---|---|
192.168.0.168 | node1 | JobManager, TaskManager |
192.168.0.73 | node2 | TaskManager |
192.168.0.34 | node3 | TaskManager |
2. Flink 集群安装步骤
为了搭建高可用的 Flink 集群,需确保 3 台 Linux 服务器 已经安装 JDK 8 或更高版本。
2.1 下载并解压 Flink
从 Apache Flink 官方下载页面获取 Flink 1.18.1 安装包,或者使用以下命令下载:
wget https://archive.apache.org/dist/flink/flink-1.18.1/flink-1.18.1-bin-scala_2.12.tgz
2.2 解压安装包
将下载的安装包解压到指定目录:
tar -xzf /mnt/sdb2/flink-1.18.1-bin-scala_2.12.tgz -C /mnt/sdb2
2.3 配置环境变量
建议在每个节点上配置环境变量,方便使用 Flink 命令。编辑 /etc/profile
文件,在文件末尾添加:
echo 'export FLINK_HOME=/mnt/sdb/flink-1.18.1' >> /etc/profile
echo 'export PATH=$PATH:$FLINK_HOME/bin' >> /etc/profile
source /etc/profile
2.4 配置 SSH 免密登录
在 Flink 集群中,各个节点之间需要免密登录。以下是 SSH 免密登录的配置步骤:
-
生成 SSH 密钥(在 JobManager 节点上):
ssh-keygen -t rsa
公钥生成后,默认存放在
~/.ssh/id_rsa.pub
中。 -
将公钥复制到其他节点:
ssh-copy-id root@node2_IP ssh-copy-id root@node3_IP
-
验证免密登录:
在主节点上执行以下命令,验证是否免密登录成功:ssh root@node2_IP ssh root@node3_IP
3. 配置 Flink 集群
3.1 修改 flink-conf.yaml
配置文件
在每个节点的 /conf
目录下,编辑 flink-conf.yaml
文件。以下是各节点的配置示例:
JobManager 节点 (node1
)
jobmanager.rpc.address: 192.168.0.168
jobmanager.bind-host: 0.0.0.0
rest.address: 192.168.0.168
rest.bind-address: 0.0.0.0
TaskManager 节点 (node2
)
taskmanager.host: 192.168.0.73
TaskManager 节点 (node3
)
taskmanager.host: 192.168.0.34
3.2 配置 Master 和 Worker 节点
配置 Master 节点
在 masters
文件中配置 JobManager 节点:
vim $FLINK_HOME/conf/masters
192.168.0.168:8081
配置 Worker 节点
在 workers
文件中配置 TaskManager 节点:
vim $FLINK_HOME/conf/workers
node1
node2
node3
3.3 分发 Flink 安装包到其他节点
将安装好的 Flink 目录分发到 node2
和 node3
:
scp -r /mnt/sdb2/flink-1.18.1 root@192.168.0.73:/mnt/sdb/
scp -r /mnt/sdb2/flink-1.18.1 root@192.168.0.34:/mnt/sdb/
4. 启动 Flink 集群
4.1 启动集群
在 JobManager 节点 (node1
) 上,执行:
cd /mnt/sdb2/flink-1.18.1/bin
./start-cluster.sh
4.2 验证集群状态
访问 http://192.168.0.168:8081
,应能看到 Flink 的 Web UI
如果 node2
和 node3
节点没有启动成功,分别在两个节点上启动 TaskManager:
cd /mnt/sdb/flink-1.18.1/bin
./taskmanager.sh start