docker安装flink

在 Docker 中安装和配置 Flink

本教程将分享如何在 Docker 环境中安装和配置 Flink,这是一个流行的开源流处理框架。

1. 拉取 Flink 镜像

首先,从 Docker Hub 拉取所需的 Flink 版本。这里我们使用 flink:1.13.6-scala_2.12-java8 版本:

docker pull flink:1.13.6-scala_2.12-java8

曾续缘

2. 创建 Docker 网络

为了方便 JobManager 和 TaskManager 容器之间的通信,我们创建一个 Docker 网络:

docker network create flink-network

曾续缘

3. 启动 JobManager 容器

接下来,启动 JobManager 容器,这是 Flink 集群的主节点:

docker run \
  -itd \
  --name=jobmanager \
  --publish 8081:8081 \
  --network flink-network \
  --env FLINK_PROPERTIES="jobmanager.rpc.address: jobmanager" \
  flink:1.13.6-scala_2.12-java8 jobmanager

曾续缘

这条命令创建了一个名为 jobmanager 的容器,并将容器的 8081 端口映射到宿主机的 8081 端口,以便访问 Flink Web UI。

曾续缘

4. 启动 TaskManager 容器

然后,启动 TaskManager 容器,这是 Flink 集群的从节点:

docker run \
  -itd \
  --name=taskmanager \
  --network flink-network \
  --env FLINK_PROPERTIES="jobmanager.rpc.address: jobmanager" \
  flink:1.13.6-scala_2.12-java8 taskmanager

曾续缘

5. 配置 Task Slots

我们可以根据需求调整 Task Slots 的数量。首先,从 TaskManager 容器复制配置文件:

docker cp taskmanager:/opt/flink/conf/flink-conf.yaml /root/flink-conf.yaml

然后,在 flink-conf.yaml 文件中找到并修改 taskmanager.numberOfTaskSlots 的值。例如,将其设置为 3:

taskmanager.numberOfTaskSlots: 3

停止当前的 TaskManager 容器:

docker stop taskmanager
docker rm taskmanager

重新启动 TaskManager 容器,并挂载修改后的配置文件:

docker run \
  -itd \
  --name=taskmanager \
  --network flink-network \
  -v /root/flink-conf.yaml:/opt/flink/conf/flink-conf.yaml \
  --env FLINK_PROPERTIES="jobmanager.rpc.address: jobmanager" \
  flink:1.13.6-scala_2.12-java8 taskmanager

6. 访问 Flink Web UI

最后,我们可以通过以下 URL 访问 Flink Web UI:

http://192.168.101.101:8081/

曾续缘

我们看到 Available Task Slots 的数量已经更新。

结语

通过以上步骤,我们已经在 Docker 中成功安装和配置了 Flink。现在就可以开始提交和监控 Flink 作业了。

参考链接:cengxuyuan.cn

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值