Yarn工作机制流程图
Yarn工作机制详细介绍
1、客户端向整个集群提交MapReduce作业,申请jobID
2、ResourceManager给Client返回该job资源的提交路径(HDFS 路径)和作业ID
3、Client发送jar包、切片信息和配置文件到指定的资源提交路径。
4、Client提交完资源后,向ResourceManager申请执行作业
5、ResourceManager收到Client的请求后,将该job添加到容量调度器(Resouce Scheduler)中
6、调度器将任务放到调度队列,某一个空闲的NodeManager领取到该job,创建资源Container,启动ApplicationMaster
7、ApplicationMaster获得HDFS上提交的文件,根据分片信息生成MapTask和ReduceTask
8、ApplicationMaster向调度器ResourceManager申请运行MapTask和ReduceTask的资源
9、ResourceManager将运行MapTask任务分配给空闲的多个NodeManager,NodeManager分别领取任务并创建容器(Container)
10、通知NodeManager,启动任务MapTask,对数据进行处理,并分区排序
11、ApplicationMaster等待所有MapTask运行完毕后,向ResourceManager申请容器(Container),运行ReduceTask
12、程序运行完毕后,ApplicationMaster会向ResourceManager申请注销自己。
13、进度和状态更新