40.第四章-YARN-YARN產(chǎn)生的背景、初始YARN、YARN的架構(gòu)、YARN調(diào)度器_第1頁
40.第四章-YARN-YARN產(chǎn)生的背景、初始YARN、YARN的架構(gòu)、YARN調(diào)度器_第2頁
40.第四章-YARN-YARN產(chǎn)生的背景、初始YARN、YARN的架構(gòu)、YARN調(diào)度器_第3頁
40.第四章-YARN-YARN產(chǎn)生的背景、初始YARN、YARN的架構(gòu)、YARN調(diào)度器_第4頁
40.第四章-YARN-YARN產(chǎn)生的背景、初始YARN、YARN的架構(gòu)、YARN調(diào)度器_第5頁
已閱讀5頁,還剩33頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

YARN報(bào)告人:曙光瑞翼教育品牌部課程目標(biāo)了解YARN出現(xiàn)的背景,YARN的基本概念掌握YARN的組成部分,各組成部分的作用MapReduce1與YARN的區(qū)別掌握YARN三種調(diào)度器的特點(diǎn)、工作方法目錄YARN產(chǎn)生的背景初識YARNYARN架構(gòu)010203YARN調(diào)度器04小結(jié)05YARN產(chǎn)生背景01思考現(xiàn)實(shí)生活的例子一個(gè)電子廠,剛開始是1老板+3個(gè)工人思考:隨著業(yè)務(wù)擴(kuò)大,訂單將增加,工人增多。電子廠會遇到哪些問題?老板工人1工人2工人3客戶1訂單客戶2訂單問題一:對于老板:訂單進(jìn)來,要分配任務(wù)。工人增多,管理工作事情多。老板很忙啊!!問題二:訂單進(jìn)來,工人數(shù)量是有一個(gè)上限。如何安排協(xié)調(diào)資源,哪些訂單先處理?其他問題:.......如何解決?一個(gè)電子廠,剛開始是一個(gè)老板+3個(gè)工人隨著業(yè)務(wù)擴(kuò)大,訂單將增加,工人增多。思考:電子廠會遇到哪些問題?老板工人1工人2工人3客戶1訂單客戶2訂單拉長(LineLeader)解決方法:(1)增加拉長,負(fù)責(zé)跟進(jìn)進(jìn)度(2)采用合適的調(diào)度器處理訂單。老板娘4.1.1

Hadoop主要組成存儲計(jì)算Hadoop主要的組成MapReduceHDFSHadoop1.x及之前→MapReduce1Hadoop2.x+→MapReduce2兩類任務(wù):Map任務(wù)+Reduce任務(wù)兩個(gè)實(shí)現(xiàn)的版本4.1.2

MapReduce1架構(gòu)JobTrackerClient:客戶端JobTracker:負(fù)責(zé)資源管理和所有作業(yè)的控制TaskTracker:負(fù)責(zé)接收來自JobTracker的命令并執(zhí)行ClientTaskTrackerMap任務(wù)Reduce任務(wù)TaskTrackerMap任務(wù)Reduce任務(wù)TaskTrackerMap任務(wù)Reduce任務(wù)DataNodeDataNode任務(wù)管理節(jié)點(diǎn)SecondaryNameNode客戶端服務(wù)端NameNodeDataNode4.1.3

MapReduce1工作流程(了解即可)TaskTrackerTaskTrackerTaskTrackerJobTrackerHadoop1.01步:請求2步:NameNode分發(fā)數(shù)據(jù)JobTracker安排任務(wù)3步:執(zhí)行任務(wù)4步:反饋進(jìn)度5步:反饋進(jìn)度4.1.4

MapReduce1局限性MapReduce1的JobTracker有多忙?1、作業(yè)調(diào)度(把任務(wù)安排給TaskTracker)2、任務(wù)進(jìn)度監(jiān)控(跟蹤任務(wù)、重啟失敗的任務(wù);記錄任務(wù)流水)1.JobTracker訪問壓力大,影響系統(tǒng)擴(kuò)展性,不適合所有大型計(jì)算。主要表現(xiàn)在大型集群上。官方稱當(dāng)節(jié)點(diǎn)數(shù)達(dá)到4000,任務(wù)數(shù)達(dá)到40000,MapReduce會遇到可擴(kuò)展瓶頸。其他:2.難以支持除MapReduce之外的框架,如Spark、Storm等。3.JobTracker單點(diǎn)故障(因?yàn)镠adoop1.0的本身就有單點(diǎn)故障)。4.1.4

MapReduce1局限性4.1.5

MapReduce2可以這樣理解:MapReduce2→MapReduce+YARN初識YARN024.2.1

YARN-進(jìn)程4.2.2

YARN-Web界面4.2.3什么是YARNYARN:YetAnotherResourceNegotiator,另一種資源協(xié)調(diào)者。最初是為了改善MapReduce的實(shí)現(xiàn),但也是一種資源調(diào)度框架,具有通用性,可為上層應(yīng)用提供統(tǒng)一的資源管理和調(diào)度,可以支持其他的分布式計(jì)算模式(如Spark)。它的引入為集群在利用率、資源統(tǒng)一管理和數(shù)據(jù)共享等方面帶來了巨大好處。4.2.3什么是YARNYARN是一種通用資源調(diào)度框架,不僅僅支持MapReduce4.2.4

YARN在Hadoop生態(tài)圈中位置Ambari(安裝部署工具)Zookeeper(分布式協(xié)調(diào)服務(wù))HBase(分布式數(shù)據(jù)庫)HDFS(分布式存儲系統(tǒng))YARN(資源調(diào)度框架)MapReduce(離線計(jì)算)...HivePigMahout...Sqoop(數(shù)據(jù)庫ETL工具)Flume(日志采集)數(shù)據(jù)分析引擎機(jī)器學(xué)習(xí)算法庫數(shù)據(jù)采集引擎Spark,Tez...YARN架構(gòu)03ResourceManagerClientNodeManager4.3.1

YARN架構(gòu)ContainerApplicationMasterNodeManagerContainerApplicationNodeManagerContainerApplicationYARN中資源包括內(nèi)存、CPU、磁盤輸入輸出等等。Container是YARN中資源的抽象,它封裝了某個(gè)節(jié)點(diǎn)上的多維度資源。4.3.1

YARN架構(gòu)(1)Container(容器)ResourceManager負(fù)責(zé)整個(gè)系統(tǒng)的資源分配和管理,是一個(gè)全局的資源管理器。主要由兩個(gè)組件構(gòu)成:調(diào)度器和應(yīng)用程序管理器:調(diào)度器(Scheduler):

調(diào)度器根據(jù)資源情況為應(yīng)用程序分配封裝在Container中的資源。應(yīng)用程序管理器(ApplicationManager):

應(yīng)用程序管理器負(fù)責(zé)管理整個(gè)系統(tǒng)中所有應(yīng)用程序。4.3.1

YARN架構(gòu)(2)ResourceManager(資源管理器)NodeManager是每個(gè)節(jié)點(diǎn)上的資源和任務(wù)管理器。定時(shí)向ResourceManager匯報(bào)本節(jié)點(diǎn)上的資源使用情況和各個(gè)Container的運(yùn)行狀態(tài);接收并處理來自ApplicationManager的Container啟動/停止等請求。4.3.1

YARN架構(gòu)(3)NodeManager(節(jié)點(diǎn)管理器)ApplicationMaster是一個(gè)詳細(xì)的框架庫,它結(jié)合從ResourceManager獲得的資源和NodeManager協(xié)同工作來運(yùn)行和監(jiān)控任務(wù)。用戶提交的每一個(gè)應(yīng)用程序均包含一個(gè)ApplicationMaster。主要功能包括:1)、與ResourceManager調(diào)度器協(xié)商以獲取抽象資源(Container);2)、負(fù)責(zé)應(yīng)用的監(jiān)控,跟蹤應(yīng)用執(zhí)行狀態(tài),重啟失敗任務(wù)等;3)、并且與NodeManager協(xié)同工作完成Task的執(zhí)行和監(jiān)控。備注:第五章MRAppMaster是MapReduce時(shí)的ApplicationMaster的一種實(shí)現(xiàn)。4.3.1

YARN架構(gòu)(4)ApplicationMaster(主應(yīng)用)4.3.2

YARN中應(yīng)用(Application)運(yùn)行機(jī)制(流程)ApplicationClientclientnodeResurceManagerresourcemanagernodenodemanagernodeNodeManager2a:初始化容器2b:啟動4:資源不夠?申請新資源nodemanagernodeNodeManager1:提交YARNApplicationApplication(應(yīng)用進(jìn)程)5b:啟動容器容器ApplicationMaster5a:資源拿到了?啟動容器3.計(jì)算資源夠不夠,夠,則運(yùn)行任務(wù)4.3.3

YARN中任務(wù)進(jìn)度監(jiān)控ApplicationClientclientnodeResurceManagerresourcemanagernodenodemanagernodeNodeManagernodemanagernodeNodeManagerApplication(應(yīng)用進(jìn)程)容器容器ApplicationMastera.向自己的ApplicationMaster報(bào)告進(jìn)度和狀態(tài)b.匯聚作業(yè)視圖獲取狀態(tài)4.3.4

MapReduce1與YARN組成對比分工MapReduce1YARN(1)作業(yè)調(diào)度(2)任務(wù)進(jìn)度監(jiān)控(跟蹤任務(wù)、重啟失敗的任務(wù);記錄任務(wù)流水)JobTrackerResourceManager→作業(yè)調(diào)度ApplicationMaster→任務(wù)進(jìn)度監(jiān)控任務(wù)執(zhí)行(或節(jié)點(diǎn)資源管理)TaskTrackerNodeManager資源調(diào)配單元(cpu,內(nèi)存等)Slot(槽)Container(容器)4.3.5

YARN對MapReduce運(yùn)行性能提升主要特點(diǎn):ResourceManager與ApplicationMaster分離性能提升:可以擴(kuò)展支持10000個(gè)節(jié)點(diǎn),100000個(gè)任務(wù)YARN調(diào)度器(Scheduler)044.4.1

YARN調(diào)度器類似一個(gè)工廠,接到很多訂單,比如一個(gè)訂單是1W件,一個(gè)是100件等等,工人是有限的,采用什么樣的策略來安排達(dá)到資源利用率最高?這就是調(diào)度器所要考慮的。YARN調(diào)度器分三種:(1)FIFOScheduler→先進(jìn)先出調(diào)度器(2)CapacityScheduler→容器調(diào)度器(3)FairScheduler→公平調(diào)度器4.4.1

YARN調(diào)度器(1)FIFOScheduler最簡單的調(diào)度器job1運(yùn)行完后,job2才能獲取到資源4.4.1

YARN調(diào)度器(2)CapacitySchedule分成多個(gè)隊(duì)列,每個(gè)隊(duì)列占用一定資源可以看作是FIFOScheduler的多隊(duì)列版本。每個(gè)隊(duì)列可以限制資源使用量。但是,隊(duì)列間的資源分配以使用量作排列依據(jù),使得容量小的隊(duì)列有競爭優(yōu)勢。注意:如果不限制某隊(duì)列最大容量,則運(yùn)行過程中,它可以占用全部資源。4.4.1

YARN調(diào)度器(2)CapacityScheduleYARN默認(rèn)采用CapacityScheduler4.4.1

YARN調(diào)度器(3)FairScheduler剛開始,job1占用100%資源job2提交后,job1、job2各占50%job2運(yùn)行完后,job1又占100%假設(shè)每個(gè)任務(wù)具有相同的優(yōu)先級,平均分配系統(tǒng)的資源4.4.2三種調(diào)度器比較調(diào)度器工作方法FIFOScheduler(1)單隊(duì)列(2)先進(jìn)先出的原則

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論