kuberay: Rayクラスター、ジョブ、およびサービスのライフサイクルを管理するためのKubernetes operator

kuberay: Rayクラスター、ジョブ、およびサービスのライフサイクルを管理するためのKubernetes operator

何を解決するか

KubeRayは、Kubernetes上でのRayアプリケーションのデプロイと管理を簡素化し、トレーニングや推論などの分散AIワークロードのためのクラスターを手動で構成する複雑さを取り除きます。

仕組み

これはKubernetes operatorとして動作し、異なるワークロードタイプを管理するために3つの主要なカスタムリソース定義(CRD)を提供します:

  • RayCluster: 作成、削除、オートスケーリング、およびフォールトトレランスを含む、Rayクラスターの完全なライフサイクルを管理します。
  • RayJob: クラスターの作成、特定のジョブの送信、および完了時にクラスターを自動的に削除することができます。
  • RayService: RayClusterとRay Serveのデプロイメントグラフを組み合わせることで、高可用性とゼロダウンタイムのアップグレードを可能にします。

さらに、ワークフローを簡素化するための kubectl ray プラグイン、構成管理用のAPIサーバー、およびリソースの可視化のための実験的なダッシュボードを提供します。

対象ユーザー

これは、Kubernetes上で大規模な分散機械学習およびAIアプリケーション(LLMのオンライン推論やバッチトレーニングなど)を実行する必要がある開発者やプラットフォームエンジニア向けに設計されています。

ハイライト

  • 自動化されたライフサイクル管理: クラスターの作成、スケーリング、およびフォールトトレランスを自動的に処理します。
  • 統合されたエコシステム: Prometheus、Grafana、Nginx、およびVolcanoやKueueのようなキューイングシステムと統合されます。
  • ワークロード固有のリソース: 長期実行サービス(RayService)および使い捨てジョブ(RayJob)のための専用リソース。
  • スケーラビリティ: Apple、Google、およびSpotifyのような組織によって、AIインフラストラクチャを数千のノードにスケールさせるために使用されています。

Sources