附图(原文件用XMind绘制,打不开用XMind):
Yarn
调度流程
1.client向RM提交应用程序,其中包括启动该应用的ApplicationMaster的必须信息,例如ApplicationMaster程序、启动ApplicationMaster的命令、用户程序等
2.ResourceManager启动一个container用于运行ApplicationMaster
3.启动中的ApplicationMaster向ResourceManager注册自己,启动成功后与RM保持心跳
4.ApplicationMaster向ResourceManager发送请求,申请相应数目的container
5.申请成功的container,由ApplicationMaster进行初始化。container的启动信息初始化后,AM与对应的NodeManager通信,要求NM启动container
6.NM启动container
7.container运行期间,ApplicationMaster对container进行监控。container通过RPC协议向对应的AM汇报自己的进度和状态等信息
8.应用运行结束后,ApplicationMaster向ResourceManager注销自己,并允许属于它的container被收回
附图:
![](https://i-blog.csdnimg.cn/blog_migrate/2217582a18eaae1792e23af4a3d9ef30.png)