当前位置:首页 > 编程笔记 > 正文
已解决

Flink ON Yarn 模式 --- per job mode 与application mode的区别

来自网友在路上 168868提问 提问时间:2023-11-08 22:44:23阅读次数: 68

最佳答案 问答题库688位专家为你答疑解惑

1、per job mode:

        对于yarn-per-job模式调度的过程:

        1、资源调度:

        1、因为是yarn模式,所以客户端会向ResourceManager申请资源,申请容器负责来启动ApplicationManager

        2、此时ResourceManager接受到客户端的请求,就会分配一个nodemanager去启动ApplicationMaster,就是Flink中的JobManager

        2、任务调度

        3、当Application启动过后,客户端就会在本地创建DataFlow并提交到JobManager上

        4、JobManager就会根据任务所需要的资源的大小去向ResourceManager上申请资源

        5、ResourceManager将空闲的NodeManager分配出来用于启动TaskManager

        6、JobManager将Task任务提交到TaskManager上去执行。

2、application  mode:

        对于application mode模式调度的过程:

        1、资源调度:

        1、因为是yarn模式,所以客户端会向ResourceManager申请资源,申请容器负责来启动ApplicationManager

        2、此时ResourceManager接受到客户端的请求,就会分配一个nodemanager去启动ApplicationMaster,就是Flink中的JobManager

        2、任务调度

        3、当Application启动过后,此时与yarn-per-job模式不同的是会在JobManager上创建DataFlow

        4、JobManager就会根据任务所需要的资源的大小去向ResourceManager上申请资源

        5、ResourceManager将空闲的NodeManager分配出来用于启动TaskManager

        6、JobManager将Task任务提交到TaskManager上去执行。

在flink中的任务调度是分开,会先去对资源进行调度,然会再去申请资源去执行任务

这两种模式中最重要的区别就是main函数启动的位置不同,Flink任务调度的过程是将本地的代码构建成DataFlow图,然后提交到JobManager上面,对于per job mode来说是在本地创建DataFlow,然而对于application mode是在JobManager上创建DataFlow,这就是二者最主要的区别。

查看全文

99%的人还看了

猜你感兴趣

版权申明

本文"Flink ON Yarn 模式 --- per job mode 与application mode的区别":http://eshow365.cn/6-35629-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!