Local Recovery Enabled TaskManager StatefulSet
配置文件主要功能
这个配置文件用于部署启用本地恢复(Local Recovery)功能的 Flink TaskManager 的 Kubernetes StatefulSet。
- 定义了一个名为
flink-config的 ConfigMap,用于存储 Flink 的配置信息。 - 在 ConfigMap 中设置了一些关键的配置项,如 JobManager 的 RPC 地址、TaskManager 的任务槽数量、Blob Server 端口等。
- 定义了一个名为
taskmanager-hl的 Service,类型为 ClusterIP,并将其与 TaskManager 相关联。 - 定义了一个名为
flink-taskmanager的 StatefulSet,指定了与之关联的 Service 名称、副本数和选择器。 - 在 Pod 模板中定义了一个名为
taskmanager的容器,使用apache/flink:latest镜像。 - 设置容器的安全上下文,将容器的用户 ID 设置为 9999,并将文件系统组 ID 设置为 9999。
- 在容器中设置了环境变量和启动参数,其中
-Dtaskmanager.resource-id=$(POD_NAME)用于指定 TaskManager 的资源 ID。 - 将容器的两个端口映射到相应的容器端口:6122(RPC)和 6121(Metrics)。
- 配置了一个活跃探测(liveness probe),通过 TCP Socket 探测容器的 6122 端口,延迟 30 秒后开始探测,每 60 秒进行一次探测。
- 挂载名为
flink-config-volume的卷到容器的/opt/flink/conf/目录,该卷来自 ConfigMapflink-config中的两个文件。 - 定义了一个名为
pv的持久卷声明(PersistentVolumeClaim),用于挂载到容器的/pv目录。
配置文件加上中文注释
apiVersion: v1
kind: ConfigMap
metadata:
name: flink-config # ConfigMap 的名称
labels:
app: flink
data:
flink-conf.yaml: |+ # Flink 的配置信息
jobmanager.rpc.address: flink-jobmanager
taskmanager.numberOfTaskSlots: 2
blob.server.port: 6124
jobmanager.rpc.port: 6123
taskmanager.rpc.port: 6122

文章详细解释了如何在Kubernetes中配置LocalRecoveryEnabled的FlinkTaskManagerStatefulSet,涉及ConfigMap、Service、StatefulSet以及容器设置,包括配置文件、服务连接、副本数和活跃探测等。
最低0.47元/天 解锁文章
2253

被折叠的 条评论
为什么被折叠?



