流程:
1.ResourceManager接收Client的执行请求,并为此请求在指定的NodeManager上分配一个Container,运行ApplicationMaster
2.AplicationMaster再向ResourceManager申请资源,ResourceManager返回资源
3.ApplicationManager在其他的NodeManger上执行task,并对其进行监控
职责:
ResourceManager的职责: 一个集群active状态的RM只有一个,负责整个集群的资源管理和调度
1)处理客户端的请求(启动/杀死)
2)启动/监控ApplicationMaster(一个作业对应一个AM)
3)监控NM
4)系统的资源分配和调度
NodeManager:整个集群中有N个,负责单个节点的资源管理和使用以及task的运行情况
1)定期向RM汇报本节点的资源使用请求和各个Container的运行状态
2)接收并处理RM的container启停的各种命令
3)单个节点的资源管理和任务管理
ApplicationMaster:每个应用/作业对应一个,负责应用程序的管理
1)数据切分
2)为应用程序向RM申请资源(container),并分配给内部任务
3)与NM通信以启停task, task是运行在container中的
4)task的监控和容错
Container:
对任务运行情况的描述:cpu、memory、环境变量