yarn的基本组成和工作流程

yarn的基本组成和工作流程
yarn是负责资源管理的,协调各个应用程序的资源使用情况

一、基本组成

yarn主要由以下几个部分组成

1、resourcemanager

主要负责资源的调度和应用程序的管理

(1)调度器

调度器是将系统中的资源分配给各个正在运行的应用程序。

(2)应用程序管理

负责管理所有applicationmaster

2、nodemanager

定时告诉resourceManger,node节点的资源使用情况;任务的启动与停止

3、applicationmaster

向resourceManager请求资源,监听任务的执行进度

4、container

资源的抽象(包括cpu,内存等信息),当applicationMaster向resourceManager请求资源的时候,就是以Container抽象资源的形式返回,

限制资源的使用情况
yarn的基本组成和工作流程

二、工作流程

1、client想yarn提交一个应用程序

2、resourceManager为改应用程序分配一个Container,与对应的nodeManager进行通信, 要求它在此container中启动appmaster

3、appmaster向rm注册,这样用户可以直接通过rm查看应用程序的运行状态

4、appmaster为各个任务想rm请求资源

5、请求到资源后与nodeManager进行通信,要求启动任务

6、启动任务

7、各个任务向appmaster报告状态和进度

8、appmaster向rm请求注销自己

yarn的基本组成和工作流程