GoogleCloudPlatform/cluster-toolkit

Cluster Toolkit is an open-source software offered by Google Cloud which makes it easy for customers to deploy AI/ML and HPC environments on Google Cloud.

Google Cloud Cluster Toolkit(旧称 HPC Toolkit)

概要 – Google が提供するオープンソースのツールで、Google Cloud 上に AI/ML またはハイパフォーマンスコンピューティング(HPC)クラスタを迅速に作成・管理できます。シンプルな YAML ブループリント でクラスタを記述し、リソースをプロビジョニングするために必要な Terraform/Packer コードを生成します。

主要コンポーネント

  • ブループリント – 目的のインフラストラクチャ(ネットワーク、ストレージ、コンピュート、Slurm、GKE など)を記述する YAML ファイル。
  • モジュール – 再利用可能な Terraform または Packer のビルディングブロック(例: Slurm コントローラ、GPU ノードプール)。ブループリントがこれらを組み立てます。
  • gcluster CLI – ブループリントを自己完結型のデプロイメントフォルダに変換し、terraform apply/destroy を実行するコマンドラインドライバー。
  • デプロイメントフォルダ – 生成された Terraform/Packer ファイルを含むディレクトリ。バージョン管理や CI/CD での使用が可能です。

一般的なワークフロー

  1. gcluster バイナリをインストール(プリビルドバンドルまたはソースからビルド)。
  2. ブループリントを選択または作成(例: examples/hpc-slurm.yaml)。
  3. gcluster create <blueprint> を実行 → デプロイメントフォルダが作成されます。
  4. gcluster deploy <folder> を実行 → Terraform を介してクラスタをプロビジョニングします。
  5. gcluster job submit … を使用して GKE クラスタ上で AI/ML ワークロードを起動(プリビルドイメージまたはオンザフライのコンテナビルドをサポート)。
  6. 完了したら、gcluster destroy <folder> ですべてを破棄します。

主な機能

  • Slurm ベースの HPC クラスタをデプロイ(A4、H4D、またはカスタム VM タイプを含む)。
  • Kueue、JobSet、オプションの TPU スライシングまたは Pathways サポートを備えた AI 最適化 GKE クラスタをデプロイ。
  • 不足している Terraform/Packer バイナリの自動ダウンロード(--download-dependencies)。
  • 組み込みのブループリント検証とテレメトリ(オプトアウト可能)。
  • 大規模 AI トレーニングのための Google Cloud AI Hypercomputer との統合。

対象ユーザー

  • GCP 上で再現可能で反復可能な HPC または AI クラスタを手動で Terraform を作成せずに必要とする研究者やエンジニア。
  • インフラストラクチャのプロビジョニングとコンテナ化された AI ジョブの送信の両方に単一の CLI を希望するチーム。
  • ベンチマークやトレーニング実行のために一時的なクラスタを迅速に作成する必要がある CI/CD パイプライン。

インストール

  • プリビルドバンドル(推奨): リリースページから OS 固有の gcluster_bundle_*.tgz をダウンロードし、解凍して ./gcluster --help を実行します。
  • ソースから: git clone https://github.com/GoogleCloudPlatform/cluster-toolkit && make && ./gcluster --version。
  • Go、Terraform、および(Windows の場合)シェルベースのプロビジョナーが必要な場合は WSL2 が必要です。

はじめに

  • 必要な GCP API を有効にします(Compute、Filestore、Cloud Storage、Service Usage)。
  • gcloud auth application-default login で認証します。
  • クイックスタートガイドを選択します(例: Deploy an HPC cluster with Slurm または Create a self-managed Slurm cluster with an A4 VM)。
  • 3 ステップの create → deploy → destroy サイクルに従います。

ジョブ送信

  • gcluster job submit は、Kueue/JobSet が有効な GKE クラスタで動作します。
  • プリビルドコンテナイメージとオンザフライビルド(--base-image、--build-context)の両方をサポートします。
  • デフォルトのプロジェクト/クラスタ/ロケーションの設定、ジョブの一覧表示、ログの表示、ジョブのキャンセルに役立つヘルパーを提供します。

高度な機能

  • 大規模な AI ワークロード向けの動的 TPU スライシング、Pathways 分散トレーニングオーケストレーション、GKE Node Auto-Provisioning フラグ。

開発

  • リンティングに pre-commit、TFLint、ShellCheck を使用。
  • 貢献ガイドラインは CONTRIBUTING.md にあります。

結論 – Google Cloud Cluster Toolkit は、Terraform ベースのクラスタプロビジョニングの複雑さを抽象化し、Google Cloud 上でのインフラストラクチャと AI ジョブ管理の両方に統一された CLI を提供する、本番環境対応のオープンソースフレームワークです。

関連

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