Hadoop 06_MapReduce2.0(YARN)
Hadoop ?YARN (MRv2)
?
MapReduce2.0
?
MRv2:On YARN
YARN:解耦資源與計算
ResourceManager
-主,核心
-集群節(jié)點資源管理
NodeManager
-與RM匯報資源
-管理Container生命周期
-計算框架中的角色都以Container表示
Container:【節(jié)點NM,CPU,MEM,I/O大小,啟動命令】
-默認(rèn)NodeManager啟動線程監(jiān)控Container大小,超出申請資源額度,kill
-支持Linux內(nèi)核的Cgroup
MR :
MR-ApplicationMaster-Container
-作業(yè)為單位,避免單點故障,負(fù)載到不同的節(jié)點
-創(chuàng)建Task需要和RM申請資源(Container ?/MR 1024MB)
Task-Container
Client:
-RM-Client:請求資源創(chuàng)建AM
-AM-Client:與AM交互
-------------------------------------------------------------------------------------
?
YARN
?
YARN:Yet Another Resource Negotiator;
Hadoop 2.0新引入的資源管理系統(tǒng),直接從MRv1演化而來的;
-核心思想:將MRv1中JobTracker的資源管理和任務(wù)調(diào)度兩個功能分開,分別由ResourceManager和ApplicationMaster進(jìn)程實現(xiàn)
-ResourceManager:負(fù)責(zé)整個集群的資源管理和調(diào)度
-ApplicationMaster:負(fù)責(zé)應(yīng)用程序相關(guān)的事務(wù),比如任務(wù)調(diào)度、任務(wù)監(jiān)控和容錯等
YARN的引入,使得多個計算框架可運(yùn)行在一個集群中
-每個應(yīng)用程序?qū)?yīng)一個ApplicationMaster
-目前多個計算框架可以運(yùn)行在YARN上,比如MapReduce、Spark、Storm等
【補(bǔ)充】JobTracker涉及的功能包括作業(yè)管理、狀態(tài)監(jiān)控、任務(wù)調(diào)度器等,
JobTracker主要包含的2個功能:資源管理和作業(yè)控制。
-------------------------------------------------------------------------------------
?
MapReduce ?On ?YARN
?
MapReduce On YARN:MRv2
將MapReduce作業(yè)直接運(yùn)行在YARN上,而不是由JobTracker和TaskTracker構(gòu)建的MRv1系統(tǒng)中
基本功能模塊
-YARN:負(fù)責(zé)資源管理和調(diào)度
-MRAppMaster:負(fù)責(zé)任務(wù)切分、任務(wù)調(diào)度、任務(wù)監(jiān)控和容錯等
-MapTask/ReduceTask:任務(wù)驅(qū)動引擎,與MRv1一致
每個MapRaduce作業(yè)對應(yīng)一個MRAppMaster
-MRAppMaster任務(wù)調(diào)度
-YARN將資源分配給MRAppMaster
-MRAppMaster進(jìn)一步將資源分配給內(nèi)部的任務(wù)
MRAppMaster容錯
-失敗后,由YARN重新啟動
-任務(wù)失敗后,MRAppMaster重新申請資源
?
總結(jié)
以上是生活随笔為你收集整理的Hadoop 06_MapReduce2.0(YARN)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Hadoop 05_MapReduce1
- 下一篇: 异常处理——Another app is