前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >在k8s手工搭建flink+zookeeper standalone高可用集群笔记

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

作者头像
路过君
发布2022-06-02 13:59:15
6610
发布2022-06-02 13:59:15
举报
文章被收录于专栏:路过君BLOG from CSDN

方案

ZOOKEEPER 3节点 FLINK JOB-MANAGER 3节点 每个节点一个pod FLINK TASK-MANAGER N节点 通过k8s replicas 扩缩容 负载均衡 1节点

FLINK容器镜像

使用dockerhub官方镜像 flink:1.14.4-scala_2.12-java11

FLINK配置

flink官方docker镜像使用环境变量FLINK_PROPERTIES注入配置,格式形如:

FLINK_PROPERTIES = jobmanager.rpc.address: flink-jobmanager-1.test.svc.cluster.local jobmanager.memory.process.size: 896mb

  • flink-jobmanager-x

每个实例负载需单独配置

配置项

说明

jobmanager.rpc.address

flink-jobmanager-x.test.svc.cluster.local

通过rpc访问jobmanager的地址,每个jobmanager负载单独配置,如果不配置此项zookeeper中的服务注册地址会有问题

high-availability

ZOOKEEPER

high-availability.zookeeper.quorum

zookeeper-cluster-1.test.svc.cluster.local:2181,zookeeper-cluster-2.test.svc.cluster.local:2181,zookeeper-cluster-3.test.svc.cluster.local:2181

罗列zookeeper集群成员地址

high-availability.jobmanager.port

6123

部署高可用集群时必须配置此项,否则将使用随机端口,无法通过k8s服务映射

state.checkpoint-storage

filesystem

使用文件系统保存checkpoint

state.checkpoints.dir

file:///flink/checkpoint/

checkpoint保存地址

high-availability.storageDir

file:///flink/ha-storage/

集群共享存储,保存如作业JAR包等数据

jobmanager.memory.process.size

896mb

jobmanager进程总内存大小

样例:

代码语言:javascript
复制
FLINK_PROPERTIES=jobmanager.rpc.address: flink-jobmanager-1.test.svc.cluster.local
high-availability.jobmanager.port: 6123
high-availability: ZOOKEEPER
high-availability.zookeeper.quorum: zookeeper-cluster-1.test.svc.cluster.local:2181,zookeeper-cluster-2.test.svc.cluster.local:2181,zookeeper-cluster-3.test.svc.cluster.local:2181
high-availability.storageDir: file:///flink/ha-storage/
jobmanager.memory.process.size: 896mb
state.checkpoint-storage: filesystem
state.checkpoints.dir: file:///flink/checkpoint/
  • flink-taskmanager

配置项

说明

high-availability

ZOOKEEPER

high-availability.zookeeper.quorum

zookeeper-cluster-1.test.svc.cluster.local:2181,zookeeper-cluster-2.test.svc.cluster.local:2181,zookeeper-cluster-3.test.svc.cluster.local:2181

罗列zookeeper集群成员地址

high-availability.storageDir

file:///flink/ha-storage/

集群共享存储,保存如作业JAR包等数据

state.checkpoint-storage

filesystem

使用文件系统保存checkpoint

state.checkpoints.dir

file:///flink/checkpoint/

checkpoint保存地址

taskmanager.numberOfTaskSlots

2

每个taskmanager的任务槽数量,默认为cpu核心数

样例:

代码语言:javascript
复制
FLINK_PROPERTIES=high-availability: ZOOKEEPER
high-availability.zookeeper.quorum: zookeeper-cluster-1.test.svc.cluster.local:2181,zookeeper-cluster-2.test.svc.cluster.local:2181,zookeeper-cluster-3.test.svc.cluster.local:2181
high-availability.storageDir: file:///flink/ha-storage/
state.checkpoint-storage: filesystem
state.checkpoints.dir: file:///flink/checkpoint/
taskmanager.numberOfTaskSlots: 2

服务

  • jobmanager

类型

服务名称

端口

说明

cluster ip

flink-jobmanager-x

6123,6124,6125

每个jobmanager负载单独配置,用于与taskmanager通信,6123为rpc端口(高可用下需配置),6124为blob端口(默认),6125为状态查询端口(默认)

node port

flink-jobmanager-x-np

xxx->8081

用于通过负载均衡访问webui

负载均衡

通过flink-jobmanager-x-np服务映射的地址:端口号反代

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-06-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 方案
  • FLINK容器镜像
  • FLINK配置
  • 服务
  • 负载均衡
相关产品与服务
负载均衡
负载均衡(Cloud Load Balancer,CLB)提供安全快捷的流量分发服务,访问流量经由 CLB 可以自动分配到云中的多台后端服务器上,扩展系统的服务能力并消除单点故障。负载均衡支持亿级连接和千万级并发,可轻松应对大流量访问,满足业务需求。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档