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分佈式

相關文章
相關標籤/搜索
本站公眾號
   歡迎關注本站公眾號,獲取更多信息