简单搞定yarn工作机制

Yarn概述?
Yarn 是一个资源调度平台,负责为运算程序提供服务器运算资源,相当于一个分布式的操作系统平台,而mapreduce 等运算程序则相当于运行于操作系统之上的应用程序

Yarn的重要概念
1 yarn 并不清楚用户提交的程序的运行机制
2 yarn 只提供运算资源的调度(用户程序向yarn 申请资源,yarn 就负责分配资源)
3 yarn 中的主管角色叫ResourceManager
4 yarn 中具体提供运算资源的角色叫NodeManager
5 )这样一来,yarn 其实就与运行的用户程序完全解耦,就意味着yarn 上可以运行各种类型的分布式运算程序(mapreduce 只是其中的一种),比如mapreduce storm 程序,spark 程序……
6 )所以,spark storm 等运算框架都可以整合在yarn 上运行,只要他们各自的框架中有符合yarn 规范的资源请求机制即可
7 Yarn 就成为一个通用的资源调度平台,从此,企业中以前存在的各种运算集群都可以整合在一个物理集群上,提高资源利用率,方便数据共享 Yarn工作机制

2 )工作机制详解
       0 Mr 程序提交到客户端所在的节点
       1 yarnrunner Resourcemanager 申请一个application
       2 rm 将该应用程序的资源路径返回给yarnrunner
       3 )该程序将运行所需资源提交到HDFS
       4 )程序资源提交完毕后,申请运行mrAppMaster
       5 RM 将用户的请求初始化成一个task
       6 )其中一个NodeManager 领取到task 任务。
       7 )该NodeManager 创建容器Container ,并产生MRAppmaster
       8 Container HDFS 上拷贝资源到本地
       9 MRAppmaster RM 申请运行maptask 容器
       10 RM 将运行maptask 任务分配给另外两个NodeManager ,另两个NodeManager 分别领取任务并创建容器。
       11 MR 向两个接收到任务的NodeManager 发送程序启动脚本,这两个NodeManager 分别启动maptask maptask 对数据分区排序。
       12 MRAppmaster RM 申请2 个容器,运行reduce task
       13 reduce task maptask 获取相应分区的数据。
       14 )程序运行完毕后,MR 会向RM 注销自己。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值