Compute Engine を使用して Cloud TPU VM インスタンスを作成する
このドキュメントでは、Compute Engine の gcloud compute instances create コマンドを使用して単一の TPU VM を作成する方法について説明します。インスタンス テンプレートを指定して TPU VM インスタンスを作成することもできます
。詳細については、インスタンス テンプレートから VM を作成するをご覧ください。
前提条件
次の前提条件を満たしていることを確認してください。
TPU の Google Cloud プロジェクトを設定するの説明に従って、TPU の Google Cloud プロジェクトを作成します。
TPU VM インスタンスを作成する
TPU VM インスタンスの作成に使用するパラメータは、オンデマンド、Spot、予約バインド、Flex Start のいずれの消費オプションを使用しているかによって異なります。詳細については、 TPU リソースを計画する をご覧ください。
オンデマンド TPU VM インスタンスを作成する
オンデマンド TPU VM インスタンスを作成するには、
gcloud compute instances create コマンドを使用します。
gcloud
gcloud compute instances create TPU_NAME \
--machine-type=MACHINE_TYPE \
--image-family=IMAGE_FAMILY \
--image-project=IMAGE_PROJECT \
--zone=ZONE \
--maintenance-policy=TERMINATE
REST
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-d '{
"name": "TPU_NAME",
"machineType": "zones/ZONE/machineTypes/MACHINE_TYPE",
"disks": [
{
"boot": true,
"initializeParams": {
"sourceImage": "projects/IMAGE_PROJECT/global/images/family/IMAGE_FAMILY"
}
}
],
"scheduling": {
"onHostMaintenance": "TERMINATE"
},
"networkInterfaces": [
{
"network": "global/networks/default"
}
]
}' \
"https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances"
各プレースホルダを次のように置き換えます。
- PROJECT_ID: 実際の Google Cloud プロジェクト ID。
- TPU_NAME: TPU VM の名前。
- MACHINE_TYPE:TPU VM のマシンタイプ
(例:
ct6e-standard-8t)。 - IMAGE_FAMILY: TPU VM の OS イメージ ファミリー
。特定の OS バージョンをインストールする場合は、
--imageフラグを使用します。OS イメージの詳細については、OS イメージをご覧ください。 - IMAGE_PROJECT: OS イメージを含むプロジェクト。
TPU イメージの場合、これは
ubuntu-os-accelerator-imagesです。 - ZONE: TPU VM のゾーン
(
us-central1-bなど)。
TPU Spot VM インスタンスを作成する
TPU Spot VM インスタンスを作成するには、
gcloud compute instances create コマンド
と --provisioning-model=SPOT フラグを使用します。
gcloud
gcloud compute instances create TPU_NAME \
--machine-type=MACHINE_TYPE \
--image-family=IMAGE_FAMILY \
--image-project=IMAGE_PROJECT \
--zone=ZONE \
--provisioning-model=SPOT \
--instance-termination-action=DELETE \
--maintenance-policy=TERMINATE
REST
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-d '{
"name": "TPU_NAME",
"machineType": "zones/ZONE/machineTypes/MACHINE_TYPE",
"disks": [
{
"boot": true,
"initializeParams": {
"sourceImage": "projects/IMAGE_PROJECT/global/images/family/IMAGE_FAMILY"
}
}
],
"scheduling": {
"onHostMaintenance": "TERMINATE",
"provisioningModel": "SPOT",
"instanceTerminationAction": "DELETE"
},
"networkInterfaces": [
{
"network": "global/networks/default"
}
]
}' \
"https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances"
各プレースホルダを次のように置き換えます。
- PROJECT_ID: 実際の Google Cloud プロジェクト ID。
- TPU_NAME: TPU VM の名前。
- MACHINE_TYPE:TPU VM のマシンタイプ
(例:
ct6e-standard-8t)。 - IMAGE_FAMILY: TPU VM の OS イメージ ファミリー
。特定の OS バージョンをインストールする場合は、
--imageフラグを使用します。OS イメージの詳細については、OS イメージをご覧ください。 - IMAGE_PROJECT: OS イメージを含むプロジェクト。
TPU イメージの場合、これは
ubuntu-os-accelerator-imagesです。 - ZONE: TPU VM のゾーン
(
us-central1-bなど)。
予約を使用して TPU VM インスタンスを作成する
予約バインド __消費オプションを使用して TPU VM インスタンスを作成するには、gcloud compute instances create コマンドと --reservation-affinity=specific フラグおよび --reservation フラグを使用します。
gcloud
gcloud compute instances create TPU_NAME \
--machine-type=MACHINE_TYPE \
--image-family=IMAGE_FAMILY \
--image-project=IMAGE_PROJECT \
--zone=ZONE \
--provisioning-model=reservation-bound \
--reservation-affinity=specific \
--reservation=RESERVATION_NAME \
--instance-termination-action=DELETE \
--maintenance-policy=TERMINATE
REST
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-d '{
"name": "TPU_NAME",
"machineType": "zones/ZONE/machineTypes/MACHINE_TYPE",
"disks": [
{
"boot": true,
"initializeParams": {
"sourceImage": "projects/IMAGE_PROJECT/global/images/family/IMAGE_FAMILY"
}
}
],
"scheduling": {
"onHostMaintenance": "TERMINATE",
"provisioningModel": "RESERVATION_BOUND",
"instanceTerminationAction": "DELETE"
},
"networkInterfaces": [
{
"network": "global/networks/default"
}
],
"reservationAffinity": {
"consumeReservationType": "SPECIFIC_RESERVATION",
"key": "compute.googleapis.com/reservation-name",
"values": [
"RESERVATION_NAME"
]
}
}' \
"https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances"
各プレースホルダを次のように置き換えます。
- PROJECT_ID: 実際の Google Cloud プロジェクト ID。
- TPU_NAME: TPU VM の名前。
- MACHINE_TYPE:TPU VM のマシンタイプ
(例:
ct6e-standard-8t)。 - IMAGE_FAMILY: TPU VM の OS イメージ ファミリー
。特定の OS バージョンをインストールする場合は、
--imageフラグを使用します。OS イメージの詳細については、OS イメージをご覧ください。 - IMAGE_PROJECT: OS イメージを含むプロジェクト。
TPU イメージの場合、これは
ubuntu-os-accelerator-imagesです。 - ZONE: TPU VM のゾーン
(
us-central1-bなど)。 - RESERVATION_NAME: 予約の名前。
TPU Flex Start VM を作成する
TPU Flex Start VM インスタンスを作成するには、
gcloud compute instances create コマンド
と --provisioning-model=FLEX_START フラグを使用します。
gcloud
gcloud compute instances create TPU_NAME \
--machine-type=MACHINE_TYPE \
--image-family=IMAGE_FAMILY \
--image-project=IMAGE_PROJECT \
--zone=ZONE \
--provisioning-model=FLEX_START \
--max-run-duration=MAX_RUN_DURATION \
--request-valid-for-duration=VALID_DURATION \
--instance-termination-action=DELETE \
--maintenance-policy=TERMINATE
REST
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-d '{
"name": "TPU_NAME",
"machineType": "zones/ZONE/machineTypes/MACHINE_TYPE",
"disks": [
{
"boot": true,
"initializeParams": {
"sourceImage": "projects/IMAGE_PROJECT/global/images/family/IMAGE_FAMILY"
}
}
],
"params": {
"requestValidForDuration": {
"seconds": VALID_DURATION
}
},
"scheduling": {
"onHostMaintenance": "TERMINATE",
"provisioningModel": "FLEX_START",
"instanceTerminationAction": "DELETE",
"maxRunDuration": {
"seconds": MAX_RUN_DURATION
}
},
"networkInterfaces": [
{
"network": "global/networks/default"
}
]
}' \
"https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances"
各プレースホルダを次のように置き換えます。
- PROJECT_ID: 実際の Google Cloud プロジェクト ID。
- TPU_NAME: TPU VM の名前。
- MACHINE_TYPE:TPU VM のマシンタイプ
(例:
ct6e-standard-8t)。 - IMAGE_FAMILY: TPU VM の OS イメージ ファミリー
。特定の OS バージョンをインストールする場合は、
--imageフラグを使用します。OS イメージの詳細については、OS イメージをご覧ください。 - IMAGE_PROJECT: OS イメージを含むプロジェクト。
TPU イメージの場合、これは
ubuntu-os-accelerator-imagesです。 - ZONE: TPU VM のゾーン
(
us-central1-bなど)。 - MAX_RUN_DURATION:TPU VM の最大実行時間(
6hなど)。REST の場合は、秒単位で指定します(6 時間の場合は21600)。 - VALID_DURATION:リクエストが有効な最大期間。REST の場合は、秒単位で指定します(1 時間の場合は
3600)。 リクエストは有効です。
Compute Engine インスタンスの作成の詳細については、 Compute Engine インスタンスの作成と開始をご覧ください。
次のステップ
- 単一ホスト Cloud TPU スライスを使用して MIG を作成する方法を確認する。
- マルチホスト Cloud TPU スライスを使用して MIG を作成する方法を確認する。
- TPU VM を管理する方法を確認する。
- GKE の TPU について確認する。
- TPU で ML ワークロードを実行する方法を確認する(例: TPU で vLLM を使用して Qwen2-72B-Instruct を提供する)。