深圳市城鄉(xiāng)和建設(shè)局網(wǎng)站首頁貼吧推廣
Yarn是一個(gè)資源調(diào)度平臺(tái),負(fù)責(zé)為運(yùn)算程序提供服務(wù)器運(yùn)算資源,相當(dāng)于一個(gè)分布式的操作系統(tǒng),而MapReduce等運(yùn)算程序則相當(dāng)于運(yùn)行于操作系統(tǒng)之上的應(yīng)用程序
1.Yarn基礎(chǔ)架構(gòu)
Yarn主要由ResourceManager、NodeManager、ApplicationMaster和Container等組件構(gòu)成
ResourceManager(RM)作用:
- 處理客戶端請求
- 監(jiān)控NodeManager
- 啟動(dòng)或監(jiān)控ApplicationMaster
- 資源分配與調(diào)度
NodeManager(NM)作用:
- 管理單個(gè)節(jié)點(diǎn)上的資源
- 處理來自ResourceManager的命令
- 處理來自ApplicationMaster的命令
ApplicationMaster(AM)作用:
- 為應(yīng)用程序申請資源并分配給內(nèi)部的任務(wù)
- 任務(wù)的監(jiān)控與容錯(cuò)
Container:
Container是Yarn中的資源抽象,它封裝了某個(gè)節(jié)點(diǎn)上的多維度資源,如內(nèi)存、CPU、磁盤、網(wǎng)絡(luò)等