【flink配置系列】flink jobmanager-application-ha.yaml功能详解

FlinkJobManagerHA模式的Kubernetes配置详解
文章详细解释了jobmanager-application-ha.yaml配置文件,用于在Kubernetes中部署FlinkJobManager的高可用模式,包括设置并行度、Pod配置、环境变量、容器端口映射、活跃探测和卷挂载等内容。

jobmanager-application-ha.yaml

配置文件主要功能

这个配置文件是用于部署 Flink JobManager 作业的 Kubernetes Job。在高可用(HA)模式下,使用该配置文件可以创建一个 JobManager 实例来运行独立的作业。

  • 定义了一个名为 flink-jobmanager 的 Kubernetes Job。
  • 设置并行度为 1,可以根据需要将其设置为大于 1 以启动备用的 JobManagers。
  • 在 Job 模板中定义了一个 Pod,使用 apache/flink:latest 镜像。
  • 在容器中设置了环境变量和启动参数,以指定作业的类名、可选参数和作业参数,并覆盖配置文件中 jobmanager.rpc.address 的值为 $(POD_IP)
  • 将容器的三个端口映射到相应的容器端口:6123(RPC)、6124(Blob Server)和 8081(Web UI)。
  • 配置了一个活跃探测(liveness probe),通过 TCP Socket 探测容器的 6123 端口,延迟 30 秒后开始探测,每 60 秒进行一次探测。
  • 挂载名为 flink-config-volume 的卷到容器的 /opt/flink/conf 目录,该卷来自 ConfigMap flink-config 中的两个文件。
  • 挂载名为 job-artifacts-volume 的卷到容器的 /opt/flink/usrlib 目录,该卷是宿主机上作业所需的文件路径。
  • 指定了 flink-service-account 作为 Service Account,该 Service Account 具有创建、编辑和删除 ConfigMaps 的权限。

配置文件加上中文注释

apiVersion: batch/v1
kind: Job
metadata:
  name: flink-jobmanager   # Job 的名称
spec:
  parallelism: 1             # 设置并行度为 1,可以根据需要设置大于 1 以启动备用的 JobManagers
  template:
    metadata:
      labels:
        app: flink         # 在 Pod 模板中设置
### 配置 `flink-conf.yaml` 文件以支持 Apache Flink on YARN #### 理解配置环境 为了使Apache Flink能够在YARN环境中正常运行,需要对`flink-conf.yaml`文件进行特定设置。此文件位于Flink安装目录下的`conf`子目录中[^1]。 #### 设置必要的属性 对于YARN集成而言,有几个重要的配置项应当被指定: - **yarn.application.classpath**: 定义应用程序类路径字符串,该字符串会被传递给YARN容器。这通常用于确保所有依赖库都能被正确加载。 - **fs.hdfs.hadoopconf**: 指向Hadoop配置文件所在的本地文件系统的绝对路径。这对于访问分布式文件系统至关重要。 - **jobmanager.memory.process.size** 和 **taskmanager.memory.process.size**: 分别设定JobManager和TaskManager进程所需的总内存量。合理调整这些值可以优化性能并防止内存溢出错误。 另外,考虑到临时数据存储的需求,建议也适当修改`io.tmp.dirs`参数来指明多个可用作临时空间的位置,以便于轮转使用不同磁盘上的位置,默认情况下会采用Java虚拟机所指向的系统级临时文件夹[^2]。 ```yaml # Example configuration entries for running Flink on YARN yarn.application-classpath: /etc/hadoop/conf,/opt/flink/lib/*:/opt/flink/plugins/* fs.hdfs.hadoopconf: /etc/hadoop/conf/ jobmanager.memory.process.size: 2048m taskmanager.memory.process.size: 4096m io.tmp.dirs: /mnt/disk1/tmp,/mnt/disk2/tmp ``` 通过上述方式编辑`flink-conf.yaml`中的条目,能够有效地准备一个适合部署到YARN集群上的Flink实例。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

BigDataMLApplication

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值