【Flink】flink-1.12 通过 -t 指定模式后无法指定yarn参数

838 篇文章 841 订阅 ¥99.90 ¥99.00

在这里插入图片描述

1.概述

转载:【Flink 纠错】flink-1.12 通过 -t 指定模式后无法指定yarn参数

1.1 问题描述

我们使用flink 1.12提交任务到yarn时,遇到个比较奇怪的问题,我们的提交命令如下:

flink-1.12.0/bin/flink run -ynm chenTest -t yarn-per-job -yqu da_team -c com.test.FlinkTest Flink-1.0-SNAPSHOT.jar

通过参数指定application名称和yarn队列后,我们发现任务在yarn上的名称并不是-ynm定义的,并且提交的队列也不对。后面我们换成 -m 指定提交模式后就正常了。
-m 提交模式命令为:

flink-1.12.0/bin/flink run -ynm chenTest -m yarn-cluster -yqu da_team -c com.test.FlinkTest Flink-1.0-SNAPSHOT.jar

然后对比发现,在通过 -t 指定提交模式时,client的log中没有打印传入的yarn相关参数,而通过 -m 提交的则有。两个对比可以看到少了yarn.application.name和yarn.application.queue两项参数。

晚上单步调试了下client侧的代码,发现在CliFrontend类中选择activeCommandLine时,返回的是GenericCLI,而 -m 提交时返回的是FlinkYarnSessionCli。然后在下面的getEffectiveConfiguration方法中调用Cli的toConfiguration方法时,GenericCLI的该方法中并未将yarn的配置加载进Configuration,所以最后client在启动AppMaster时取到的yarn相关参数都是空。

所以我想问下我们遇到的这个情况是正常的吗?还是说 -t 提交存在问题呢?

问题解答

flink1.12后所有的yarn相关的参数通过-D进行指定
例:-D yarn.application.name=xxx 替代以前的 -ynm xxx

更多配置参考文档:https://ci.apache.org/projects/flink/flink-docs-release-1.12/deployment/config.html#yarn
————————————————

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值