flink on yarn模式下的,flink中的slot,taskmanage,parallelism,以及yarn中的container,vcore,memory它们之间的关系
第一点yarn集群上同时能跑多少任务是有限定的,这个限定就是yarn上的vcore和memory这两个参数。但是它是可以根据你的配置文件可以调的,修改yarn-site.xml文件中的(这个是yarn默认的,就算不配置也是这样)<property><name>yarn.nodemanager.resource.cpu-vcores</n...
第一点
yarn集群上同时能跑多少任务是有限定的,这个限定就是yarn上的vcore和memory这两个参数。但是它是可以根据你的配置文件可以调的,修改yarn-site.xml文件中的(这个是yarn默认的,就算不配置也是这样)
<property>
<name>yarn.nodemanager.resource.cpu-vcores</name>
<value>8</value>
</property>
<property>
<name>yarn.nodemanager.resource.memory-mb</name>
<value>8192</value>
</property>`
基本可以这样认为:yarn把我么机器上可用的CPU和内存做了一个抽离分成vcore和memory
第二点
flink单独部署的集群中的slots就相当于yarn中的vcore,然后与taskmanage,parallelism的关系是taskmanage=max(parallelism) / solt (向上取整),当我们把flink程序跑在用yarn来管理的时候,taskmanage的数量就等于container的数量+1,因为还有jobmanage这个进程,vcore的数量就等于solt+1,理由同上,至于memory的话他是根据你运行程序时候的配置,-yjm,和-ytm这个两个参数决定,注意,这个的者两个参数中-ytm表示的是每个taskmanage的内存,这个需要注意。
第三点
对于小集群来说还是需要限定下container中的vcore的数量,或是适当的把这个参数调大点,这样能保证跑更多的任务
有任何问题,欢迎加扫码咨询(备注好对应的技术呦)
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)