Crea una instancia de VM de Cloud TPU con Compute Engine

En este documento, se muestra cómo crear una sola VM de TPU con el comando gcloud compute instances create de Compute Engine. También puedes crear una instancia de TPU VM si especificas una plantilla de instancias. Para obtener más información, consulta Crea una VM a partir de una plantilla de instancias.

Requisitos previos

Completa los siguientes requisitos previos:

  1. Crea un Google Cloud proyecto para tus TPU como se describe en Configura un Google Cloud proyecto para las TPU.

  2. Determina tus requisitos de TPU como se describe en Planifica tus recursos de Cloud TPU.

Crea una instancia de VM de TPU

Los parámetros que usas para crear una instancia de VM de TPU dependen de la opción de consumo que uses: a pedido, Spot, vinculada a la reserva o de inicio flexible. Para obtener más información, consulta Planifica tus recursos de TPU .

Crea una instancia de VM de TPU a pedido

Para crear una instancia de VM de TPU a pedido, usa el gcloud compute instances create comando:

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"

Reemplaza los marcadores de posición que se indican más abajo:

  • PROJECT_ID: Es el ID de tu Google Cloud proyecto.
  • TPU_NAME: Es un nombre para tu VM de TPU.
  • MACHINE_TYPE: Es el tipo de máquina para la VM de TPU (por ejemplo, ct6e-standard-8t).
  • IMAGE_FAMILY: Es la familia de imágenes del SO para la VM de TPU. Si deseas instalar una versión específica del SO, usa la --image marca. Para obtener más información sobre las imágenes del SO, consulta Imágenes del SO.
  • IMAGE_PROJECT: Es el proyecto que contiene la imagen de SO. Para las imágenes de TPU, es ubuntu-os-accelerator-images.
  • ZONE: Es la zona de la VM de TPU (por ejemplo, us-central1-b).

Crea una instancia de VM Spot de la TPU

Para crear una instancia de VM Spot de la TPU, usa el gcloud compute instances create comando con la --provisioning-model=SPOT marca:

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"

Reemplaza los marcadores de posición que se indican más abajo:

  • PROJECT_ID: Es el ID de tu Google Cloud proyecto.
  • TPU_NAME: Es un nombre para tu VM de TPU.
  • MACHINE_TYPE: Es el tipo de máquina para la VM de TPU (por ejemplo, ct6e-standard-8t).
  • IMAGE_FAMILY: Es la familia de imágenes del SO para la VM de TPU. Si deseas instalar una versión específica del SO, usa la --image marca. Para obtener más información sobre las imágenes del SO, consulta Imágenes del SO.
  • IMAGE_PROJECT: Es el proyecto que contiene la imagen de SO. Para las imágenes de TPU, es ubuntu-os-accelerator-images.
  • ZONE: Es la zona de la VM de TPU (por ejemplo, us-central1-b).

Crea una instancia de VM de TPU con una reserva

Para crear una instancia de VM de TPU con la opción de consumo vinculada a la reserva, usa el gcloud compute instances create comando con las marcas --reservation-affinity=specific y --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"

Reemplaza los marcadores de posición que se indican más abajo:

  • PROJECT_ID: Es el ID de tu Google Cloud proyecto.
  • TPU_NAME: Es un nombre para tu VM de TPU.
  • MACHINE_TYPE: Es el tipo de máquina para la VM de TPU (por ejemplo, ct6e-standard-8t).
  • IMAGE_FAMILY: Es la familia de imágenes del SO para la VM de TPU. Si deseas instalar una versión específica del SO, usa la --image marca. Para obtener más información sobre las imágenes del SO, consulta Imágenes del SO.
  • IMAGE_PROJECT: Es el proyecto que contiene la imagen de SO. Para las imágenes de TPU, es ubuntu-os-accelerator-images.
  • ZONE: Es la zona de la VM de TPU (por ejemplo, us-central1-b).
  • RESERVATION_NAME: Es el nombre de tu reserva.

Crea una VM de TPU de inicio flexible

Para crear una instancia de VM de TPU de inicio flexible, usa el gcloud compute instances create comando con la --provisioning-model=FLEX_START marca:

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"

Reemplaza los marcadores de posición que se indican más abajo:

  • PROJECT_ID: Es el ID de tu Google Cloud proyecto.
  • TPU_NAME: Es un nombre para tu VM de TPU.
  • MACHINE_TYPE: Es el tipo de máquina para la VM de TPU (por ejemplo, ct6e-standard-8t).
  • IMAGE_FAMILY: Es la familia de imágenes del SO para la VM de TPU. Si deseas instalar una versión específica del SO, usa la --image marca. Para obtener más información sobre las imágenes del SO, consulta Imágenes del SO.
  • IMAGE_PROJECT: Es el proyecto que contiene la imagen de SO. Para las imágenes de TPU, es ubuntu-os-accelerator-images.
  • ZONE: Es la zona de la VM de TPU (por ejemplo, us-central1-b).
  • MAX_RUN_DURATION: Es la duración máxima de ejecución de la VM de TPU (por ejemplo, 6h). Para REST, especifica esto como una cantidad de segundos (por ejemplo, 21600 para 6 horas).
  • VALID_DURATION: Es la duración máxima durante la que la solicitud es válida. Para REST, especifica esto como una cantidad de segundos (por ejemplo, 3600 para 1 hora). La solicitud es válida.

Para obtener más información sobre la creación de instancias de Compute Engine, consulta Crea y empieza una instancia de Compute Engine.

¿Qué sigue?