NVIDIA、GPUクラスタの稼働準備を分散AI負荷で事前検証する「Cluster Readiness Engine」をオープンソース公開
要点
- NVIDIAは、Kubernetes環境のGPUクラスタが本番ワークロードに耐えうるかを事前に検証するオープンソースコントローラー「NVIDIA Cluster Readiness Engine(NVCRE)」を発表した。
- 通常の診断では検知できない潜在的なハードウェア障害やネットワーク構成の不備を、トポロジを考慮した実際の分散AIワークロードを実行して検知する。
- 3層のKubernetesカスタムリソースを活用した階層化APIにより、通信や学習などのカテゴリごとに問題が発生したノードを正確に特定する。
- 失敗したノードグループを自動分割して再テストする「適応型障害分離」により、疑わしいノードをピンポイントで絞り込む。
- テレメトリ監視ツール「NVSentinel」や「NVIDIA AI Cluster Runtime」と統合され、一貫した運用基盤レイヤーを構成する。
米NVIDIAは2026年9月23日、Kubernetes上で大規模なGPUクラスタの稼働準備状況を検証するオープンソースコントローラー「NVIDIA Cluster Readiness Engine(NVCRE)」を発表した。本番運用の前に実際の分散ワークロードを実行することで、単体テストでは検出できないハードウェア障害や性能劣化を事前に洗い出す仕組みを提供するという。これにより、運用チームがクラスタの不具合調査に要する時間と負担を大幅に削減できるとしている。
単体診断をパスしても発生する大規模ジョブの性能低下
GPUクラスタの構築においては、立ち上げ(bring-up)、初期バーンイン(burn-in)、プレプロダクション、本番環境と段階を踏んで準備が進められる。しかし、個々のGPUやネットワークリンク、Pod(Kubernetesでコンテナを実行する最小単位)がすべて正常と報告されていても、512基のGPUを用いた大規模な学習ジョブを実行すると期待通りの性能が出なかったり失敗したりする事例が少なくないという。
その原因としては、高負荷時にのみ性能が低下するネットワークリンクや極端に低速なGPU、あるいはトラフィックが意図せず低速な経路へ迂回してしまう設定ミスなどが挙げられる。従来の運用では、ジョブを開始して数時間経過した後や顧客からの報告を受けて初めて障害が発覚し、原因特定のためにクラスタを何日も分割調査(バイセクション)している間、計算リソースがアイドル状態に陥るという課題が存在していた。
また、HPC分野で広く使われるジョブ管理システム「Slurm」では単一のコマンド(srun)でクラスタ全体のテストを実行できる一方、Kubernetesには同等の標準機能がない。そのため、GPUやRDMA(CPUを介さずにネットワーク経由でメモリへ直接アクセスする技術)のリソース割り当て、NCCL(マルチGPU間の通信を最適化するライブラリ)の最適化設定、共有メモリの確保、すべてのPodを同時に起動するギャングスケジューリングなどを手動で構成し、スクリプトや手順書で維持管理する必要があった。NVCREはこうしたKubernetes特有のギャップを埋めるために開発された。
3層のリソースで障害ノードを特定する階層化API
NVCREのインターフェースは、Kubernetesのカスタムリソース定義(CRD:標準APIを拡張する仕組み)として提供されており、kubectl による確認やGitOps(Gitリポジトリを信頼できる情報源として設定を管理する手法)による自動運用に対応している。
APIは以下の3つのリソースによる階層構造で構成されている。
- Certification: テスト対象となるノード群と、実行する検証カテゴリを指定する最上位リソース。
- Workflow: 1つのカテゴリを管理するリソース。カタログ設定やプラットフォーム、GPUごとのオーバーライドを適用し、反復回数の管理や子Jobの生成を行う。
- Job: 指定されたノードグループ上で実際のワークロードを実行し、ノードの健全性を監視しながら測定値やエラーを記録するリソース。
運用者がCertificationを作成すると、カテゴリごとにWorkflowが立ち上がり、さらに各Workflowが子Jobを生成する。テスト結果はJobからWorkflow、Certificationへと上方向へ集約される。これにより、NCCL通信やNeMoフレームワークによる事前学習など、どのカテゴリの処理でどのノード(例: gpu-node-07)がハードウェア障害や閾値違反を起こしたのかを正確に紐付けて出力する。
自動で原因ノードを絞り込む「適応型障害分離」
NVCREには、テスト失敗時の原因切り分けを自動化する「適応型障害分離(Adaptive fault isolation)」機能が備わっている。複数ノードで構成されるグループ内でテストが失敗した場合、コントローラーがグループを自動的に分割してテストを再実行する。これを繰り返すことで、グループ全体を疑うのではなく、問題を引き起こしている少数の特定ノードを自動的に絞り込むことができる。
さらに、独立した「WorkloadRun API」も用意されている。このAPIは、プラットフォームの自動検出やフレームワーク固有のランタイム設定、オプションのギャングスケジューリングなど、Kubernetes上で反復して行われるマルチノードGPUワークロードのセットアップ処理を受け持つ。
運用基盤との統合と提供状況
NVCREは単体での検証にとどまらず、NVIDIAのクラスタ運用エコシステムと統合して動作する設計となっている。検証済み構成を提供する「NVIDIA AI Cluster Runtime」や、テレメトリデータを基に継続的なヘルスモニタリングを行う「NVSentinel」と連携し、同社が「NVIDIA DSX OS」と呼ぶ運用レイヤーを形成する。
NVCREはすでにオープンソースとして公開されており、専用CLIツール「nvcrectl」を用いた初期設定コマンドや公式ドキュメントが提供されている。また、新しいハードウェアアーキテクチャや推論ワークロードへの対応を拡張するため、GitHubリポジトリを通じてテストカタログやワークロードアダプタのコントリビューションを受け付けている。