使用docker搭建flink集群

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用docker搭建flink集群相关的知识,希望对你有一定的参考价值。

参考技术A 【参考】: https://blog.csdn.net/lizhe_dashuju/article/details/100541121

1.拉取centos镜像

$ docker pull centos:latest

2.创建两个节点
$ docker run --name flinkmaster -d -p 8081:8081 centos -it /bin/bash

$ docker run --name flinkworker -d centos -it /bin/bash

3.安装jdk 1.8

$ yum search java|grep jdk

$ yum install -y java-1.8.0-openjdk.x86_64

4.将flink安装包cp到容器,解压缩
docker cp flink-1.8.1-bin-scala_2.12.tgz flinkmaster:/usr
docker cp flink-1.8.1-bin-scala_2.12.tgz flinkworker:/usr
tar xvf flink-1.8.1-bin-scala_2.12.tgz

5.修改两个机器的/etc/hosts,都增加如下内容。

172.17.0.3 f3a573de76af
172.17.0.4 0379a31fd702

172.17.0.3 flinkmaster
172.17.0.4 flinkworker

注意,两个节点的hostname是随机生成的,注意自己修改。

【Flink 集群搭建,Standalone,集群部署,HA高可用部署参考】: https://developer.aliyun.com/article/765741

【Linux 集群免密登录配置,双向免密参考】:
https://ipooli.com/2020/04/linux_host/?spm=a2c6h.12873639.0.0.7ee664deehTPTo

1.centos安装sshd:

$ yum -y install openssh-server

$ yum -y install openssh-clients

2.启动sshd服务

$ /usr/sbin/sshd -D

3.修改root密码

yum -y install passwd

passwd root

4.flinkmaster和flinkworker生成密钥对

$ ssh-keygen -t rsa

之后根据提示,回车 进入.ssh目录会看见 id_rsa (私钥) 和 id_rsa.pub (公钥)两个文件。

6.将公钥文件拷贝到另外两台主机 使用 ssh-copy-id 命令

$ ssh-copy-id -i ~/.ssh/id_ rsa.pub root@flinkworker

7.验证登录

ssh root@flinkworker

如果不提示输入密码则成功。

1.修改配置文件

$ vim ./conf/flink-conf.yaml

修改如下几个参数:

jobmanager.rpc.address: flinkmaster
jobmanager.rpc.port: 6123
jobmanager.heap.size: 1024m
taskmanager.memory.process.size: 1568m
taskmanager.numberOfTaskSlots: 2
parallelism.default: 2</pre>

$ vim ./conf/masters

修改为:

flinkmaster:8081

$ vim ./conf/worker

修改为:

flinkmaster

flinkmaster

2.拷贝到其他机器

scp -r /usr/flink-1.12.2/ root@flinkworker:/usr/

3.启动集群

在flinkmaster上执行

./bin/start-cluster.sh

4.访问 http://localhost:8081/

2个Task Managers,1个Job Managers为flinkmaster

以上是关于使用docker搭建flink集群的主要内容,如果未能解决你的问题,请参考以下文章

基于Docker快速搭建Hadoop集群和Flink运行环境

docker 搭建 flink 并上传任务

在k8s手工搭建flink+zookeeper standalone高可用集群笔记

搭建单机版K8S运行Flink集群

使用rancher 搭建docker集群

使用docker搭建redis集群