YARN工作原理

YARN由四大部分组成:ResourceManager、NodeManager、Container和ApplicationMaster,其中ResourceManager可看作是上一代Hadoop中的master,将NodeManager看作是slave,ResourceManger中包含两大组件:ApplicationManager和ResourceScheduler,其中ResourceManager作为一个纯资源调度器,只负责分配和调度资源,根据请求将资源打包成Container(一个逻辑资源单位,它可封装CPU、磁盘、网络等等不同种类的资源)进行发送,资源的调度是在运行过程中动态分配的,而ApplicationManager则负责应用程序的提交以及ApplicationMaster的启动及监控。

YARN工作步骤如下:

1.client提交用户程序、ApplicationMaster、ApplicationMaster启动命令给RM;

2.由RM中的ApplicationManager向ResourceScheduler请求分配资源(Container),并且让对应的NodeManager在分配到的Container中启动应用程序的ApplicationMaster;

3.ApplicationMaster向RM(实际即ApplicationManager)注册以便ApplicationManager对ApplicationMaster进行监控管理,并且为每个每个任务向ResourceScheduler请求资源;

4.获取资源后,ApplicationMaster与对应的NodeManager通信,令其启动任务;

5.NodeManager为任务设置好运行环境(环境变量、JAR包、二进制代码等等),将任务启动命令写到一个脚本中,并通过运行该脚本启动任务;

6.运行过程中,各个任务通过RPC协议向ApplicationMaster汇报自己的运行情况和资源使用情况;

7.应用程序完成后,ApplicationMaster向ApplicationManager注销并关闭自己。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值