You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user-zh@flink.apache.org by xuhaiLong <xi...@163.com> on 2021/03/11 06:55:09 UTC

回复:将每个tm的slot数从2降低到1,任务反而无法启动

hi


flink 1 slot != 1 core
可以看下 yarn.containers.vcores 这个参数设置为多少。
如果该值为1,tm slot为2,那么每启动一个tm容器就会占用1core,但是每个tm 会有两个slot,反之,如果该值为1,每个tm slot 也为1,就会需要max parallelism core 数量。




在2021年3月11日 14:34,lzwang<lz...@iflytek.com> 写道:
您好:




任务的拓扑图如下,parallelism的设置是140,但是中间有个操作的并行度设置成了50。
集群剩余的slot总数是195。




如果将每个tm的slot数设置为2,任务能够正常启动,并且分配了70个tm和140个slot,符合预期。




可如果将每个tm的slot数设置为1,便只分配了115个slot。任务会卡在creating状态,并且几分钟后,会抛出异常,“Could not allocate all requires slots within timeout of 300000 ms. Slots required: 470, slots allocated: 388”




这里面有几个问题:
1. 将slot数设置为1后,异常中提示“Slots required: 470”,这个470似乎完全没有考虑slot share(我们并没有手动设置SlotSharingGroup)。这是为啥?
2. 将slot数设置为1后,异常中提示“slots allocated: 388”,而整个集群剩余的slot其实只有195个,这个388怎么来的?
3. 最大的并行度应是140,为何只分配了115个slot呢?




我们使用的flink版本是1.6.2。


期待你们的回复~


-----------------------------------------------
科大讯飞股份有限公司
AI营销平台  汪李之
Tel:15209882175
QQ/WeChat:992424538
Add:安徽省合肥市望江西路666号