溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

資源管理調(diào)度器Hadoop Yarn知識(shí)點(diǎn)有哪些

發(fā)布時(shí)間:2021-12-09 15:38:28 來源:億速云 閱讀:127 作者:iii 欄目:大數(shù)據(jù)

本篇內(nèi)容介紹了“資源管理調(diào)度器Hadoop Yarn知識(shí)點(diǎn)有哪些”的有關(guān)知識(shí),在實(shí)際案例的操作過程中,不少人都會(huì)遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

Yarn(Yet Another Resource Negotiator)是一個(gè)資源調(diào)度平臺(tái),負(fù)責(zé)為運(yùn)算程序如Spark、MapReduce分配資源和調(diào)度,不參與用戶程序內(nèi)部工作。  同樣是Master/Slave架構(gòu)。
全局資源管理器(ResourceManager)    
主節(jié)點(diǎn),全局資源管理器,負(fù)責(zé)整個(gè)系統(tǒng)的資源管理和分配,主要由調(diào)度器和應(yīng)用程序管理器組成。  
 調(diào)度器根據(jù)容量、隊(duì)列等限制條件(如每個(gè)隊(duì)列分配多少資源、最多執(zhí)行一定數(shù)量的作業(yè)等)將系統(tǒng)中資源分配給各個(gè)正在運(yùn)行的應(yīng)用程序。  
 應(yīng)用程序管理器(ApplicationsManager)負(fù)責(zé)管理整個(gè)系統(tǒng)中所有應(yīng)用程序,包括應(yīng)用程序提交、與調(diào)度器協(xié)商資源以啟動(dòng)、監(jiān)控Application Master,并且在失敗時(shí)重新啟動(dòng)它等    
節(jié)點(diǎn)資源管理器(NodeManager)     

從節(jié)點(diǎn),每個(gè)節(jié)點(diǎn)上的資源和任務(wù)管理器,它需要向ResourceManager匯報(bào)本節(jié)點(diǎn)上的資源使用情況和各個(gè)Container的運(yùn)行狀態(tài),同時(shí)接收并處理來自Application Master的Container啟動(dòng)/停止等各種請(qǐng)求

應(yīng)用管理器(Application Master)  
用戶提交的每個(gè)應(yīng)用程序均包含1個(gè)應(yīng)用管理器,對(duì)應(yīng)到運(yùn)行MapReduce為MRAppMaster,主要功能包括:
1.向全局資源管理器申請(qǐng)資源
2.將得到的資源進(jìn)一步分配給內(nèi)部的任務(wù)
3.與節(jié)點(diǎn)資源管理器通信以啟動(dòng)/停止任務(wù)

4.監(jiān)控所有任務(wù)運(yùn)行狀態(tài),并在任務(wù)運(yùn)行失敗時(shí)重新為任務(wù)申請(qǐng)資源以重啟任務(wù)

Container    

可以理解為Yarn中為某個(gè)節(jié)點(diǎn)已經(jīng)申請(qǐng)到的資源封裝的類,資源如內(nèi)存、CPU等,是根據(jù)應(yīng)用程序需求動(dòng)態(tài)生成的,是Yarn中基本資源劃分單位。一個(gè)NodeManager節(jié)點(diǎn)上同時(shí)存在多個(gè)Container。提交作業(yè)的每個(gè)task都運(yùn)行在Container中

Yarn調(diào)度器  
根據(jù)一些限制條件如每個(gè)隊(duì)列分配多少資源、最多執(zhí)行多少數(shù)量的作業(yè),將系統(tǒng)中資源按照應(yīng)用程序的資源需求分配給各個(gè)應(yīng)用程序,資源分配單位就是上文提到的container,并且用戶可以根據(jù)自己的需求設(shè)計(jì)新的調(diào)度器,目前Yarn也提供了多種可直接使用的調(diào)度器:  

資源管理調(diào)度器Hadoop Yarn知識(shí)點(diǎn)有哪些

FIFOScheduler(先進(jìn)先出調(diào)度器):  不支持搶占先機(jī)。  如果有運(yùn)行特別慢的任務(wù),會(huì)影響其他任務(wù)
FairScheduler(公平調(diào)度器):  每個(gè)用戶公平共享集群資源,支持搶占先機(jī),如果有的任務(wù)長時(shí)間占用大量資源,超出其應(yīng)該分配的資源比例,會(huì)終止得到過多資源的任務(wù)
CapacityScheduler(容量調(diào)度器):  有層次結(jié)構(gòu)的隊(duì)列,每個(gè)隊(duì)列分配一定的容量(比如將小job和大job分配到不同的隊(duì)列),單個(gè)隊(duì)列內(nèi)部支持FIFO  

筆者強(qiáng)調(diào):

1.Yarn并不清楚用戶提交程序的運(yùn)行機(jī)制,只提供運(yùn)算資源的調(diào)度(用戶程序向yarn申請(qǐng)資源,yarn負(fù)責(zé)分配資源)
2.Yarn中的主管角色是ResourceManager,具體提供運(yùn)算資源的角色是NodeManager
3.Yarn與運(yùn)行的用戶程序完全解耦,意味著Yarn上可以運(yùn)行各種類型的分布式運(yùn)算程序,如Spark、MapReduce、Storm、Tez等,前提是這些技術(shù)框架中有符合Yarn規(guī)范的資源請(qǐng)求機(jī)制即可
4.因?yàn)閅arn不參與用戶程序的執(zhí)行等,使得Yarn成為一個(gè)通用的資源調(diào)度平臺(tái)。企業(yè)中以前存在的各種計(jì)算引擎集群都可以整合在一個(gè)資源管理平臺(tái)上,提高資源利用率
5.調(diào)度器不參與任何與具體應(yīng)用程序相關(guān)的工作,如不負(fù)責(zé)監(jiān)控或者跟蹤應(yīng)用的執(zhí)行狀態(tài)等,也不負(fù)責(zé)重新啟動(dòng)因應(yīng)用執(zhí)行失敗或者硬件故障而產(chǎn)生的失敗任務(wù),這些均交由應(yīng)用程序相關(guān)的Application Master完成。

“資源管理調(diào)度器Hadoop Yarn知識(shí)點(diǎn)有哪些”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI