YARN 服務
總覽
Yarn 服務框架為在 Yarn 原生環境里長時間運行的服務,提供了一流的支持和接口。簡言之,它扮演了容器編排系統的角色,統一管理 Yarn 上運行的容器化服務。它同時支持 Docker 容器和傳統基於進程的 Yarn 容器。
本框架的職責包括配置實現和掛載,生命周期管理,如在 Yarn 上啟動/停止/刪除服務,服務組件的啟停/伸縮,服務的滾動升級。
Yarn 服務框架主要包括以下組件:
- 一個運行在 Yarn 上的核心框架(ApplicationMaster),擔任容器編排者,負責管理所有服務的生命周期。
- 一套 RESTful API 服務器,用於用戶和 Yarn 進行通信,通過簡單的 JSON 描述實現服務的部署/管理。
- 由 Yarn Registry 支持的 DNS 服務器,實現基於標准 DNS 查找過程的服務發現。
為什么要嘗試 Yarn 服務框架?
Yarn 服務框架簡化了部署已有服務到 Yarn 的過程。它隱藏了程序管理的所有復雜的、底層的細節,讓用戶從不斷寫新代碼中解脫出來。新服務的開發者無需擔心 Yarn 的內部機制,只需關心如何容器化它們的服務。
該功能帶來的另一個巨大便利是,你可以在一個平台同時運行傳統的批處理作業和長時服務!組合者兩種工作負荷的好處顯而易見:
- 極大地簡化集群操作,因為你只需要和一個集群打交道。
- 讓批處理作業和服務共享一個集群能極大地提高資源利用率。
深入了解
- 概念:描述框架的內部結構和用於支持在 Yarn 上運行服務的 Yarn 核心功能。
- 服務 REST API:在 Yarn 上部署/管理服務的 API 文檔。
- 服務發現:描述 Yarn 上的服務發現機制。
- Registry DNS:升入 Registry DNS 的內部。
- 示例:提供一些示例服務的描述(YarnFile)。
- 配置:講述如何在 Yarn 上配置自定義服務。
- 服務升級:講述如何升級一個 Yarn 服務(實驗功能)。
