Flink on yarn 高可用环境配置 high-availability

1. 背景

默认情况下一个flink job只启动一个jobManager,因此存在单点故障问题,所以生产环境中需要HA。
因为生产环境中基于yarn集群的flink应用场景更多,本文只介绍基于yarn的flink高可用配置。

2. 配置

配置yarn集群级别AM重启上限

# vim yarn-site.xml

<property>
  <name>yarn.resourcemanager.am.max-attempts</name>
  <value>100</value>
</property>

配置flink HA相关

# vim /home/admin/flink-1.9.1/conf/flink-conf.yaml

high-availability: zookeeper
high-availability.storageDir: hdfs:///flink/ha/
high-availability.zookeeper.quorum: uhadoop-op3raf-master1,uhadoop-op3raf-master2,uhadoop-op3raf-core1
# 单个flink job的重试次数
yarn.application-attempts: 10

3. 启动

方式一

启动一个基于yarn的flink集群

/home/admin/flink-1.9.1/bin/yarn-session.sh -n 10 -jm 10g -tm 10g -s 10 2>&1 &

提交一个flink job到上面启动的flink集群

/home/admin/flink-1.9.1/bin/flink run -yn 8 -yqu root.flink -ys 4 -yid application_1572318163583_50445 /home/admin/tiangx/applog_etl/jar/applog_etl-1.0-SNAPSHOT-jar-with-dependencies.jar 

方式二

在yarn上提交flink single job,直接启动一个flink集群

/home/admin/flink-1.9.1/bin/flink run -m yarn-cluster -yn 8 -yqu root.flink -ys 4 -ynm etl_test \
/home/admin/tiangx/applog_etl/jar_test/applog_etl-1.0-SNAPSHOT-jar-with-dependencies.jar 

4. 验证

4.1 打开flink控制台,可以看到jobManager在节点uhadoop-op3raf-core6
在这里插入图片描述

4.2 ssh到该节点,使用jps查看:

在这里插入图片描述

20919 YarnSessionClusterEntrypoint(ApplicationMaster)为FlinkJobManager进程,将其kill掉

ps: flink 1.10版本JobManager进程为:YarnJobClusterEntrypoint
在这里插入图片描述

4.3 刷新hadoop控制台(下图)可以看到jobManager在uhadoop-op3raf-core10:23999上重启了
在这里插入图片描述

4.4 刷新flink控制台,可以发现jobManager已切换
在这里插入图片描述

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值