** WHAT**
YARN:集群資源管理系統
Structure:
- ResourceManager:整個集群只有一個,負責集群資源的統一管理和調度
- 處理客戶端請求
- 啟動/監控ApplicationMaster
- 監控NodeManager
- 資源分配與調度
- NodeManager:整個集群有多個,負責單節點資源管理和使用
- 單個節點上的資源管理和任務調度
- 處理來自ResourceManager的命令
- 處理來自ApplicationMaster的命令
- ApplicationMaster:每個應用有一個,負責應用程序的管理
- 數據切分
- 為應用程序申請資源,并進一步分配給內部任務
- 任務監控與容錯
- Container:
- 對任務運行環境的抽象
- 描述一系列信息
- 任務運行資源(節點、內存、CPU)
- 任務啟動命令
- 任務運行環境
YARN架構(物理上):
YARN架構
YARN運行過程:
YARN運行過程
WHY
-
運維成本:
如果采用“一個框架一個集群”的模式,則可能需要多個管理員管理這些集群,進而增加運維成本,而共享模式通常需要少數管理員即可完成多個框架的統一管理。 -
數據共享:
隨著數據量的暴增,跨集群間的數據移動不僅需花費更長的時間,且硬件成本也會大大增加,而共享集群模式可讓多種框架共享數據和硬件資源,將大大減小數據移動帶來的成本。
WHERE
工作流中的位置:
工作流中的位置