yarn的工作流程
流程描述:
1 作业提交
(1)client 调用 job.waitForCompletion方法,向整个集群提交MapReduce作业.
(2)client 向 ResourceManager 申请一个作业id.
(3)ResourceManager 给client返回该job资源的提交路径(HDFS路径)和作业id ,每一个作业都有一个唯一的id.
(4)client 发送jar包 、切片信息和配置文件到指定的资源提交路径.
(5)client提交完资源后,向ResourceManager申请运行MrAppMaster ,针对该job的ApplicationMaster.
2 作业初始化
(1)当ResourceManager收到client的请求后,将该job添加到容量调度器ResourceScheduler中.
(2)某一个空闲的NodeManager领取到该job.
(3)该NodeManager创建Container 并产生MrAppmaster.
(4)下载client提交的资源到本地,根据分片信息生成Map Task和Reduce Task.
3 任务分配
(1)MrAppMaster 向ResourceManager申请运行多个Map Task任务资源.
(2)Resour