YARN 服務

概觀

Yarn 服務架構提供一級支援和 API,以原生方式在 YARN 中主機長時間執行的服務。簡而言之,它作為一個容器協調平台,用於管理 YARN 上的容器化服務。它支援 YARN 中的 docker 容器和傳統的基於程序的容器。

此架構的責任包括執行組態解析和掛載、生命週期管理(例如停止/啟動/刪除服務)、彈性調整服務元件、在 YARN 上滾動升級服務、監控服務的正常運作和準備就緒狀態等。

yarn 服務架構主要包括以下元件

  • 在 YARN 上執行的核心架構 (ApplicationMaster),作為容器協調器,負責所有服務生命週期管理。
  • 供使用者與 YARN 互動的 restful API 伺服器,以透過簡單的 JSON 規格部署/管理其服務。
  • 由 YARN 服務註冊表支援的 DNS 伺服器,以透過標準 DNS 查詢在 YARN 上發現服務。

為什麼我應該嘗試 YARN 服務架構?

YARN 服務架構讓將現有服務帶到 YARN 上變得容易。它隱藏了應用程式管理的所有複雜低階細節,讓使用者不必被迫撰寫新程式碼。新服務的開發人員不必擔心 YARN 內部,只需要專注於其服務的容器化。

此外,此功能的另一大優點是,現在您可以在單一平台上同時啟用傳統批次處理作業和長時間執行服務!結合這些工作負載的好處有兩個

  • 極大地簡化叢集操作,因為您只需要處理單一叢集。
  • 讓批次作業和服務共享叢集可以大幅提升資源利用率。

如何開始?

此功能處於 alpha 狀態,因此 API 和命令列可能會變更。我們會持續更新文件。

快速入門提供快速教學,引導您完成在 YARN 上部署服務的簡單步驟。

如何實際操作?

  • 概念:描述架構的內部運作和 YARN 核心的一些功能,以支援在 YARN 上執行服務。
  • 服務 REST API:在 YARN 上部署/管理服務的 API 文件。
  • 服務發現:描述 YARN 上的服務發現機制。
  • Registry DNS:深入探討 Registry DNS 的內部運作。
  • 範例:列出一些範例服務定義 (Yarnfile)。
  • 組態:描述如何在 YARN 上組態自訂服務。
  • 服務升級:描述如何升級 YARN 服務,這是一個實驗性功能。