Flink Standalone 集群部署

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

你可能感兴趣的:(flink,kubernetes)