YARN 解剖學

元件

資源管理器 :它是在系統中的所有應用程式之間分配資源的最終許可權。它還負責分配容器,其中應用程式主機將在應用程式主機的容器分配之後啟動並初始化它。

節點管理器 :它負責監視執行它的任何給定節點上的容器及其資源使用情況。

StackOverflow 文件

應用程式主管 :它負責與資源管理器協商,以便在資料節點上分配所需資源以執行任何作業,並與節點管理器協調以執行作業並監視容器及其資源消耗。

容器 :它表示處理任何作業所需的 CPU,記憶體,磁碟等資源。它是資源管理器成功分配資源的結果。Container 授予應用程式主機在群集中的特定計算機(節點)上使用特定數量資源的許可權。同一臺機器上可以有多個容器。

工作執行過程 StackOverflow 文件

  1. 使用者/客戶端提交應用程式並生成應用程式主機的規範。

  2. 資源管理器負責分配 Application Master 將啟動的指定容器,然後啟動 Application Master。每個工作都有自己獨立的 Application Master。

  3. Application Master 啟動並向資源管理器註冊。這有助於客戶通過 Application Master 直接瞭解作業執行的某些必要細節。

  4. 然後,Application Master 向資源管理器發出請求以分配具有所需資源的容器,以便在節點上執行作業。該資源請求是通過資源請求協議(RRP)進行的。

  5. 成功的容器分配 Application Master 將容器引入節點管理器它還提供了與在節點上啟動容器的分配相關的詳細資訊。在啟動容器之前,節點管理器使用資源管理器驗證容器分配以避免虛假分配。

  6. 當應用程式程式碼在容器內執行時,容器通過應用程式特定協議(ASP)向其應用程式主機提供適當的資訊。

  7. 在執行期間,客戶端直接與 Application Master 連線,以通過應用程式特定協議獲取狀態,進度等。

  8. 一旦使用者提交的應用程式的過程完成,Application Master 就會自動登出資源管理器並關閉,允許分配的容器釋放並重新使用隨之而來的是,為該作業獲取的所有容器將再次被釋放。