hadoop yarn組件介紹

Yarn的產生

mapReduc1.0node

 

1單點故障算法

2擴展效率低架構

3資源利用率高框架

下降運維成本運維

方便數據共享spa

多計算框架支持orm

MapReduceblog

Spark隊列

Storm內存

 

Yarn的架構圖

 

Yarn模塊介紹

ResourceManger

   負責集羣資源的統一管理和調度

   處理客戶端請求

  啓動/監控ApplicationMaster

  監控NodeManager

  資源的分配與調度

NodeManager

  負責單點資源的管理和使用

  處理來自ResourceManager的命令

  處理來自ApplicationMaster的命令

ApplicationMaster

  負責應用程序的管理

  數據的切分

  爲應用程序申請資源。並進一步分給內部任務

  任務的監控與容錯

Container

  任務環境的抽象

  任務運行的資源

  任務啓動命令

  任務運行環境

Yarn資源調度器

  多類型資源調度

Drf算法

Cpu和內存兩種資源

  提供多種資源調度

   Fifo

   隊列 capaity Scheduler

   Fair Scheduler

多租戶的資源調度器

   支持資源按比例分配

   支持層級隊列的劃分

   支持資源的槍佔

Yarn 資源隔離方案

 內存絕定生死

 Cpu決定快慢

 

 

 

Yarn運行流程的描述

1client端向ResourceManager 發送請求,

2 ResourceManager啓動一個Contariner(容器)用於運行ApplicationMaster

3 ApplicationMaster啓動完成後會向ResourceManager創建心跳機制

4 當處理機制不夠時,ApplicationMaster會向ResourceManager發送申請請求

5 ResourceManager接收到請求後會查詢可用的contariner讓後發送ApplicationMaster

6 ApplicationMaster進行初始化,AplicationMaster與對應的nodeManage通訊

要求nodeManager啓動Contarner aplicationMasternodeManger創建心跳機制

從而對nodeManager運行的任務進行監控和管理

7 contariner運行期間,ApplicationMasterContariner進行監控,contarner經過rpc協議

向對應的ApplicationMaseter彙報本身的狀態和進度

8運行期間client 直接與ApplicationMaster通訊獲取狀態,進度

9 結束後ApplicationMaster會向ResourceManager彙報而且註銷本身,並容許所屬的Contariner收回

相關文章
相關標籤/搜索