Yarn

Yarn概述

Yarn是一个资源调度平台,负责为运算程序提供服务器运算资源,至关于一个分布式的操做系统平台,而MapReduce等运算程序则至关于运行于操做系统之上的应用程序

Yarn基本架构

YARN主要由ResourceManager、NodeManager、ApplicationMaster(AM)和Container等组件

Yarn工做机制

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

 

资源调度器

目前,Hadoop做业调度器主要有三种:FIFO、Capacity Scheduler和Fair Scheduler。Hadoop2.7.2默认的资源调度器是Capacity Scheduler。

1.先进先出调度器(FIFO服务器

2.容量调度器(Capacity Scheduler架构

3.公平调度器(Fair Scheduler分布式

相关文章
相关标签/搜索
本站公众号
   欢迎关注本站公众号,获取更多信息