yarn任務執行流程


yarn簡述
yarn是一個資源調度平台,負責為運算程序提供服務器運算資源,相當於一個分布式操作系統平台,而mapreduce等運算程序則相當於運行與操作系統之上的應用程序。

ResourceManager:總的老大:處理客戶端請求,監控NodeManager,啟動或監控ApplicationMaster,資源的分配與調度
ApplicationMaster:單個job的老大:負責數據切分,為應用程序申請資源並分配內部的任務,任務的監控與容錯
NodeManager:單個節點的老大:管理單個節點的資源,處理來自ResourceManager、ApplicationMaster的命令
Container:資源抽象:如內存、cpu、磁盤、網絡等

作業提交運行情況:

1.client向yarn提交job,首先找ResourceManager分配資源,
2.ResourceManager開啟一個Container,在Container中運行一個Application manager
3.Application manager找一台nodemanager啟動Application master,計算任務所需的計算
4.Application master向Application manager(Yarn)申請運行任務所需的資源
5.Resource scheduler將資源封裝發給Application master
6.Application master將獲取到的資源分配給各個nodemanager
7.各個nodemanager得到任務和資源開始執行map task
8.map task執行結束后,開始執行reduce task
9.map task和 reduce task將執行結果反饋給Application master
10.Application master將任務執行的結果反饋Application manager

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM