Crea un MIG optimizado para IA con A4X

En este documento, se describe cómo crear un grupo de instancias administrado (MIG) que use tipos de máquinas A4X. Para obtener más información sobre este tipo de máquina optimizada para aceleradores, consulta A4X.

Crea un MIG si deseas administrar varias máquinas virtuales (VMs) como una sola entidad. Para obtener más información sobre los MIG, consulta Grupos de instancias administrados en la documentación de Compute Engine.

Para obtener información sobre otras formas de crear VMs o clústeres, consulta Descripción general de las opciones de implementación.

Limitaciones

Cuando crees un MIG con VMs A4X, ten en cuenta las limitaciones del tipo de máquina y del MIG.

Limitaciones de las VMs de A4X

Se aplican las siguientes limitaciones específicas de la máquina:

Limitaciones del MIG

Cuando creas un MIG con VMs A4X, se aplican las siguientes limitaciones:

  • Si creas un MIG regional, este solo podrá crear VMs en la zona que contiene el perfil de tu red de VPC.

  • No puedes configurar la flexibilidad de instancias en el MIG.

  • Si aplicas una política de carga de trabajo a un MIG, no podrás cambiar la política en el MIG cuando el grupo tenga VMs. Para cambiar la política en un MIG que tiene VMs, primero debes cambiar el tamaño del MIG a cero.

  • No puedes usar una plantilla de instancias que especifique una política de posición para crear un MIG que use una política de carga de trabajo.

  • Debes usar el modelo de aprovisionamiento vinculado a la reserva. No se admiten otros modelos de aprovisionamiento.

  • No puedes usar una solicitud de cambio de tamaño para agregar VMs al MIG. Debes establecer el tamaño objetivo del MIG para agregar VMs.

Antes de comenzar

Antes de crear un MIG, si aún no lo hiciste, completa los siguientes pasos:

  1. Elige una opción de consumo: La opción de consumo que elijas determinará cómo obtendrás y usarás los recursos de GPU.

    Para obtener más información, consulta Elige una opción de consumo.

  2. Obtención de capacidad: El proceso para obtener capacidad difiere para cada opción de consumo.

    Para obtener información sobre el proceso para obtener capacidad para la opción de consumo que elegiste, consulta la Descripción general de la capacidad.

Roles obligatorios

Para obtener los permisos que necesitas para crear un MIG, pídele a tu administrador que te otorgue el rol de IAM Administrador de instancias de Compute (v1) (roles/compute.instanceAdmin.v1) en el proyecto. Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.

Este rol predefinido contiene los permisos necesarios para crear un MIG. Para ver los permisos exactos que son necesarios, expande la sección Permisos requeridos:

Permisos necesarios

Se requieren los siguientes permisos para crear un MIG:

  • Para crear un MIG, haz lo siguiente: compute.instanceGroupManagers.create en el proyecto

También puedes obtener estos permisos con roles personalizados o con otros roles predefinidos.

Conceptos básicos del A4X

Un clúster de A4X se organiza en una jerarquía de bloques y subbloques para facilitar el rendimiento de la red a gran escala y sin bloqueos. Comprender esta topología es clave cuando se reserva capacidad y se implementan cargas de trabajo.

Instancia A4X
Una instancia A4X es un solo tipo de máquina A4X que tiene 4 GPUs conectadas.
Dominio o subbloque de NVLink
Un dominio de NVLink, también denominado subbloque, es la unidad fundamental de capacidad de A4X. Un dominio de NVLink consta de 18 instancias A4X (72 GPUs) conectadas con un sistema de NVLink de varios nodos. Para crear un dominio o un subbloque de NVLink de A4X, aplica una política de carga de trabajo que especifique una topología 1x72.
Bloquear
Un bloque A4X se compone de 25 subbloques (dominios de NVLink), lo que suma hasta 450 instancias A4X (1,800 GPUs). Los subbloques están alineados con los rieles para un escalamiento eficiente. Cada subbloque requiere un MIG. Por lo tanto, para un solo bloque de A4X, puedes crear 25 MIG.

En la siguiente tabla, se muestran las opciones de topología compatibles para las instancias A4X:

Topología (acceleratorTopology) Cantidad de GPU Cantidad de instancias
1x72 72 18

Descripción general

La creación de un MIG con el tipo de máquina A4X incluye los siguientes pasos:

  1. Crea redes de VPC
  2. Crea una política de cargas de trabajo
  3. Crea una plantilla de instancias
  4. Crea un MIG

Crea redes de VPC

Para configurar la red para el tipo de máquina A4X, crea tres redes de VPC para las siguientes interfaces de red:

  • 2 redes de VPC normales para las interfaces de red (NIC) gVNIC Se usan para la comunicación de host a host.
  • Se requiere 1 red de VPC con el perfil de red RoCE para las NIC CX-7 cuando se crean varios subbloques A4X. La red de VPC de RoCE debe tener 4 subredes, una para cada NIC de CX-7. Estas NIC usan RDMA a través de Ethernet convergida (RoCE), lo que proporciona la comunicación de alta latencia y bajo ancho de banda que es esencial para escalar horizontalmente a varios subbloques A4X. En el caso de un solo subbloque de A4X, puedes omitir esta red de VPC porque, dentro de un solo subbloque, la comunicación directa de GPU a GPU se controla con NVLink de varios nodos.

Para obtener más información sobre la disposición de las NIC, consulta Revisa el ancho de banda de la red y la disposición de las NIC.

Crea las redes de forma manual siguiendo las guías de instrucciones o automáticamente con la secuencia de comandos proporcionada.

Guías de instrucciones

Para crear las redes, puedes usar las siguientes instrucciones:

Para estas redes de VPC, te recomendamos que establezcas la unidad de transmisión máxima (MTU) en un valor mayor. Para el tipo de máquina A4X, la MTU recomendada es de 8896 bytes. Para revisar la configuración de MTU recomendada para otros tipos de máquinas con GPU, consulta Configuración de MTU para tipos de máquinas con GPU.

Secuencia de comandos

Para crear las redes, sigue estos pasos.

Para estas redes de VPC, te recomendamos que establezcas la unidad de transmisión máxima (MTU) en un valor mayor. Para el tipo de máquina A4X, la MTU recomendada es de 8896 bytes. Para revisar la configuración de MTU recomendada para otros tipos de máquinas con GPU, consulta Configuración de MTU para tipos de máquinas con GPU.

  1. Usa la siguiente secuencia de comandos para crear redes de VPC normales para las gVNICs.

      
        #!/bin/bash
    
        # Create regular VPC networks and subnets for the gVNICs
        for N in $(seq 0 1); do
          gcloud compute networks create GVNIC_NAME_PREFIX-net-$N \
            --subnet-mode=custom \
            --mtu=8896
    
          gcloud compute networks subnets create GVNIC_NAME_PREFIX-sub-$N \
            --network=GVNIC_NAME_PREFIX-net-$N \
            --region=REGION \
            --range=192.168.$N.0/24
    
          gcloud compute firewall-rules create GVNIC_NAME_PREFIX-internal-$N \
            --network=GVNIC_NAME_PREFIX-net-$N \
            --action=ALLOW \
            --rules=tcp:0-65535,udp:0-65535,icmp \
            --source-ranges=192.168.0.0/16
        done
    
        # Create SSH firewall rules
        gcloud compute firewall-rules create GVNIC_NAME_PREFIX-ssh \
          --network=GVNIC_NAME_PREFIX-net-0 \
          --action=ALLOW \
          --rules=tcp:22 \
          --source-ranges=IP_RANGE
    
        # Assumes that an external IP is only created for vNIC 0
        gcloud compute firewall-rules create GVNIC_NAME_PREFIX-allow-ping-net-0 \
          --network=GVNIC_NAME_PREFIX-net-0 \
          --action=ALLOW \
          --rules=icmp \
          --source-ranges=IP_RANGE
    
      
  2. Si necesitas varios subbloques A4X, usa la siguiente secuencia de comandos para crear la red de VPC y las subredes de RoCE para las cuatro NIC CX-7 en cada instancia de A4X.

      
        # List and make sure network profiles exist in the machine type's zone
        gcloud compute network-profiles list --filter "location.name=ZONE"
    
        # Create network for CX-7
        gcloud compute networks create RDMA_NAME_PREFIX-mrdma \
          --network-profile=ZONE-vpc-roce \
          --subnet-mode custom \
          --mtu=8896
    
        # Create subnets
        for N in $(seq 0 3); do
          gcloud compute networks subnets create RDMA_NAME_PREFIX-mrdma-sub-$N \
            --network=RDMA_NAME_PREFIX-mrdma \
            --region=REGION \
            --range=192.168.$((N+2)).0/24 & # offset to avoid overlap with gVNICs
        done
    
      

    Reemplaza lo siguiente:

    • GVNIC_NAME_PREFIX: Es el prefijo del nombre personalizado que se usará para las subredes y las redes de VPC normales de las gVNICs.
    • RDMA_NAME_PREFIX: Es el prefijo del nombre personalizado que se usará para la red de VPC y las subredes de RoCE para las NIC CX-7.
    • ZONE: Especifica una zona en la que esté disponible el tipo de máquina que deseas usar, como us-central1-a. Para obtener información sobre las regiones, consulta Disponibilidad de GPU por regiones y zonas.
    • REGION: Es la región en la que deseas crear las subredes. Esta región debe corresponder a la zona especificada. Por ejemplo, si tu zona es us-central1-a, tu región es us-central1.
    • IP_RANGE: Es el rango de IP que se usará para las reglas de firewall de SSH.
  3. Opcional: Para verificar que los recursos de la red de VPC se hayan creado correctamente, consulta la configuración de la red en la consola de Google Cloud :
    1. En la consola de Google Cloud , ve a la página Redes de VPC.

      Ir a las redes de VPC

    2. Busca en la lista las redes que creaste en el paso anterior.
    3. Para ver las subredes, las reglas de firewall y otros parámetros de configuración de la red, haz clic en el nombre de la red.

Crear una política de cargas de trabajo

No puedes actualizar una política de carga de trabajo después de crearla. Para realizar cambios en una política de cargas de trabajo, debes crear una nueva.

Para crear una política de cargas de trabajo, selecciona una de las siguientes opciones:

gcloud

Para crear una política de cargas de trabajo, usa el comando gcloud compute resource-policies create workload-policy.

Para la configuración de red entre aceleradores, especifica la marca --accelerator-topology en el comando.

Usa el siguiente comando para el tipo de máquina A4X. La topología del acelerador de 1x72 indica que hay 72 GPUs conectadas a través de un NVLink dentro de un bloque.

gcloud compute resource-policies create workload-policy WORKLOAD_POLICY_NAME \
    --type=high-throughput \
    --accelerator-topology=1x72 \
    --region=REGION

Reemplaza lo siguiente:

  • WORKLOAD_POLICY_NAME: Es el nombre de la política de carga de trabajo.
  • REGION: Es la región en la que deseas crear la política de cargas de trabajo. Especifica una región en la que deseas crear el MIG y el tipo de máquina que deseas usar está disponible. Para obtener información sobre las regiones, consulta Disponibilidad de GPU por regiones y zonas.

REST

Para crear una política de cargas de trabajo, realiza una solicitud POST al método resourcePolicies.insert.

Para la configuración de red entre aceleradores, especifica el campo acceleratorTopology en la solicitud.

Realiza la siguiente solicitud para el tipo de máquina A4X. La topología del acelerador de 1x72 indica que hay 72 GPUs conectadas a través de NVLink dentro de un bloque.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies
  {
    "name": "WORKLOAD_POLICY_NAME"
    "workloadPolicy": {
      "type": "HIGH_THROUGHPUT",
      "acceleratorTopology": "1x72"
    }
  }

Reemplaza lo siguiente:

  • PROJECT_ID: Es el ID del proyecto.
  • REGION: Es la región en la que deseas crear la política de cargas de trabajo. Especifica una región en la que deseas crear el MIG y el tipo de máquina que deseas usar está disponible. Para obtener información sobre las regiones, consulta Disponibilidad de GPU por regiones y zonas.
  • WORKLOAD_POLICY_NAME: Es el nombre de la política de carga de trabajo.

Crea una plantilla de instancias

Especifica las propiedades de la VM para un MIG creando una plantilla de instancias.

Para crear una plantilla de instancias, selecciona una de las siguientes opciones.

Los siguientes comandos también establecen el permiso de acceso para tus instancias. Para simplificar la administración de permisos, Google recomienda que configures el permiso de acceso en una instancia como acceso cloud-platform y, luego, uses roles de IAM para definir a qué servicios puede acceder la instancia. Para obtener más información, consulta Prácticas recomendadas para los permisos.

gcloud

Para crear una plantilla de instancias regional, usa el comando gcloud compute instance-templates create.

gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
    --machine-type=a4x-highgpu-4g \
    --image-family=IMAGE_FAMILY \
    --image-project=IMAGE_PROJECT \
    --instance-template-region=REGION \
    --boot-disk-type=hyperdisk-balanced \
    --boot-disk-size=DISK_SIZE \
    --scopes=cloud-platform \
    --network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-0,subnet=GVNIC_NAME_PREFIX-sub-0 \
    --network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-1,subnet=GVNIC_NAME_PREFIX-sub-1,no-address \
    --network-interface=nic-type=MRDMA,network=RDMA_NAME_PREFIX-mrdma,subnet=RDMA_NAME_PREFIX-mrdma-sub-0,no-address \
    --network-interface=nic-type=MRDMA,network=RDMA_NAME_PREFIX-mrdma,subnet=RDMA_NAME_PREFIX-mrdma-sub-1,no-address \
    --network-interface=nic-type=MRDMA,network=RDMA_NAME_PREFIX-mrdma,subnet=RDMA_NAME_PREFIX-mrdma-sub-2,no-address \
    --network-interface=nic-type=MRDMA,network=RDMA_NAME_PREFIX-mrdma,subnet=RDMA_NAME_PREFIX-mrdma-sub-3,no-address \
    --reservation-affinity=specific \
    --reservation=RESERVATION \
    --provisioning-model=RESERVATION_BOUND \
    --instance-termination-action=DELETE \
    --maintenance-policy=TERMINATE \
    --restart-on-failure

Reemplaza lo siguiente:

  • INSTANCE_TEMPLATE_NAME: el nombre de la plantilla de instancias.
  • IMAGE_FAMILY: Es la familia de imágenes de la imagen de SO que deseas usar. Para obtener una lista de los sistemas operativos compatibles, consulta Sistemas operativos compatibles.
  • IMAGE_PROJECT: Es el ID del proyecto de la imagen de SO.
  • REGION: Es la región en la que deseas crear la plantilla de instancias. Especifica una región en la que esté disponible el tipo de máquina que deseas usar. Para obtener información sobre las regiones, consulta Disponibilidad de GPU por regiones y zonas.
  • DISK_SIZE: Es el tamaño del disco de arranque en GB.
  • GVNIC_NAME_PREFIX: Es el prefijo de nombre que especificaste cuando creaste las subredes y las redes de VPC estándar que usan NIC de gVNIC.
  • RDMA_NAME_PREFIX: Es el prefijo del nombre que especificaste cuando creaste las redes de VPC y las subredes que usan NIC de RDMA.
  • RESERVATION: Es el nombre de la reserva, un bloque o un subbloque dentro de una reserva. Para obtener el nombre de la reserva o los bloques disponibles, consulta Cómo ver la capacidad reservada. Según tus requisitos de ubicación de la instancia, elige una de las siguientes opciones:
    • Para crear las instancias en cualquier bloque, sigue estos pasos:
          projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME
          
    • Para crear las instancias en un bloque específico, sigue estos pasos:
          projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME/reservationBlocks/RESERVATION_BLOCK_NAME
          
    • Para crear las instancias en un subbloque específico, haz lo siguiente:
          projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME/reservationBlocks/RESERVATION_BLOCK_NAME/reservationSubBlocks/RESERVATION_SUBBLOCK_NAME
          

REST

Para crear una plantilla de instancias regional, realiza una solicitud POST al método regionInstanceTemplates.insert.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceTemplates
{
  "name":"INSTANCE_TEMPLATE_NAME",
  "properties":{
    "machineType":"a4x-highgpu-4g",
    "disks":[
      {
        "boot":true,
        "initializeParams":{
          "diskSizeGb":"DISK_SIZE",
          "diskType":"hyperdisk-balanced",
          "sourceImage":"projects/IMAGE_PROJECT/global/images/family/IMAGE_FAMILY"
        },
        "mode":"READ_WRITE",
        "type":"PERSISTENT"
      }
    ],
    "serviceAccounts": [
      {
        "email": "default",
        "scopes": [
          "https://www.googleapis.com/auth/cloud-platform"
        ]
      }
    ],
    "networkInterfaces": [
      {
        "accessConfigs": [
          {
            "name": "external-nat",
            "type": "ONE_TO_ONE_NAT"
          }
        ],
        "network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-0",
        "nicType": "GVNIC",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-0"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-1",
        "nicType": "GVNIC",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-1"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/RDMA_NAME_PREFIX-mrdma",
        "nicType": "MRDMA",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/RDMA_NAME_PREFIX-mrdma-sub-0"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/RDMA_NAME_PREFIX-mrdma",
        "nicType": "MRDMA",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/RDMA_NAME_PREFIX-mrdma-sub-1"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/RDMA_NAME_PREFIX-mrdma",
        "nicType": "MRDMA",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/RDMA_NAME_PREFIX-mrdma-sub-2"
      },
      {
        "network": "projects/NETWORK_PROJECT_ID/global/networks/RDMA_NAME_PREFIX-mrdma",
        "nicType": "MRDMA",
        "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/RDMA_NAME_PREFIX-mrdma-sub-3"
      }
    ],
    "reservationAffinity":{
        "consumeReservationType":"SPECIFIC_RESERVATION",
        "key":"compute.googleapis.com/reservation-name",
        "values":[
          "RESERVATION"
        ]
      },
    "scheduling":{
        "provisioningModel":"RESERVATION_BOUND",
        "instanceTerminationAction":"DELETE",
        "onHostMaintenance": "TERMINATE",
        "automaticRestart":true
      }
  }
}

Reemplaza lo siguiente:

  • INSTANCE_TEMPLATE_NAME: el nombre de la plantilla de instancias.
  • IMAGE_FAMILY: Es la familia de imágenes de la imagen de SO que deseas usar. Para obtener una lista de los sistemas operativos compatibles, consulta Sistemas operativos compatibles.
  • IMAGE_PROJECT: Es el ID del proyecto de la imagen de SO.
  • REGION: Es la región en la que deseas crear la plantilla de instancias. Especifica una región en la que esté disponible el tipo de máquina que deseas usar. Para obtener información sobre las regiones, consulta Disponibilidad de GPU por regiones y zonas.
  • DISK_SIZE: Es el tamaño del disco de arranque en GB.
  • NETWORK_PROJECT_ID: Es el ID del proyecto de la red.
  • GVNIC_NAME_PREFIX: Es el prefijo de nombre que especificaste cuando creaste las subredes y las redes de VPC estándar que usan NIC de gVNIC.
  • REGION: Es la región de la subred.
  • RDMA_NAME_PREFIX: Es el prefijo del nombre que especificaste cuando creaste las redes de VPC y las subredes que usan NIC de RDMA.
  • RESERVATION: Es el nombre de la reserva, un bloque o un subbloque dentro de una reserva. Para obtener el nombre de la reserva o los bloques disponibles, consulta Cómo ver la capacidad reservada. Según tus requisitos de ubicación de la instancia, elige una de las siguientes opciones:
    • Para crear las instancias en cualquier bloque, sigue estos pasos:
          projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME
          
    • Para crear las instancias en un bloque específico, sigue estos pasos:
          projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME/reservationBlocks/RESERVATION_BLOCK_NAME
          
    • Para crear las instancias en un subbloque específico, haz lo siguiente:
          projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME/reservationBlocks/RESERVATION_BLOCK_NAME/reservationSubBlocks/RESERVATION_SUBBLOCK_NAME
          

Crear un MIG

Cuando usas un tipo de máquina A4X, debes crear un MIG especificando su tamaño objetivo.

Para obtener una topología de GPU de 1x72, crea un MIG con 18 instancias. Cuando crees el MIG, aplica la política de carga de trabajo que especifica el campo acceleratorTopology. Aplicar la política garantiza que Compute Engine cree las 18 instancias en un subbloque para usar un dominio de NVLink.

Si un subbloque no tiene capacidad para las 18 instancias, cualquier instancia administrada que no se pueda crear de inmediato permanecerá en estado CREATING hasta que haya capacidad disponible. Estas instancias administradas representan las VMs que crea el MIG cuando hay capacidad.

Cuando aplicas una política de carga de trabajo con el campo acceleratorTopology establecido en 1x72, no puedes crear más de 18 instancias en un MIG. Si especificas más de 18 instancias, fallará la creación del MIG. Para crear varios dominios de NVLink, crea un MIG independiente para cada dominio y aplica la misma política de carga de trabajo a cada MIG.

Para crear un MIG, selecciona una de las siguientes opciones:

gcloud

Para crear un MIG con un tamaño de destino especificado, usa el comando instance-groups managed create.

Crea un MIG zonal o regional de la siguiente manera:

  • Para crear un MIG zonal, usa el siguiente comando:
    gcloud compute instance-groups managed create MIG_NAME \
      --template=INSTANCE_TEMPLATE_URL \
      --size=TARGET_SIZE \
      --workload-policy=WORKLOAD_POLICY_URL \
      --zone=ZONE
    
  • Para crear un MIG regional, usa el siguiente comando:
    gcloud compute instance-groups managed create MIG_NAME \
        --template=INSTANCE_TEMPLATE_URL \
        --size=TARGET_SIZE \
        --workload-policy=WORKLOAD_POLICY_URL \
        --region=REGION
    
Reemplaza lo siguiente:
  • MIG_NAME: Es el nombre del MIG.
  • INSTANCE_TEMPLATE_URL: Es la URL de la plantilla de instancias que deseas usar para crear VMs en el MIG. La URL puede contener el ID o el nombre de la plantilla de instancias. Especifica uno de los siguientes valores:
    • Para una plantilla de instancias regional: projects/PROJECT_ID/regions/REGION/instanceTemplates/INSTANCE_TEMPLATE_ID
    • Para una plantilla de instancias global: INSTANCE_TEMPLATE_ID
  • TARGET_SIZE: Es la cantidad de VMs que deseas en el MIG. Para la topología del acelerador de 1x72, establece el tamaño objetivo en 18.
  • WORKLOAD_POLICY_URL: Es la URL de la política de carga de trabajo. Por ejemplo, projects/example-project/regions/us-central1/resourcePolicies/example-workload-policy.
  • ZONE: Es la zona en la que deseas crear el MIG. Especifica una zona dentro de la región de la política de carga de trabajo.
  • REGION: la región en la que deseas crear el MIG. Especifica la misma región que la de la política de carga de trabajo. En el caso de un MIG regional, en lugar de una región, puedes especificar las zonas de esa región con la marca --zones.

REST

Para crear un MIG con un tamaño objetivo especificado, realiza una solicitud POST.

Crea un MIG zonal o regional de la siguiente manera:

  • Para crear un MIG zonal, realiza una solicitud POST al método instanceGroupManagers.insert.
    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers
    {
      "versions": [
        {
          "instanceTemplate": "INSTANCE_TEMPLATE_URL"
        }
      ],
      "name": "MIG_NAME",
      "instanceTemplate": "INSTANCE_TEMPLATE_URL",
      "targetSize": "TARGET_SIZE",
      "resourcePolicies": {
        "workloadPolicy": WORKLOAD_POLICY_URL
      }
    }
    
  • Para crear un MIG regional, realiza una solicitud POST al método regionInstanceGroupManagers.insert.
      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers
      {
        "versions": [
          {
            "instanceTemplate": "INSTANCE_TEMPLATE_URL"
          }
        ],
        "name": "MIG_NAME",
        "instanceTemplate": "INSTANCE_TEMPLATE_URL",
        "targetSize": "TARGET_SIZE",
        "resourcePolicies": {
          "workloadPolicy": WORKLOAD_POLICY_URL
        }
      }
    
Reemplaza lo siguiente:
  • PROJECT_ID: Es el ID del proyecto.
  • ZONE: Es la zona en la que deseas crear el MIG. Especifica una zona dentro de la región de la política de carga de trabajo.
  • REGION: la región en la que deseas crear el MIG. Especifica la misma región que la de la política de carga de trabajo.
  • INSTANCE_TEMPLATE_URL: Es la URL de la plantilla de instancias que deseas usar para crear VMs en el MIG. La URL puede contener el ID o el nombre de la plantilla de instancias. Especifica uno de los siguientes valores:
    • Para una plantilla de instancias regional: projects/PROJECT_ID/regions/REGION/instanceTemplates/INSTANCE_TEMPLATE_ID
    • Para una plantilla de instancias global: INSTANCE_TEMPLATE_ID
  • MIG_NAME: Es el nombre del MIG.
  • TARGET_SIZE: Es la cantidad de VMs que deseas que haya en el MIG. Para la topología del acelerador de 1x72, establece el tamaño objetivo en 18.
  • WORKLOAD_POLICY_URL: URL de la política de carga de trabajo Por ejemplo:projects/example-project/regions/us-central1/resourcePolicies/example-workload-policy

Próximos pasos