yarn架構網絡
ResourceManager(RM):全局的資源管理器,負責整個系統的資源管理和分配架構
NodeManager(NM):每一個節點上的資源和任務管理器,定時向RM彙報本節點上的資源使用狀況和各個Container的運行狀態,接收並處理來自AM的Container啓動/中止等各類請求spa
ApplicationMaster(AM):用戶提交的每一個應用程序均包含一個AM,主要功能與RM調度器協商以獲取資源,進一步分配給內部的任務,與NM通訊啓動/中止任務,監控任務的運行狀態內存
Container:是YARN中資源的抽象,封裝了某個節點上的多維度資源,如內存、CPU、磁盤、網絡等。當AM向RM申請資源時,RM爲AM返回的資源即是用Container表示的。資源
結合YARN架構圖描述一個資源請求的流程:io
NodeManager向ResourceManager註冊各機器資源
客戶端向ResouceManager提交做業
在worker上啓動一個用以跟蹤和管理這個程序的ApplicationMaster
ApplicationMaster向ResouceManager請求資源,並判斷是否知足須要
ResouceManager以Container的形式將資源反饋給ApplicationMaster
Container做爲資源單元保證做業隔離運行ast