resourceManager 简称 rm ApplicationManager 简称 am
namenode简称nn
-客户端向yarn提交job任务,rm分配资源 -rm开启一个任务容器,运行一个am
-am启动一台nn,启动Application master,计算任务所需资源
-Application master向am申请资源
-Application master拿到资源之后分发至各个nn
-各个nn拿到资源之后开始执行maptask
-maptask结束之后,reduceTask开始运行,拉取数据
-所有任务结束后,master反馈给am,注销job。
详细过程:
1. 客户端定义的Driver向resourceManager提交一个Job
2. resourceManager同意之后,返回给客户端jobId、切片以及jar文件的位置
3. 客户端将返回来的信息上传到HDFS
4. Driver申请一个运行进程的任务容器, resourceManager同意之后, 生成容器任务, 放进资源队列
5. Driver发送启动命令运行程序, MapReduceAppManager接收命令,加载配置信息, 并向ResourceManger申请容器运行 maptask
6. maptask拿到资源之后, 根据MapReduceAppManager加载的任务信息下载jar包和切片信息以及配置文件
7. maptask运行, 当maptask运行结束之后, 向ResourceManager申请新的容器运行ReduceTask
8. ReduceTask开始执行,拉取数据
9. 所有任务执行完毕 , MapReduceAppManager 向 ResouceManager 申请注销本次的Job , 程序退出.