八、Hadoop基本原理总结—Yarn

一、基本组件

1、ResourceManager

  • ResourceManager是master上的进程,负责整个分布式系统的资源管理和调度

  • 他会处理来自client端的请求(包括提交作业/杀死作业);

  • 启动/监控Application Master

  • 监控NodeManager的情况,比如可能挂掉的NodeManager。

2、NodeManager

  • 相对应的,NodeManager时处在slave节点上的进程,他只负责当前slave节点的资源管理和调度,以及task的运行。

  • 他会定期向ResourceManager汇报资源/Container的情况(heartbeat)

  • 接受来自ResourceManager对于Container的启停命令

3、Application Master

  • 每一个提交到集群的作业(Job)都会有一个与之对应的Application Master来负责应用程序的管理。

  • 他负责进行数据切分

  • 为当前应用程序向ResourceManager去申请资源(也就是Container),并分配给具体的任务;

  • NodeManager通信,用来启停具体的任务,任务运行在Container中;

  • 任务的监控和容错也是由Application Master来负责的。

4、Container

它包含了Application Master向ResourceManager申请的计算资源,比如说CPU/内存的大小,以及任务运行所需的环境变量和队任务运行情况的描述。

二、作业执行流程

(1)、Client向ResourceManager提交作业(可以是Spark/Mapreduce作业)

(2)、ResourceManager会为这个作业分配一个container

(3)、ResourceManager与NodeManager通信,要求NodeManger在刚刚分配好的container上启动应用程序的Application Master

(4)、Application Master先去向ResourceManager注册,而后ResourceManager会为各个任务申请资源,并监控运行情况

(5)、Application Master采用轮询(polling)方式向ResourceManager申请并领取资源(通过RPC协议通信)

(6)、Application Manager申请到了资源以后,就和NodeManager通信,要求NodeManager启动任务

(7)最后,NodeManger启动作业对应的任务。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值