Yarn的運行原理(執行流程)


 

服務功能

ResouceManager: 
    1、處理客戶端的請求 
    2、啟動和監控ApplicationMaster 
    3、監控nodemanager 
    4、資源的分配和調度

Nodemanager 
    1、處理單個節點的資源管理 
    2、處理來自ResouceManager的命令 
    3、處理來自ApplicationMaster的命令

ApplicationMaser 
    1、為應用程序申請資源,並分配給內部任務 
    2、任務的監控和容錯

Container 
對多任務運行環境的抽象,包括CPU、內存等多維度資源以及環境變量、啟動命令等任務運行的相關環境

運行流程

    1、客戶端向RM中提交程序 
    2、RM向NM中分配一個container,並在該container中啟動AM 
    3、AM向RM注冊,這樣用戶可以直接通過RM査看應用程序的運行狀態(然后它將為各個任務申請資源,並監控它的運行狀態,直到運行結束) 
    4、AM采用輪詢的方式通過RPC協議向RM申請和領取資源,資源的協調通過異步完成 
    5、AM申請到資源后,便與對應的NM通信,要求它啟動任務 
    6、NM為任務設置好運行環境(包括環境變量、JAR包、二進制程序等)后,將任務啟動命令寫到一個腳本中,並通過運行該腳本啟動任務 
    7、各個任務通過某個RPC協議向AM匯報自己的狀態和進度,以讓AM隨時掌握各個任務的運行狀態,從而可以在任務失敗時重新啟動任務 
    8、應用程序運行完成后,AM向RM注銷並關閉自己

關閉historyserver

    mr-jobhistory-daemon.sh stop historyserver


免責聲明!

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



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