2 つの A4 VM を使用してフルマネージド Slurm クラスタを作成する
このクイックスタートでは、Cluster Director を使用して Slurm クラスタを作成し、接続する方法について説明します。作成するクラスタは、2 つの A4 仮想マシン(VM)インスタンスを使用します。これらのインスタンスは、 Slurm クラスタが大規模なモデル トレーニングと推論ワークロードを効率的に処理できるように設計されています。
Cluster Director は、クラスタのデプロイを簡素化して自動化するマネージド サービスです。運用上の オーバーヘッドを削減し、ワークロードの実行に集中できます。クラスタのデプロイと管理をより詳細に制御する場合は、 Cluster Toolkit を使用して Slurm クラスタを作成します。
このタスクを Google Cloud コンソールで直接行う際の順を追ったガイダンスについては、「ガイドを表示」をクリックしてください。
始める前に
- アカウントにログインします Google Cloud を初めて使用する場合は、 アカウントを作成して、実際のシナリオで Google プロダクトのパフォーマンスを評価してください。 Google Cloud新規のお客様には、ワークロードの実行、テスト、デプロイができる無料クレジット $300 分を差し上げます。
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Hypercompute Cluster API、Compute Engine API、Filestore API、Google Cloud Managed Lustre API、Cloud Logging API、Cloud Monitoring API を有効にします。
API を有効にする- プロジェクトと Compute Engine のデフォルト サービス アカウントに次の Identity and Access Management(IAM)ロールがあることを確認します。
-
このクイックスタートを完了するために必要な権限を取得するには、プロジェクトに対する次の IAM ロールを付与するよう管理者に依頼してください。
-
クラスタを作成して管理する:
Cluster Director 編集者 (
roles/hypercomputecluster.editor) -
クラスタ内の VM を作成して管理する:
Compute インスタンス管理者(v1) (
roles/compute.instanceAdmin.v1) -
クラスタ内のログインノードに接続するには:
- Compute OS Login (
roles/compute.osLogin) - IAP で保護されたトンネル ユーザー (
roles/iap.tunnelResourceAccessor)
- Compute OS Login (
ロールの付与については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。
-
クラスタを作成して管理する:
Cluster Director 編集者 (
-
このクイックスタートを完了するために必要な権限を取得するには、Compute Engine のデフォルト サービス アカウントに次の IAM ロールを付与するよう管理者に依頼してください。
-
クラスタを作成する:
サービス アカウント ユーザー (
roles/iam.serviceAccountUser) -
クラスタ内のリソースを管理するには:
- ログ書き込み (
roles/logging.logWriter) - モニタリング指標の書き込み (
roles/monitoring.metricWriter) - ストレージ オブジェクト閲覧者 (
roles/storage.objectViewer)
- ログ書き込み (
-
クラスタを作成する:
サービス アカウント ユーザー (
-
- プロジェクトが存在する組織に信頼できるイメージのポリシー
(
constraints/compute.trustedImageProjects)がある場合は、許可されたプロジェクトのリストにclusterdirector-public-imagesプロジェクトが含まれていることを確認します。組織の信頼できるイメージのポリシーを表示するには、 イメージ アクセスの制限を設定する をご覧ください。
費用
このクイックスタートでは、次の課金対象 Google Cloud リソースを使用します。
Compute Engine:
A4 マシンタイプの VM 2 台
Slurm ログインノード用の永続ディスク ボリューム 1 つ(100 GB)
A4 VM 用の Google Cloud Hyperdisk Balanced ボリューム 1 つ(100 GB)
Filestore: 10 TiB(10,240 GiB)の Filestore インスタンス
Slurm クラスタを作成する
Slurm クラスタを作成する手順は次のとおりです。
コンソールで、[Cluster Director] ページに移動します。 Google Cloud
[ Create a cluster] をクリックします。
表示されるダイアログで、[構成の詳細手順] をクリックします。[クラスタを作成] ページが表示されます。
[クラスタ名] フィールドに「
cluster001」と入力します。[コンピューティング] セクションで、[リソースを構成] をクリックします。表示された [リソース構成を追加] ペインで、次の操作を行います。
[GPU のタイプ] リストで、[NVIDIA B200 180 GB] を選択します。
[インスタンス数] フィールドに「
2」と入力します。[使用オプション] セクションで、リソースの取得に使用する使用オプションを選択します。
[ロケーション] セクションで、A4 VM を作成するリージョン とゾーン を指定します。または、VM の作成に使用する予約が存在する場所を指定します。
[完了] をクリックします。
ナビゲーション メニューで、[ストレージ] をクリックします。
[**ストレージ**] セクションで、 [**ストレージ構成を編集**] をクリックします。表示された [ストレージ構成を追加] ペインで、次の操作を行います。
[容量] セクションで、[10 ~ 100 TiB、2.5 TiB 単位で指定] を選択します。
[完了] をクリックします。
[作成] をクリックします。[クラスタ] ページが表示されます。
クラスタの作成が完了するまでに時間がかかることがあります。完了時間は、リクエストした VM の数と VM のゾーンのリソースの状況によって異なります。リクエストしたリソースが使用できない場合、リソースが使用可能になるまで Cluster Director は作成リクエストを維持します。
クラスタ作成リクエストを表示する
クラスタ作成リクエストを確認する手順は次のとおりです。
[クラスタ] テーブルの [名前] 列で、[cluster001] をクリックします。クラスタの詳細を示すページが表示され、[詳細] タブが選択されます。
[コンピューティング] セクションで、[ステータス] 行を見つけます。AI Hypercomputer が値を [Ready] に設定したら、次のセクションに進みます。
SSH を使用してクラスタに接続する
SSH を使用してクラスタに接続する手順は次のとおりです。
[ノード] タブをクリックします。
[ログインノード] テーブルで、[cluster001-login-001] ノードを含む行を見つけます。その行の [接続] 列で、[SSH] ボタンをクリックします。[ブラウザ内 SSH] ウィンドウが表示されます。
プロンプトが表示されたら、[承認] をクリックします。クラスタへの接続が完了するまでに時間がかかることがあります。ターミナルの準備ができたら、次のセクションに進みます。
サンプルジョブを実行する
[ブラウザ内 SSH] ウィンドウで、次の操作を行います。
Slurm が実行されていることを確認するには、次のコマンドを実行します。
sinfoノードのホスト名を返すテストジョブを送信するには、次のコマンドを実行します。
srun hostname30 秒間スリープするバッチジョブを送信するには、次のコマンドを実行します。
sbatch --wrap="sleep 30"キュー内のジョブのステータスを確認するには、次のコマンドを実行します。
squeueジョブのアカウンティング データを表示するには、次のコマンドを実行します。
sacct
Slurm クラスタを作成して、それに接続し、サンプルジョブを実行しました。AI Hypercomputer が A4 VM を作成していない場合は、クラスタが VM を作成するまで待つか、クラスタを変更して VM を追加または削除するか、クラスタを削除して不要な課金が発生しないようにします。
クリーンアップ
このページで使用したリソースについて、 Google Cloud アカウントに課金されないようにするには、 次の手順を実施します。
プロジェクトの削除
課金をなくす最も簡単な方法は、チュートリアル用に作成したプロジェクトを削除することです。
プロジェクトを削除するには:
- コンソールで [**リソースの管理**] ページに移動します。 Google Cloud
- プロジェクト リストで、削除するプロジェクトを選択し、[削除] をクリックします。
- ダイアログでプロジェクト ID を入力し、 [Shut down] をクリックしてプロジェクトを削除します。
クラスタの削除
このクイックスタートで作成したクラスタとその関連リソースを削除する手順は次のとおりです。
クラスタの詳細が表示されているページで、 [Delete] をクリックします。
表示されたダイアログに「
cluster001」と入力し、[削除] をクリックして確定します。