YARN框架机制

YARN框架:资源调度框架

在执行job.waitforcompletion(true)时候会启动一个进程Runjar,至关于MapReduce程序提交客户端,靠这个与集群通讯spa

1.Runjar向ResourceManager申请一个jobblog

2.ResourceManager给Runjar返回一个job资源提交的路径(staging- dir)和为本job产生一个jobID队列

3.Runjar提交资源到HDFS上去进程

4.Runjar向ResourceManager汇报提交结果内存

5.ResourceManager把本job加入任务队列资源

6.NodeManager经过心跳机制向ResourceManager获取任务it

7.NodeManage产生container,分配运行资源容器,包括CPU、内存等资源;同时也会把文件资源加载到容器io

此时在container中代码、配置文件、资源都有了须要执行MapReduce,那么在哪台机器上运行,每一个节点执行几个map,几个reduce,这些YARN就不知道了,YARN只作资源管理,它不能去启动mapreduceast

由MapReduce框架封装的MRAPPMaster实现,就是mapreduce的应用程序的管理者,它是由YARN框架启动的

8.启动MRAPPMaster,到此YARN框架任务基本完成

9.MRAPPMaster向ResourceManager注册,获取在哪一个节点运行

map task进程叫yarnChild

10.MRAPPMaster启动map task任务进程

11.MRAPPMaster启动reduce task任务进程

map执行完,MRAPPMaster会通知YARN回收

12.job完成后MRAPPMaster向ResourceManager注销本身

YARN框架,主要做用的为ResoucceManager--------管理NodeManaer

MapReduce框架汇总,主要做用的为MRAPPMaster-----------管理yarnChild

相关文章
相关标签/搜索