Yarn架構

Yarn架構(Master-Slave)

進程角色:

  • resourceManager(Master):任務調度和集羣資源管理。node

  • nodeManager(Slave):單個節點的資源管理。架構

  • applicationMaster:爲任務程序申請資源,任務程序運行狀態監控、錯誤恢復。app

  • container:對運行環境資源的抽象,是資源分配和使用的單元,包括cpu、內存、環境變量等資源。進程

  • client:發起任務的請求。內存

任務提交流程 :

用戶將做業提交到client,client將任務提交給resourceManager,resourceManager選取一個nodeManager來啓動一個applicationMaster,這個applicationMaster根據當前做業反過來向resourceManager申請計算資源,resourceManager將可用資源以一個個container的形式返給applicationMaster,applicationMaster根據各container的位置等屬性,將計算任務發送到相應nodeManager,由nodeManager分配container並執行,每一個container向applicationMaster同步任務執行狀態,整個做業所涉及的每一個container中的任務都所有執行完畢後,applicationMaster將結果寫入目的地,同時applicationMaster將做業完畢的消息反饋給resourceManager,resourceManager將本次做業申請的container資源所有回收,供後續做業申請。資源

相關文章
相關標籤/搜索