美文网首页
Flink on Yarn模式下的TaskManager个数

Flink on Yarn模式下的TaskManager个数

作者: biggeng | 来源:发表于2019-05-15 17:11 被阅读0次

    本文探讨Flink on YARN 单一作业提交模式下的并发以及Task Manager等特性。

    Flink on YARN支持两种模式,一种是预先在YARN上启动一个long-running的Flink集群,所有的Flink作业都会提交到这个集群中,共享Flink集群资源。另一种模式是单独在YARN上运行单一的Flink 作业,每个作业需要的资源由YARN负责分配。本文总结下第二种模式下的并发配置和TaskManager拉起情况。

    并发度的配置

    Parallel的配置有好几种方式,可以配置全局默认参数,可以在client端配置参数,可以配置operator参数等等。由于不是本文讨论的重点,因此可以参考Flink官网.

    TaskManager slots number配置

    这个参数是配置一个TaskManager有多少个并发的slot数。有两种配置方式:

    • taskmanager.numberOfTaskSlots. 在conf/flink-conf.yaml中更改,默认值为1,表示默认一个TaskManager只有1个task slot.
    • 提交作业时通过参数配置。--yarnslots 1,表示TaskManager的slot数为1.
    TaskManager的个数

    注意: Per job模式提交作业时并不像session模式能够指定拉起多少个TaskManager,TaskManager的数量是在提交作业时根据并发度动态计算。
    首先,根据设定的operator的最大并发度计算,例如,如果作业中operator的最大并发度为10,则 Parallelism/numberOfTaskSlots为向YARN申请的TaskManager数。
    例如:如下作业,Parallelism为10,numberOfTaskSlots为1,则TaskManager为10。

    stream
    1 slot

    如果numberOfTaskSlots为3,则TaskManager为4.


    3 slots

    相关文章

      网友评论

          本文标题:Flink on Yarn模式下的TaskManager个数

          本文链接:https://www.haomeiwen.com/subject/qczpaqtx.html