ray-project/kuberay

A toolkit to run Ray applications on Kubernetes

解決的問題

KubeRay 簡化了在 Kubernetes 上部署與管理 Ray 應用程式的過程,消除了手動設定與擴展分散式 AI 工作負載的複雜性。

運作方式

它作為 Kubernetes Operator 運作,提供三種主要的自訂資源定義(CRD)來管理不同類型的工作負載:

  • RayCluster:管理 Ray 集群的完整生命週期,包括建立、刪除、自動擴縮容與容錯能力。
  • RayJob:自動化集群建立與工作提交流程,並可選擇在工作完成後自動刪除集群。
  • RayService:將 RayCluster 與 Ray Serve 部署圖結合,實現高可用性與零停機升級。

此外,還提供 kubectl ray 插件以簡化工作流程、API 伺服器用於設定管理,以及一個實驗性儀表板用於資源視覺化。

適用對象

需要在 Kubernetes 上大規模執行分散式機器學習訓練、LLM 在線推論與批次推論的基礎設施工程師與 ML 平台團隊。

主要亮點

  • 自動化生命週期管理:處理從集群設定到清理的全部流程,適用於作業情境。
  • 高可用性:透過 RayService 實現零停機升級。
  • Kubernetes 整合:與監控工具(Prometheus、Grafana)、排隊系統(Volcano、Kueue)和入口控制器(Nginx)整合。
  • 可擴展性:已證明可擴展至數千節點,適用於 LLM 訓練與推論。

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • 專案