Flink 支持使用多种部署模式来满足不同规模应用的需求,常见的有单机模式,Standalone Cluster 模式,同时 Flink 也支持部署在其他第三方平台上,如 YARN,Mesos,Docker,Kubernetes 等。以下主要介绍其Standalone Cluster 模式的部署。
Standalone Cluster 模式是 Flink 自带的一种集群模式,具体配置步骤如下:
安装部署
1. 前置条件
使用该模式前,需要确保所有服务器间都已经配置好 SSH 免密登录服务。这里我以三台服务器为例,主机名分别为 hadoop001,hadoop002,hadoop003 , 其中 hadoop001 为 master 节点,其余两台为 slave 节点。
主机名 | master | slave |
hadoop001 | √ | |
hadoop002 | √ | |
hadoop003 | √ |
2. 搭建步骤
Flink 所有版本的安装包可以直接从其官网进行下载,这里我下载的 Flink 的版本为 1.12.4
,要求的 JDK 版本为 1.8.x +
。 下载后解压到指定目录:
tar -zxvf flink-1.12.4-bin-scala_2.11.tgz -C /usr/app
修改 conf/flink-conf.yaml
中 jobmanager 节点的通讯地址为 hadoop001:
jobmanager.rpc.address: hadoop001
修改 conf/slaves
配置文件,将 hadoop002 和 hadoop003 配置为 slave 节点:
hadoop002
hadoop003
将配置好的 Flink 安装包分发到其他两台服务器上:
scp -r /usr/app/flink-1.12.4 hadoop002:/usr/app
scp -r /usr/app/flink-1.12.4 hadoop003:/usr/app
在 hadoop001 上使用如下命令来启动集群:
bin/start-cluster.sh
此时控制台输出如下:
启动完成后可以使用 Jps
命令或者通过 WEB 界面来查看是否启动成功。
3. 可选配置
除了上面介绍的 jobmanager.rpc.address 是必选配置外,Flink 还支持使用其他可选参数来优化集群性能,主要如下:
- jobmanager.heap.size:JobManager 的 JVM 堆内存大小,默认为 1024m 。
- taskmanager.heap.size:Taskmanager 的 JVM 堆内存大小,默认为 1024m 。
- taskmanager.numberOfTaskSlots:Taskmanager 上 slots 的数量,通常设置为 cpu 核心的数量,或其一半。
- parallelism.default:任务默认的并行度。
- io.tmp.dirs:存储临时文件的路径,如果没有配置,则默认采用服务器的临时目录,如 LInux 的
/tmp
目录。
更多配置可以参考 Flink 的官方手册:Configuration
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。