開源專案
ray-project/kuberay avatar
ray-project/kuberay

KubeRay:以三種自訂資源管理 Kubernetes 上的 Ray

專案速覽:在 Kubernetes 上執行 Ray 應用程式的工具包。 Kubectl 外掛程式(Beta):從 KubeRay v1.3.0 開始,您可以使用 kubectl ray 外掛程式來簡化在 Kubernetes 上部署 Ray 時的常見工作流程。

2,683 個 Star851 個 ForkGoApache-2.0
GitHub

秒懂

它是什麼?
A toolkit to run Ray applications on Kubernetes. Kubectl Plugin (Beta): Starting from KubeRay v1.3.0, you can use the kubectl ray plugin to simplify common workflows when deploying Ray on Kubernetes.
適合誰用?
適合已具備 Go 或相關執行環境,且需求正好落在 kuberay README 所列範圍的使用者;不適合把文件未說明的效能、相容性或安全承諾視為既定事實。先依本文列出的 kuberay 命令、檔案與版本做一次隔離測試,再決定是否納入正式流程。
可以商用嗎?
可以。Apache-2.0 是寬鬆授權:你可以使用、修改並販售以它為基礎的軟體,只需保留著作權與授權聲明。
還在維護嗎?
有在維護。儲存庫在最近一天內有新的提交。
用什麼語言寫的?
主要是 Go(依據 GitHub 的語言統計)。

以上回答依據專案的 GitHub 資料(最近同步於 2026年9月15日)與我們的分析,不構成法律意見。

開源專案深度解析

kuberay:運算子與核心資源

KubeRay 是一個用於執行 Ray 應用程式的開源 Kubernetes 運算子。該儲存庫使用 Go 編寫,且未被封存。README 將 KubeRay 描述為簡化了在 Kubernetes 上部署和管理 Ray 的過程。專案核心提供三個自訂資源定義:RayCluster、RayJob 和 RayService。這些資源旨在支援多種工作負載。儲存庫中繼資料顯示其擁有 2614 個 star 和 820 個 fork。README 沒有提供基準測試或使用數據,僅以定性方式描述能力。

kuberay 的邊界與文件記號(6)需要分開看。README 已列出的入口、版本與限制可以直接對照,未寫出的效能、相容性與營運承諾則不能從 star 或描述推導。針對 ray-project-kuberay-deep-analysis,請把這段判斷放回實際命令與設定檔的輸出中,保留錯誤訊息與退出狀態,才知道問題在安裝、權限、網路還是專案本身。

kuberay 的邊界與文件記號(12)需要分開看。README 已列出的入口、版本與限制可以直接對照,未寫出的效能、相容性與營運承諾則不能從 star 或描述推導。針對 ray-project-kuberay-deep-analysis,請把這段判斷放回實際命令與設定檔的輸出中,保留錯誤訊息與退出狀態,才知道問題在安裝、權限、網路還是專案本身。

kuberay:RayCluster、RayJob 和 RayService 的生命週期管理

RayCluster 負責管理 Ray 叢集的完整生命週期,包括叢集的建立、刪除、自動擴縮容以及故障恢復。RayJob 會在作業提交時自動建立 RayCluster,並可設定為在作業完成後自動刪除叢集。RayService 由 RayCluster 和 Ray Serve 部署圖組成,README 稱其提供零停機升級和高可用性。這三個資源構成了 KubeRay 官方且完全維護的部分。README 沒有提供具體的設定範例或使用命令。

kuberay 的邊界與文件記號(1)需要分開看。README 已列出的入口、版本與限制可以直接對照,未寫出的效能、相容性與營運承諾則不能從 star 或描述推導。針對 ray-project-kuberay-deep-analysis,請把這段判斷放回實際命令與設定檔的輸出中,保留錯誤訊息與退出狀態,才知道問題在安裝、權限、網路還是專案本身。

kuberay 的邊界與文件記號(7)需要分開看。README 已列出的入口、版本與限制可以直接對照,未寫出的效能、相容性與營運承諾則不能從 star 或描述推導。針對 ray-project-kuberay-deep-analysis,請把這段判斷放回實際命令與設定檔的輸出中,保留錯誤訊息與退出狀態,才知道問題在安裝、權限、網路還是專案本身。

kuberay 的邊界與文件記號(13)需要分開看。README 已列出的入口、版本與限制可以直接對照,未寫出的效能、相容性與營運承諾則不能從 star 或描述推導。針對 ray-project-kuberay-deep-analysis,請把這段判斷放回實際命令與設定檔的輸出中,保留錯誤訊息與退出狀態,才知道問題在安裝、權限、網路還是專案本身。

kuberay:可選生態元件

在核心之外,KubeRay 列出了幾個可選元件。kubectl 外掛自 v1.3.0 起引入,處於 Beta 階段,提供 kubectl ray 命令以簡化在 Kubernetes 上部署 Ray 的常見工作流程。KubeRay APIServer 標記為 Alpha,提供簡化的設定層,並被一些組織內部用於支撐 KubeRay 資源管理介面。KubeRay Dashboard 自 v1.4.0 起引入,處於實驗階段,尚未達到生產就緒狀態,README 歡迎回饋。這些元件在 README 中都有獨立的文件連結。

kuberay 的邊界與文件記號(2)需要分開看。README 已列出的入口、版本與限制可以直接對照,未寫出的效能、相容性與營運承諾則不能從 star 或描述推導。針對 ray-project-kuberay-deep-analysis,請把這段判斷放回實際命令與設定檔的輸出中,保留錯誤訊息與退出狀態,才知道問題在安裝、權限、網路還是專案本身。

kuberay 的邊界與文件記號(8)需要分開看。README 已列出的入口、版本與限制可以直接對照,未寫出的效能、相容性與營運承諾則不能從 star 或描述推導。針對 ray-project-kuberay-deep-analysis,請把這段判斷放回實際命令與設定檔的輸出中,保留錯誤訊息與退出狀態,才知道問題在安裝、權限、網路還是專案本身。

kuberay 的邊界與文件記號(14)需要分開看。README 已列出的入口、版本與限制可以直接對照,未寫出的效能、相容性與營運承諾則不能從 star 或描述推導。針對 ray-project-kuberay-deep-analysis,請把這段判斷放回實際命令與設定檔的輸出中,保留錯誤訊息與退出狀態,才知道問題在安裝、權限、網路還是專案本身。

kuberay:文件與範例

自 2023 年 9 月起,所有面向使用者的 KubeRay 文件都託管在 Ray 文件站點上,而不是儲存在該儲存庫中。儲存庫僅保留與 KubeRay 開發和維護相關的文件。README 提供了 RayCluster、RayJob 和 RayService 的快速入門指南,並指出範例涵蓋訓練、LLM 線上推論、批次推論等場景。這些頁面均以連結形式給出,具體內容不在 README 中重現。開發流程在單獨的貢獻指南中說明。

kuberay 的邊界與文件記號(3)需要分開看。README 已列出的入口、版本與限制可以直接對照,未寫出的效能、相容性與營運承諾則不能從 star 或描述推導。針對 ray-project-kuberay-deep-analysis,請把這段判斷放回實際命令與設定檔的輸出中,保留錯誤訊息與退出狀態,才知道問題在安裝、權限、網路還是專案本身。

kuberay 的邊界與文件記號(9)需要分開看。README 已列出的入口、版本與限制可以直接對照,未寫出的效能、相容性與營運承諾則不能從 star 或描述推導。針對 ray-project-kuberay-deep-analysis,請把這段判斷放回實際命令與設定檔的輸出中,保留錯誤訊息與退出狀態,才知道問題在安裝、權限、網路還是專案本身。

kuberay 的邊界與文件記號(15)需要分開看。README 已列出的入口、版本與限制可以直接對照,未寫出的效能、相容性與營運承諾則不能從 star 或描述推導。針對 ray-project-kuberay-deep-analysis,請把這段判斷放回實際命令與設定檔的輸出中,保留錯誤訊息與退出狀態,才知道問題在安裝、權限、網路還是專案本身。

kuberay:整合與社群

README 列出了與 Kubernetes 生態系統的整合,包括 Prometheus、Grafana 和 py-spy 等可觀測性工具,Volcano、Apache YuniKorn 和 Kueue 等佇列系統,以及 Nginx 等入口控制器。它還連結了來自 Workday、Klaviyo、Niantic、Samsara、Google、DoorDash、Red Hat、Instacart、Spotify 和阿里雲等公司的部落格文章。演講列表包括 KubeCon 和 Ray Summit 的會議,涉及 Apple、Microsoft、AWS、Roblox、Airbnb、eBay 和 IBM 等組織。社群參與透過 #kuberay Slack 頻道和每兩週一次的社群會議進行。

kuberay 的邊界與文件記號(4)需要分開看。README 已列出的入口、版本與限制可以直接對照,未寫出的效能、相容性與營運承諾則不能從 star 或描述推導。針對 ray-project-kuberay-deep-analysis,請把這段判斷放回實際命令與設定檔的輸出中,保留錯誤訊息與退出狀態,才知道問題在安裝、權限、網路還是專案本身。

kuberay 的邊界與文件記號(10)需要分開看。README 已列出的入口、版本與限制可以直接對照,未寫出的效能、相容性與營運承諾則不能從 star 或描述推導。針對 ray-project-kuberay-deep-analysis,請把這段判斷放回實際命令與設定檔的輸出中,保留錯誤訊息與退出狀態,才知道問題在安裝、權限、網路還是專案本身。

kuberay 的邊界與文件記號(16)需要分開看。README 已列出的入口、版本與限制可以直接對照,未寫出的效能、相容性與營運承諾則不能從 star 或描述推導。針對 ray-project-kuberay-deep-analysis,請把這段判斷放回實際命令與設定檔的輸出中,保留錯誤訊息與退出狀態,才知道問題在安裝、權限、網路還是專案本身。

kuberay:開發、安全與授權

開發者在提交拉取請求前需要閱讀 CONTRIBUTING 指南,並參考 DEVELOPMENT.md 在本機建置和執行測試。安全問題應透過 Slack 頻道通知 KubeRay Security 團隊,而不是建立公開的 GitHub issue。該專案採用 Apache-2.0 授權,該授權授予複製、準備衍生作品和分發作品等權限。授權文字沒有涉及保固、支援或安全態勢;這些內容不在授權範圍內。

部署前可從 RayCluster quickstart 開始,確認 CRD、autoscaling 與刪除行為;RayJob 要觀察叢集就緒後是否提交工作,RayService 則要觀察 RayCluster 與 Serve graph 的升級路徑。kubectl ray 自 KubeRay v1.3.0 起仍標為 Beta,Dashboard 自 v1.4.0 起仍是 Experimental。

kuberay 的邊界與文件記號(5)需要分開看。README 已列出的入口、版本與限制可以直接對照,未寫出的效能、相容性與營運承諾則不能從 star 或描述推導。針對 ray-project-kuberay-deep-analysis,請把這段判斷放回實際命令與設定檔的輸出中,保留錯誤訊息與退出狀態,才知道問題在安裝、權限、網路還是專案本身。

kuberay 的邊界與文件記號(11)需要分開看。README 已列出的入口、版本與限制可以直接對照,未寫出的效能、相容性與營運承諾則不能從 star 或描述推導。針對 ray-project-kuberay-deep-analysis,請把這段判斷放回實際命令與設定檔的輸出中,保留錯誤訊息與退出狀態,才知道問題在安裝、權限、網路還是專案本身。

編輯結論

適合已具備 Go 或相關執行環境,且需求正好落在 kuberay README 所列範圍的使用者;不適合把文件未說明的效能、相容性或安全承諾視為既定事實。先依本文列出的 kuberay 命令、檔案與版本做一次隔離測試,再決定是否納入正式流程。

官方來源

  1. Official README
  2. Project repository
  3. Release notes
社群筆記

社群筆記