Flink on Yarn 废除了 `-n` 参数后,不再支持指定固定数量的 TM。Flink 会根据作业的并行度,按需向 Yarn
申请资源。所以你说的没错,session 模式下提交新的 job 时 flink 会向 yarn 申请更多的资源。

如果想要限制 session 使用的总资源、可以接受资源不足时后提交的 job 可能无法运行需要等待的话,可以配置
`slotmanager.number-of-slots.max`(默认是 Integer.MAX_VALUE)来限制总的 slot 数量。

如果不想 job 运行结束后 tm 很快被释放、下次提交作业又需要等待 tm 启动时间的话,可以配置
`resourcemanager.taskmanager-timeout`(默认 30s)调大 tm 因空闲而被释放的时间。

Thank you~

Xintong Song



On Wed, Nov 11, 2020 at 11:18 PM kingdomad <kingdo...@163.com> wrote:

> flink on yarn使用第一种方式yarn session,先创建一个yarn session,然后再提交job到这个session中。
> 您的意思是这个session所申请的资源会根据我后续提交的job的并发度去动态地无限地扩展?
> 如果我提交了一个并发度为10的job a到这个session,那这个session申请10个slot对应的资源,
> 我再提交一个并发度为10的job b到这个session,这个session再申请10个slot对应的资源?
> job需要多少并发度,session通通都向yarn去申请吗?
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> --
>
> kingdomad
>
>
>
>
>
>
>
> 在 2020-11-11 17:17:16,"hailongwang" <18868816...@163.com> 写道:
> >根据你 Job 的并发和指定的 TM 的规格来计算出 TM 的数量。
> >
> >
> >在 2020-11-11 16:14:41,"kingdomad" <kingdo...@163.com> 写道:
> >>我发现1.11版本的yarn-session.sh <http://1.xn--11yarn-session-w353ad99itbp.sh>
> 废弃了-n参数,那如何指定taskmanager数量?
> >>
> >>
> >>
> >>
> >>
> >>
> >>
> >>
> >>
> >>
> >>
> >>
> >>
> >>--
> >>
> >>kingdomad
> >>
>

回复