クラスタを作成

Gemini Enterprise Agent Platform トレーニング クラスタに関心をお持ちの場合は、営業担当者にお問い合わせください。

このページでは、トレーニング クラスタを作成して管理するための API ドリブン方式について説明します。ログインノード、A4 などの高性能 GPU パーティション、Slurm オーケストレーターの設定など、クラスタの完全な構成を JSON ファイル内で定義する方法について説明します。また、curl と REST API 呼び出しを使用してこの構成をデプロイし、GET、LIST、UPDATE、DELETE オペレーションでクラスタを作成してライフサイクルを管理する方法の説明も含まれています。

クラスタ構成を定義する

トレーニング クラスタの完全な構成を定義する JSON ファイルを作成します。

組織のポリシーでコンピューティング インスタンスのパブリック IP アドレスが禁止されている場合は、enable_public_ips: false パラメータを使用してトレーニング クラスタをデプロイし、インターネットの下り(外向き)に Cloud NAT を使用します。

トレーニング クラスタをプロビジョニングする最初の手順は、JSON ファイルで完全な構成を定義することです。このファイルはクラスタのブループリントとして機能し、クラスタの名前やネットワーク設定からログインノードとワーカーノードのハードウェアまで、すべてを指定します。

次のセクションでは、さまざまな一般的なユースケースの実用的なテンプレートとして機能する、完全な JSON 構成ファイルをいくつか示します。このリストを参照して、ニーズに最も近い例を見つけ、出発点として使用してください。

各例の後に、その特定の構成で使用される主なパラメータについて詳しく説明します。

Filestore のみを使用した GPU

これが標準の構成です。クラスタの /home ディレクトリとして機能する Filestore インスタンスを提供します。これは、一般的な用途やユーザーデータの保存に適しています。

次の例は、gpu-filestore.json の内容を示しています。この仕様により、GPU パーティションを含むクラスタが作成されます。これをテンプレートとして使用し、ニーズに合わせて machineType や nodeCount などの値を変更できます。

パラメータの一覧については、パラメータ リファレンスをご覧ください。

 {
  "display_name": "DISPLAY_NAME",
  "network": {
    "network": "projects/PROJECT_ID/global/networks/NETWORK",
    "subnetwork": "projects/PROJECT_ID/regions/REGION/subnetworks/SUBNETWORK"
  },
  "node_pools": [
    {
      "id": "login",
      "machine_spec": {
        "machine_type": "n2-standard-8"
      },
      "scaling_spec": {
        "min_node_count": MIN_NODE_COUNT,
        "max_node_count": MAX_NODE_COUNT
      },
      "enable_public_ips": true,
      "zone": "ZONE",
      "boot_disk": {
        "boot_disk_type": "pd-standard",
        "boot_disk_size_gb": 200
      },
      "labels": { "example-key": "example-value" }
    },
    {
      "id": "a4",
      "machine_spec": {
        "machine_type": "a4-highgpu-8g",
        "accelerator_type": "NVIDIA_B200",
        "accelerator_count": 8,
        "reservation_affinity": {
          "reservationAffinityType": "RESERVATION_AFFINITY_TYPE",
          "key": "compute.googleapis.com/reservation-name",
          "values": [
            "projects/PROJECT_ID/zones/ZONE/reservations/RESERVATION_NAME"
          ]
        }
      },
      "provisioning_model": "RESERVATION",
      "scaling_spec": {
        "min_node_count": MIN_NODE_COUNT,
        "max_node_count": MAX_NODE_COUNT
      },
      "enable_public_ips": true,
      "zone": "ZONE",
      "boot_disk": {
        "boot_disk_type": "hyperdisk-balanced",
        "boot_disk_size_gb": 200
      },
      "labels": { "example-key": "example-value" }
    }
  ],
  "orchestrator_spec": {
    "slurm_spec": {
      "home_directory_storage": "projects/PROJECT_ID/locations/ZONE/instances/FILESTORE",
      "partitions": [
        {
          "id": "a4",
          "node_pool_ids": [
            "a4"
          ]
        }
      ],
      "login_node_pool_id": "login"
    }
  }
}

Filestore と Managed Lustre を使用した GPU

この高度な構成には、高パフォーマンスの Lustre ファイル システムに加えて、標準の Filestore インスタンスが含まれています。トレーニング ジョブで大規模なデータセットへの高スループット アクセスが必要な場合は、このオプションを選択します。

パラメータの一覧については、パラメータ リファレンスをご覧ください。

{
  "display_name": "DISPLAY_NAME",
  "network": {
    "network": "projects/PROJECT_ID/global/networks/NETWORK",
    "subnetwork": "projects/PROJECT_ID/regions/REGION/subnetworks/SUBNETWORK"
  },
  "node_pools": [
    {
      "id": "login",
      "machine_spec": {
        "machine_type": "n2-standard-8"
      },
      "scaling_spec": {
        "min_node_count": MIN_NODE_COUNT,
        "max_node_count": MAX_NODE_COUNT
      },
      "enable_public_ips": true,
      "zone": "ZONE",
      "boot_disk": {
        "boot_disk_type": "pd-standard",
        "boot_disk_size_gb": 200
      },
      "lustres": [
        "projects/PROJECT_ID/locations/ZONE/instances/LUSTRE"
      ]
    },
    {
      "id": "a4",
      "machine_spec": {
        "machine_type": "a4-highgpu-8g",
        "accelerator_type": "NVIDIA_B200",
        "accelerator_count": 8,
        "reservation_affinity": {
          "reservationAffinityType": "RESERVATION_AFFINITY_TYPE",
          "key": "compute.googleapis.com/reservation-name",
          "values": [
            "projects/PROJECT_ID/zones/ZONE/reservations/RESERVATION_NAME"
          ]
        }
      },
      "provisioning_model": "RESERVATION",
      "scaling_spec": {
        "min_node_count": MIN_NODE_COUNT,
        "max_node_count": MAX_NODE_COUNT
      },
      "enable_public_ips": true,
      "zone": "ZONE",
      "boot_disk": {
        "boot_disk_type": "hyperdisk-balanced",
        "boot_disk_size_gb": 200
      },
      "lustres": [
        "projects/PROJECT_ID/locations/ZONE/instances/LUSTRE"
      ]
    }
  ],
  "orchestrator_spec": {
    "slurm_spec": {
      "home_directory_storage": "projects/PROJECT_ID/locations/ZONE/instances/FILESTORE",
      "partitions": [
        {
          "id": "a4",
          "node_pool_ids": [
            "a4"
          ]
        }
      ],
      "login_node_pool_id": "login"
    }
  }
}
  

起動スクリプトを使用した GPU

この例では、ノードプールにカスタム スクリプトを追加する方法を示します。このスクリプトは、起動時にそのプール内のすべてのノードで実行されます。これを構成するには、一般的な設定に加えて、ノードプールの定義に関連するフィールドを追加します。パラメータとその説明の一覧については、パラメータ リファレンスをご覧ください。

{
  "display_name": "DISPLAY_NAME",
  "network": {
    "network": "projects/PROJECT_ID/global/networks/NETWORK",
    "subnetwork": "projects/PROJECT_ID/regions/REGION/subnetworks/SUBNETWORK"
  },
  "node_pools": [
    {
      "id": "login",
      "machine_spec": {
        "machine_type": "n2-standard-8"
      },
      "scaling_spec": {
        "min_node_count": MIN_NODE_COUNT,
        "max_node_count": MAX_NODE_COUNT
      },
      "enable_public_ips": true,
      "zone": "ZONE",
      "boot_disk": {
        "boot_disk_type": "pd-standard",
        "boot_disk_size_gb": 200
      },
      "startup_script" : "#Example script\nsudo mkdir -p /data\necho 'Script Finished'\n"
    },
    {
      "id": "a4",
      "machine_spec": {
        "machine_type": "a4-highgpu-8g",
        "accelerator_type": "NVIDIA_B200",
        "accelerator_count": 8,
        "reservation_affinity": {
          "reservationAffinityType": "RESERVATION_AFFINITY_TYPE",
          "key": "compute.googleapis.com/reservation-name",
          "values": [
            "projects/PROJECT_ID/zones/ZONE/reservations/RESERVATION_NAME"
          ]
        }
      },
      "provisioning_model": "PROVISIONING_MODEL",
      "scaling_spec": {
        "min_node_count": MIN_NODE_COUNT,
        "max_node_count": MAX_NODE_COUNT
      },
      "enable_public_ips": true,
      "zone": "ZONE",
      "boot_disk": {
        "boot_disk_type": "hyperdisk-balanced",
        "boot_disk_size_gb": 200
      },
      "startup_script" : "#Example script\nsudo mkdir -p /data\necho 'Script Finished'\n"
    }
  ],
  "orchestrator_spec": {
    "slurm_spec": {
      "home_directory_storage": "projects/PROJECT_ID/locations/ZONE/instances/FILESTORE",
      "partitions": [
        {
          "id": "a4",
          "node_pool_ids": [
            "a4"
          ]
        }
      ],
      "login_node_pool_id": "login"
    }
  }
}

CPU のみのクラスタ

トレーニング クラスタ環境をプロビジョニングするには、まず JSON ファイルで完全な構成を定義する必要があります。このファイルはクラスタのブループリントとして機能し、クラスタの名前やネットワーク設定からログインノードとワーカーノードのハードウェアまで、すべてを指定します。

パラメータの一覧については、パラメータ リファレンスをご覧ください。

{
  "display_name": "DISPLAY_NAME",
  "network": {
    "network": "projects/PROJECT_ID/global/networks/NETWORK",
    "subnetwork": "projects/PROJECT_ID/regions/REGION/subnetworks/SUBNETWORK"
  },
  "node_pools": [
    {
      "id": "cpu",
      "machine_spec": {
        "machine_type": "n2-standard-8"
      },
      "scaling_spec": {
        "min_node_count": MIN_NODE_COUNT,
        "max_node_count": MAX_NODE_COUNT
      },
      "zone": "ZONE",
      "enable_public_ips": true,
      "boot_disk": {
        "boot_disk_type": "pd-standard",
        "boot_disk_size_gb": 120
      }
    },
    {
      "id": "login",
      "machine_spec": {
        "machine_type": "n2-standard-8"
      },
      "scaling_spec": {
        "min_node_count": MIN_NODE_COUNT,
        "max_node_count": MAX_NODE_COUNT
      },
      "zone": "ZONE",
      "enable_public_ips": true,
      "boot_disk": {
        "boot_disk_type": "pd-standard",
        "boot_disk_size_gb": 120
      }
    }
  ],
  "orchestrator_spec": {
    "slurm_spec": {
      "home_directory_storage": "projects/PROJECT_ID/locations/ZONE/instances/FILESTORE",
      "partitions": [
        {
          "id": "cpu",
          "node_pool_ids": [
            "cpu"
          ]
        }
      ],
      "login_node_pool_id": "login"
    }
  }
}

高度な Slurm 構成

この例では、名前で slurm.conf パラメータを設定し、自動ジョブ設定とクリーンアップ用のプロローグ スクリプトとエピローグ スクリプトを実行することで、Slurm をきめ細かく制御します。パラメータは、クラスタ全体、単一のパーティション、または単一のノードプールに対して設定できます。

slurm.conf レコードごとに 1 つずつ、3 つの構成マップがあります。

  • クラスタ全体の設定の Slurm 仕様の config
  • パーティションの config
  • ノードプールの node_sets エントリ

パラメータ名、値、拒否されるパラメータのルールについては、Slurm 構成マップをご覧ください。

作成時にこれらの値を設定する必要はありません。3 つのマップはすべて、ノードを再起動したり、キューに登録されたジョブを中断したりすることなく、実行中のクラスタで変更できます。Slurm 構成設定を更新するをご覧ください。

{
  "display_name": "DISPLAY_NAME",
  "network": {
    "network": "projects/PROJECT_ID/global/networks/NETWORK",
    "subnetwork": "projects/PROJECT_ID/regions/REGION/subnetworks/SUBNETWORK"
  },
  "node_pools": [
    {
      "id": "cpu",
      "machine_spec": {
        "machine_type": "n2-standard-8"
      },
      "scaling_spec": {
        "min_node_count": MIN_NODE_COUNT,
        "max_node_count": MAX_NODE_COUNT
      },
      "zone": "ZONE",
      "enable_public_ips": true,
      "boot_disk": {
        "boot_disk_type": "pd-standard",
        "boot_disk_size_gb": 120
      }
    },
    {
      "id": "login",
      "machine_spec": {
        "machine_type": "n2-standard-8"
      },
      "scaling_spec": {
        "min_node_count": MIN_NODE_COUNT,
        "max_node_count": MAX_NODE_COUNT
      },
      "zone": "ZONE",
      "enable_public_ips": true,
      "boot_disk": {
        "boot_disk_type": "pd-standard",
        "boot_disk_size_gb": 120
      }
    }
  ],
  "orchestrator_spec": {
    "slurm_spec": {
      "home_directory_storage": "projects/PROJECT_ID/locations/ZONE/instances/FILESTORE",
      "config": {
        "PriorityType": "priority/multifactor",
        "PriorityWeightAge": "1000",
        "PriorityWeightFairshare": "10000",
        "PreemptType": "preempt/partition_prio",
        "PreemptMode": "SUSPEND,GANG",
        "SchedulerParameters": "bf_continue,bf_window=1440,bf_resolution=600",
        "AccountingStorageEnforce": "limits,qos"
      },
      "prolog_bash_scripts": [
        "#!/bin/bash\necho 'Prolog script running'"
      ],
      "epilog_bash_scripts": [
        "#!/bin/bash\necho 'Epilog script running'"
      ],
      "partitions": [
        {
          "id": "cpu",
          "node_pool_ids": [
            "cpu"
          ],
          "config": {
            "MaxTime": "4-00:00:00",
            "DefMemPerCPU": "4096",
            "PriorityTier": "20"
          }
        }
      ],
      "node_sets": [
        {
          "node_pool_id": "cpu",
          "config": {
            "Weight": "10",
            "Features": "cpu,spot"
          }
        }
      ],
      "login_node_pool_id": "login"
    }
  }
}

クラスタ スコープのマップは、多要素の優先度、パーティションの優先度のプリエンプション、SchedulerParameters を設定します。bf_continue という用語は複合形式を示します。裸の用語はフラグをオンにし、用語はカンマで区切られます。パーティション マップは、cpu パーティションのジョブの実行時間とデフォルトのメモリのみをバインドし、node_sets エントリラベルは、ジョブが --constraint で選択できるようにノードをプールします。

クラスタが JSON ファイルで定義されたら、次の REST API コマンドを使用してクラスタをデプロイして管理します。この例では、API エンドポイントを操作するための便利な認証済みショートカットである gcurl エイリアスを使用します。これらのコマンドは、クラスタの初回デプロイから、クラスタの更新、ステータスの取得、すべてのクラスタのリスト表示、最終的なクラスタの削除まで、ライフサイクル全体をカバーしています。

認証

alias gcurl='curl -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json"'

JSON ファイルを作成する

JSON ファイル(例: @cpu-cluster.json)を作成して、モデル トレーニング クラスタの構成を指定します。

クラスタをデプロイする

JSON 構成ファイルを作成したら、REST API を使用してクラスタをデプロイできます。

環境変数を設定する

コマンドを実行する前に、次の環境変数を設定します。これにより、API コマンドがクリーンになり、管理が容易になります。

  • PROJECT_ID: クラスタが作成される Cloud de Confiance by S3NS プロジェクト ID。
  • REGION: クラスタとそのリソースの Cloud de Confiance by S3NS リージョン。
  • ZONE: クラスタ リソースがプロビジョニングされる Cloud de Confiance by S3NS ゾーン。
  • CLUSTER_ID: トレーニング クラスタの固有識別子。関連リソースの名前付けの接頭辞としても使用されます。

create コマンドを実行する

次の gcurl コマンドを実行します。この関数は、JSON ファイル(この例では cpu-cluster.json)をリクエスト本文として使用し、設定した環境変数を使用して API エンドポイントとクエリ パラメータを構築します。

  gcurl -X POST -d @cpu-cluster.json https://REGION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/REGION/modelDevelopmentClusters?model_development_cluster_id=CLUSTER_ID
    

デプロイが開始されると、オペレーション ID が生成されます。この ID をコピーしてください。次のステップでクラスタを検証するために必要になります。

  gcurl -X POST -d @cpu-cluster.json https://us-central1-aiplatform.googleapis.com/v1beta1/projects/managedtraining-project/locations/us-central1/modelDevelopmentClusters?model_development_cluster_id=training
  {
      "name": "projects/1059558423163/locations/us-central1/operations/2995239222190800896",
      "metadata": {
      "@type": "type.googleapis.com/google.cloud.aiplatform.v1beta1.CreateModelDevelopmentClusterOperationMetadata",
      "genericMetadata": {
        "createTime": "2025-10-24T14:16:59.233332Z",
        "updateTime": "2025-10-24T14:16:59.233332Z"
      },
      "progressMessage": "Create Model Development Cluster request received, provisioning..."
  }
    

クラスタのデプロイを検証する

クラスタのデプロイ時に提供されたオペレーション ID を使用して、デプロイの進行状況を追跡します。たとえば、前述の例では 2995239222190800896 がオペレーション ID です。

    gcurl https://REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/operations/OPERATION_ID
    

まとめ

gcurl POST コマンドでクラスタ構成を送信すると、クラスタのプロビジョニングが開始されます。これは非同期の長時間実行オペレーションです。API は、Operation ID を含むレスポンスをすぐに返します。この ID は、次の手順でデプロイの進行状況をモニタリングし、クラスタが正常に作成されたことを確認し、ライフサイクルを管理するために使用するため、保存することが重要です。

パラメータ リファレンス

次のリストは、構成例で使用されるすべてのパラメータの説明です。パラメータは、構成するリソースに基づいて論理グループに整理されます。

全般設定とネットワーク設定

  • DISPLAY_NAME: トレーニング クラスタの一意の名前。文字列には小文字の英数字のみを使用できます。先頭は英字にする必要があり、10 文字に制限されています。
  • PROJECT_ID: 実際の Cloud de Confiance by S3NS プロジェクト ID。
  • REGION: クラスタとそのリソースが配置される Cloud de Confiance by S3NS リージョン。
  • NETWORK: クラスタのリソースに使用する Virtual Private Cloud ネットワーク。
  • ZONE: クラスタとそのリソースの Cloud de Confiance by S3NS ゾーン。
  • SUBNETWORK: クラスタのリソースに使用するサブネットワーク。

ノードプールの構成

次のパラメータは、ログインノードとワーカーノードの両方のノードプールを定義するために使用されます。

一般的なノードプールの設定

  • ID: クラスタ内のノードプールの固有識別子(「login」、「a4」、「cpu」など)。
  • PROVISIONING_MODEL: ワーカーノードのプロビジョニング モデル(ON_DEMAND、SPOT、RESERVATION、FLEX_START など)。
  • MACHINE_TYPE: ワーカーノードのマシンタイプ(a3-highgpu-8g、a3-megagpu-8g、a3-ultragpu-8g、a4-highgpu-8g など)。サポートされているマシンタイプの完全なリストについては、コンピューティング リソースをご覧ください。
  • MIN_NODE_COUNT: MIN_NODE_COUNT は MAX_NODE_COUNT と同じである必要があります。
  • MAX_NODE_COUNT: ログイン ノードプールの場合、MAX_NODE_COUNT は MIN_NODE_COUNT と同じである必要があります。
  • ENABLE_PUBLIC_IPS: ログインノードにパブリック IP アドレスがあるかどうかを判断するブール値(true または false)。
  • BOOT_DISK_TYPE: ログインノードのブートディスク タイプ(pd-standard、pd-ssd など)。
  • BOOT_DISK_SIZE_GB: ログインノードのブートディスクのサイズ(GB)。
  • LABELS: ノードプールにラベルを付ける Key-Value ペアのセット。
  • NODE_IMAGE(node_pools オブジェクト内の node_image に対応): ノードプールのノードが起動する VM イメージ。完全なイメージまたはイメージ ファミリーのリソースパス(例: projects/IMAGE_PROJECT/global/images/family/IMAGE_FAMILY )。省略すると、ノードプールはマシンタイプの現在のデフォルト イメージを使用します。このイメージは時間の経過とともに変化します。特定のイメージでノードプールを維持するように設定します。ノードプールのイメージを変更すると、ノードが再作成されます。

追加の保存容量の設定

  • FILESTORES(node_pools オブジェクト内の filestores に対応): 共有ファイル アクセス用にノードプールにマウントする既存の Filestore インスタンスのリスト。
  • LUSTRES(node_pools オブジェクト内の lustres に対応): 高パフォーマンスのファイル アクセス用にノードプールにマウントする既存の Lustre インスタンスのリスト。

ワーカー固有の設定

  • ACCELERATOR_TYPE: ワーカーノードに接続する対応する GPU アクセラレータ。サポートされている値は次のとおりです。
    • NVIDIA_H100_80GB
    • NVIDIA_H100_MEGA_80GB
    • NVIDIA_H200_141GB
    • NVIDIA_B200
  • ACCELERATOR_COUNT: 各ワーカーノードに接続するアクセラレータの数。
  • RESERVATION_AFFINITY_TYPE(machine_spec.reservation_affinity.reservationAffinityType に対応): ノードプールの予約アフィニティ。このパラメータは SPECIFIC_RESERVATION(サポートされている唯一の値)にする必要があります。SPECIFIC_RESERVATION を使用する場合は、machine_spec.reservation_affinity.values で予約を指定する必要があります。
  • RESERVATION_NAME: ノードプールに使用する予約の名前。これは、machine_spec.reservation_affinity.values で指定された完全な予約リソース名(projects/PROJECT_ID/zones/ZONE/reservations/RESERVATION_NAME など)で使用されます。RESERVATION_AFFINITY_TYPE が SPECIFIC_RESERVATION の場合は予約が必要です。

オーケストレーターとストレージの構成

これらのフィールドは、JSON ファイルの orchestrator_spec.slurm_spec ブロック内で定義されます。

コア Slurm とストレージの設定

  • HOME_DIRECTORY_STORAGE(home_directory_storage に対応): /home ディレクトリとしてマウントされる既存の Filestore インスタンスの完全なリソース名。
  • LOGIN_NODE_POOL_ID(login_node_pool_id に対応): ログインノードに使用するノードプールの ID。
  • partitions: パーティション オブジェクトのリスト。各オブジェクトには id と node_pool_ids のリストが必要です。
  • default_partition_id(省略可): パーティションが明示的に指定されていない場合(たとえば、--partition フラグなしで sbatch を実行する場合)に Slurm ジョブの実行に使用されるパーティションの id。設定しない場合、パーティション リストの最初のパーティションがデフォルトになります。したがって、リストの順序を変更すると、デフォルトのパーティションが変更されます。

Slurm の詳細設定

  • prolog_bash_scripts: 文字列のリスト。各文字列には、ジョブの開始前に実行される Bash スクリプトの完全な内容が含まれています。
  • epilog_bash_scripts: 文字列のリスト。各文字列には、ジョブの完了後に実行される Bash スクリプトの完全な内容が含まれています。
  • config、partitions[].config、node_sets: 名前で設定された Slurm パラメータ。Slurm 構成マップをご覧ください。
  • scheduling、accounting: 廃止されました。これらの 2 つのオブジェクトは、優先度、プリエンプション、アカウンティングの固定セットのパラメータを公開します。これらのパラメータは、クラスタ スコープの config マップで名前で設定できます(priority_type は "PriorityType"、preempt_mode は "PreemptMode" など)。これらを使用するクラスタでは引き続き機能しますが、新しいクラスタでは config を使用する必要があります。 は、このサブセットよりもはるかに多くの slurm.conf パラメータをサポートしています。

Slurm 構成マップ

Slurm パラメータは、3 つのマップで名前で設定されます。各 slurm.conf レコードに 1 つのマップがあります。

  • config: クラスタ スコープの設定。グローバル Key=Value 行として記述されます。
  • partitions[].config: 1 つのパーティションの設定。そのパーティションの PartitionName= 行に追加のペアとして記述されます。
  • node_sets: オブジェクトのリスト。各オブジェクトには node_pool_id と config マップがあります。設定は、そのノードプールのノードの NodeName= 行に追加のペアとして書き込まれます。ノードプールごとに最大 1 つのエントリ。プールはクラスタのコンピューティング プールである必要があり、ログイン プールであってはなりません。

3 つすべてで、キーは SchedMD ドキュメントに記載されている Slurm パラメータ名です。大文字と小文字は区別されず、アンダースコアは無視されます。したがって、DefMemPerCPU、defmempercpu、def_mem_per_cpu はすべて同じパラメータを意味します。値は、slurm.conf が書き込む方法で書き込まれます。これには、"PreemptMode": "SUSPEND,GANG" などのカンマ区切りリストや、"SchedulerParameters": "bf_window=1440,bf_resolution=600" などの複合値が含まれます。

各マップは、レコードに対して有効な slurm.conf パラメータのサブセットをサポートします。すべてのパラメータがサポートされるわけではありません。サポートされていないパラメータが必要な場合は、Gemini Enterprise Agent Platform トレーニング クラスタの担当者にお問い合わせください。

設定したスコープでサポートされていないパラメータ、またはそのパラメータに対して有効でない値は、リクエストの作成時に拒否され、エラーでパラメータの名前が示されます。何もサイレントにドロップされません。特定の理由により、一部のパラメータは拒否されます。

  • このサービスはノードのヘルスチェックとジョブの再キューイングを管理するため、HealthCheckProgram、HealthCheckInterval、HealthCheckNodeState、RequeueExit を設定することはできません。
  • 代わりに prolog_bash_scripts と epilog_bash_scripts を通じて設定されます。PrologEpilog
  • StorageHost や PurgeJobAfter などの slurmdbd.conf パラメータは構成できません。アカウンティング データベースはサービスによって管理されます。
  • パーティション スコープでは、Default は拒否されます。デフォルトのパーティションはクラスタ全体の選択であり、default_partition_id で設定されます。

ランタイムの構成

これらのフィールドは、JSON ファイルの runtime_spec ブロック内で定義されます。

  • service_account: クラスタでワークロードを実行するときにクラスタが使用するデフォルトのサービス アカウント。指定しない場合、デフォルトの Compute Engine サービス アカウントが使用されます。このフィールドは、クラスタの作成後に更新できません。

次のステップ

アクティブな永続トレーニング クラスタを使用して、ML ワークロードを実行します。