nebius/soperator
Run Slurm in Kubernetes
解決的問題
Soperator 簡化了在 Kubernetes 上部署和管理 Slurm 集群的流程,特別適用於 AI 訓練和高階運算(HPC)工作負載。它消除了手動設置、調整規模和維護 Slurm 集群所需的繁瑣工作,同時降低了因未偵測到的硬體問題或 GPU 使用效率低下,導致長時間訓練作業失敗的風險。
如何運作
Soperator 使用 Kubernetes operator 模式。使用者定義一個 SlurmCluster 自訂資源,描述集羣的架構(控制器、登入節點、工作節點、儲存空間和健康檢查)。接著,operator 會將此規格轉換為 Kubernetes 物件,例如 Deployments 和 StatefulSets。為了確保集羣內的一致性,它使用「監牢」(jail)機制(透過 PVC 共享根檔案系統),讓所有節點能立即看到配置和套件變更。
適用對象
此工具專為平台工程師和團隊設計,適用於從裸金屬 Slurm 安裝遷移至 Kubernetes 環境,並需要可擴展、可靠的方式來提供 AI 訓練用的 Slurm 排程服務。
主要特色
- 自動化集羣管理:透過單一資源進行宣告式更新,支援調整規模、升級和設定變更。
- 高可靠性:結合被動監控與主動 GPU/網路探測,自動排空並替換失敗節點。
- GPU 效率優化:支援暫時性節點、自動擴縮容,以及 InfiniBand 拓撲感知,以最佳化 GPU 排程。
- 預安裝堆疊:內建 NVIDIA 驅動程式、CUDA、NCCL 及常見訓練依賴套件。
- 企業整合:支援 SSSD 用於身分管理,Prometheus/Grafana 用於可觀察性,以及 Pyxis/Enroot 等符合 OCI 標準的執行時環境。
相關
- 專案
- 專案
- 專案
- 專案
- 專案