ray-project/kuberay

A toolkit to run Ray applications on Kubernetes

何を解決するか

KubeRayは、Kubernetes上でRayアプリケーションのデプロイと管理を簡素化し、分散AIワークロードの手動設定やスケーリングの複雑さを取り除きます。

動作方法

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

  • RayCluster: Rayクラスタのライフサイクル全体(作成、削除、オートスケーリング、障害耐性)を管理します。
  • RayJob: クラスタの作成とジョブの提出プロセスを自動化し、ジョブ完了後にクラスタを自動削除するオプションを提供します。
  • RayService: RayClusterとRay Serveデプロイメントグラフを統合し、高可用性とゼロダウンタイムのアップグレードを可能にします。

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

対象ユーザー

Kubernetes上で分散機械学習トレーニング、LLMのオンライン推論、バッチ推論をスケールして実行する必要があるインフラエンジニアおよびMLプラットフォームチーム。

主な特徴

  • 自動ライフサイクル管理: ジョブのクラスタセットアップから終了までをすべて処理します。
  • 高可用性: RayServiceによるゼロダウンタイムアップグレードを提供します。
  • Kubernetes統合: 監視ツール(Prometheus、Grafana)、キューイングシステム(Volcano、Kueue)、イングレスコントローラー(Nginx)と統合されています。
  • スケーラビリティ: LLMトレーニングおよび推論において、数千ノードまでスケーリング可能であることが実証されています。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト