yarn任务调度,资源调度
1、客户端去ResourceManager取任务编号
2、ResourceManager在HDFS上创建个以任务编号命名的目录
3、客户端经行输入输出检查,计算切片信息等
4、客户端把jar,conf,切片信息上传到HDFS以任务编号命名的目录
5、客户端通知ResourceManager启动APPMaster进行资源调度
6、ResourceManager选取一台有资源(资源指的是CPU核数和内存)的NodeManger启动MRAPPMaster
7、NodeManger启动MRAPPMaster
8、MRAPPMaster到HDFS以任务编号命名的目录,获取任务信息
9、MRAPPMaster根据任务信息向ResourceManager申请资源启动map任务
10、ResourceManager选取有资源的NodeManger启动Container进行map任务
11、NodeManger启动Container
12、Container向MRAppMaster反向注册,MRAppMaster会掌握这一批资源信息
13、MRAppMaster分配map任务,并监控map任务的进度
14、当map任务运行到5%时,MRAppMaster向ResourceManager申请资源启动reduce任务
(此时只是拉取map处理后的部分数据,map任务全部完成后,reduce任务才会真正的开始执行)
15、ResourceManager选取有资源的NodeManger启动Container进行reduce任务
16、NodeManger启动Container
17、Container向MRAppMaster反向注册,MRAppMaster会掌握这一批资源信息
18、MRAppMaster分配map任务,并监控map任务的进度
19、当MRAppMaster监控到reduce任务完成后,会通知ResourceManager
画图回顾知识,有点意思
图解YARN任务调度,资源调度
最新推荐文章于 2024-09-26 14:19:07 发布