En este tutorial se muestra cómo crear un grupo de instancias gestionado (MIG) que utilice un tipo de máquina H4D. La MIG usa el modelo de aprovisionamiento vinculado a reservas para obtener recursos de computación.
Crear un MIG te permite gestionar varias máquinas virtuales como una sola entidad. Cada VM de un MIG se basa en una plantilla de instancia. Al gestionar automáticamente las VMs del grupo, los MIGs ofrecen alta disponibilidad y escalabilidad. Para obtener más información sobre los MIGs, consulta Grupos de instancias gestionados.
Para obtener información sobre las opciones de creación de VMs y clústeres de HPC, consulta el artículo Descripción general de la creación de clústeres de HPC.
Este tutorial está dirigido a ingenieros de HPC, administradores y operadores de plataformas, y a especialistas en datos y MPI que quieran crear un grupo de instancias de HPC interconectadas para ejecutar sus cargas de trabajo. Las instancias resultantes no usan un orquestador para gestionar las instancias ni para programar los trabajos.
Si quieres crear un grupo de instancias gestionado, pero no necesitas crear una implementación densa de instancias, consulta Escenarios básicos para crear grupos de instancias gestionados.
Capacidad de reserva
Para usar los comandos de este tutorial, debes reservar la capacidad para crear las instancias en el MIG.
Crear una reserva futura para bloques de capacidad
Esta acción te permite reservar bloques de capacidad durante un periodo definido, a partir de una fecha y una hora concretas que elijas. La reserva reserva bloques o subbloques de capacidad en un clúster, lo que permite realizar despliegues densos de instancias de máquina virtual.
Para crear una reserva futura para una implementación densa, sigue estos pasos:
Sigue el proceso para reservar capacidad poniéndote en contacto con tu equipo de cuenta en la documentación de AI Hypercomputer. En tu próxima solicitud de reserva, proporciona la información tal como se indica en la documentación, con las siguientes excepciones:
- Tipo de máquina: especifica el tipo de máquina H4D.
h4d-highmem-192-lssd - Zona: especifica una de las zonas en las que están disponibles las instancias H4D, tal como se indica en la tabla Regiones y zonas disponibles. Para mostrar las zonas disponibles solo para H4D, en la lista Selecciona una serie de máquinas, selecciona
H4D. - Tipo de programación del mantenimiento: en las instancias H4D, puedes especificar
GROUPEDoINDEPENDENT. - Modo operativo de la reserva: en las instancias H4D, especifica el valor
HIGHLY_AVAILABLE_CAPACITY.
- Tipo de máquina: especifica el tipo de máquina H4D.
La cuota se aumenta automáticamente antes de que se proporcione la capacidad. No es necesario que hagas nada.
Cuando cree la plantilla de instancia, especifique el modelo de aprovisionamiento enlazado a la reserva. Las instancias de VM del MIG se aprovisionan a partir de tu capacidad reservada.
Se te cobra todo el periodo de reserva, independientemente de si usas los recursos reservados durante todo el periodo o no. Para obtener más información, consulta Facturación de reservas.
Crear una reserva futura en el modo Calendario
Si necesitas usar la capacidad reservada durante menos de 90 días, puedes crear una reserva futura en el modo de calendario con Dynamic Workload Scheduler. Para obtener recursos de reserva futuros, sigue estos pasos:
- Busca capacidad disponible y reserva recursos con la Google Cloud consola, la CLI de gcloud o la API Compute Engine.
- No se te cobrará ninguna cuota y no es necesario que hagas nada.
- Cuando cree la plantilla de instancia, especifique el modelo de aprovisionamiento enlazado a la reserva. Las instancias de VM del MIG se aprovisionan a partir de tu capacidad reservada.
Se te cobra todo el periodo de reserva, independientemente de si usas los recursos reservados durante todo el periodo o no. Para obtener más información, consulta los precios de Dynamic Workload Scheduler.
Opcional: Crear redes de VPC
A menos que decidas inhabilitarla, cada proyecto tiene una red predeterminada, que se puede usar para proporcionar conectividad de red a tus instancias. Cuando creas una VM, puedes especificar una red VPC y una subred. Si omite esta configuración, se usarán la red y la subred predeterminadas.
Las instancias H4D se pueden configurar para usar Cloud RDMA. Cloud RDMA ofrece funciones de mensajería fiables y de baja latencia mediante un controlador de red IRDMA que admite el acceso directo a memoria remota (RDMA) entre instancias de Compute Engine.
Para este tutorial, necesitarás lo siguiente:
- Si quieres configurar las instancias H4D para que usen Cloud RDMA, sigue los pasos de esta sección.
- Si no quieres usar Cloud RDMA, puedes omitir esta sección y usar la red predeterminada.
Las instancias habilitadas para RDMA requieren un mínimo de dos interfaces de red (NICs):
- Tipo de NIC
GVNIC: usa el controladorgvepara el tráfico TCP/IP e Internet en la comunicación normal entre máquinas virtuales y entre máquinas virtuales e Internet. - Tipo de NIC
IRDMA: usa controladores IDPF o iRDMA para la conexión en red de Cloud RDMA entre instancias.
Las instancias que usan Cloud RDMA solo pueden tener una interfaz IRDMA. Puedes añadir hasta ocho interfaces de red GVNIC adicionales, lo que hace un total de 10 NICs por instancia.
Para configurar las redes de VPC de Falcon que quieras usar con tus instancias, puedes seguir las instrucciones documentadas o usar la secuencia de comandos proporcionada.
Guías de instrucciones
Para crear las redes, puedes seguir estas instrucciones:
Para crear las redes de host de las
GVNICinterfaces de red, consulta Crear y gestionar redes de VPC.Si solo vas a configurar una interfaz de red
GVNIC, puedes usar la red VPC predeterminada y la subred automática que se encuentre en la misma región que la instancia.Para crear una red para la interfaz de red
IRDMA, consulta Crear una red VPC con un perfil de red RDMA. Usa el valor predeterminado de la unidad máxima de transmisión (MTU) de una red RDMA, que es8896.
Secuencia de comandos
Puedes crear hasta nueve interfaces de red GVNIC y una interfaz de red IRDMA por instancia. Cada interfaz de red debe conectarse a una red independiente. Para crear las redes, puedes usar la siguiente secuencia de comandos, que crea dos redes para GVNIC y una red para IRDMA.
- Opcional: Antes de ejecutar la secuencia de comandos, enumera los perfiles de red RDMA para verificar que hay uno disponible.
gcloud beta compute network-profiles list
Copia el siguiente código y ejecútalo en una ventana de shell de Linux.
#!/bin/bash # Set the number of GVNIC interfaces to create. You can create up to 9. NUM_GVNIC=NUMBER_OF_GVNIC # Create standard VPC (networks and subnets) for the GVNIC interfaces for N in $(seq 0 $(($NUM_GVNIC - 1))); do gcloud compute networks create GVNIC_NAME_PREFIX-net-$N \ --subnet-mode=custom gcloud compute networks subnets create GVNIC_NAME_PREFIX-sub-$N \ --network=GVNIC_NAME_PREFIX-net-$N \ --region=REGION \ --range=10.$N.0.0/16 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=10.0.0.0/8 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 # Optional: Create a firewall rule for the external IP address for the # first GVNIC network interface 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 # Create a network for the RDMA over Falcon network interface gcloud beta compute networks create RDMA_NAME_PREFIX-irdma \ --network-profile=ZONE-vpc-falcon \ --subnet-mode custom # Create a subnet for the RDMA network gcloud beta compute networks subnets create RDMA_NAME_PREFIX-irdma-sub \ --network=RDMA_NAME_PREFIX-irdma \ --region=REGION \ --range=10.2.0.0/16 # offset to avoid overlap with GVNIC subnet rangesHaz los cambios siguientes:
NUMBER_OF_GVNIC: número de interfaces de gVNIC que se van a crear. Especifica un número del 1 al 9.GVNIC_NAME_PREFIX: el prefijo de nombre que se va a usar en la red VPC y la subred estándar que usa un tipo de NIC GVNIC.REGION: la región en la que quieras crear las redes. Debe corresponderse con la zona especificada en la marca--network-profileal crear la red RDMA. Por ejemplo, si especificas la zonaeurope-west4-b, tu región seráeurope-west4.IP_RANGE: el intervalo de direcciones IP fuera de la red VPC que se va a usar para las reglas de cortafuegos SSH. Te recomendamos que especifiques los intervalos de direcciones IP concretos desde los que necesitas permitir el acceso, en lugar de todas las fuentes IPv4 o IPv6. No utilices0.0.0.0/0ni::/0como intervalo de origen, ya que esto permite el tráfico de todos los orígenes IPv4 o IPv6, incluidos los que están fuera de Google Cloud.RDMA_NAME_PREFIX: el prefijo de nombre que se va a usar en la red VPC y la subred que usan el tipo de NIC IRDMA.ZONE: la zona en la que quieres crear las redes y las instancias de computación. Usaus-central1-aoeurope-west4-b.
Opcional: Para verificar que los recursos de la red de VPC se han creado correctamente, comprueba la configuración de la red en la Google Cloud consola:
- En la Google Cloud consola, ve a la página Redes de VPC.
- Busca en la lista las redes que has creado en el paso anterior.
- Para ver las subredes, las reglas de cortafuegos y otros ajustes de red, haz clic en el nombre de la red.
Opcional: Crear una política de cargas de trabajo
Si quieres que Compute Engine coloque las instancias de VM en un solo bloque o en bloques adyacentes, especifica la colocación de las instancias creando una política de carga de trabajo. Sin embargo, si quieres que Compute Engine coloque tus instancias en un bloque específico, omite este paso y proporciona el nombre del bloque en la afinidad de la reserva al crear la plantilla de instancia.
Si ya tienes una política de carga de trabajo, puedes reutilizarla. Cuando aplicas una política de carga de trabajo a tu MIG, Compute Engine hace todo lo posible para crear instancias que estén lo más cerca posible entre sí. Si tu aplicación es sensible a la latencia y quieres que las instancias estén más cerca entre sí (máxima compacidad), especifica el campo maxTopologyDistance al crear una política de carga de trabajo.
Una vez creada una política de carga de trabajo, no se puede actualizar. Para hacer cambios en una política de carga de trabajo, debes crear una nueva.
Para crear una política de carga de trabajo, selecciona una de las siguientes opciones:
gcloud
Para crear una política de carga de trabajo, usa el comando
gcloud compute resource-policies create workload-policy.
-
Para colocar las VMs de la mejor forma posible, especifica solo la marca
--type=high-throughputen el comando:gcloud compute resource-policies create workload-policy WORKLOAD_POLICY_NAME \ --type=high-throughput \ --region=REGION -
Para que las máquinas virtuales estén ubicadas en el mismo lugar, especifica la marca
--max-topology-distanceen el comando:gcloud compute resource-policies create workload-policy WORKLOAD_POLICY_NAME \ --type=high-throughput \ --max-topology-distance=TOPOLOGY_DISTANCE \ --region=REGION
Haz los cambios siguientes:
WORKLOAD_POLICY_NAME: el nombre de la política de carga de trabajo.REGION: la región en la que quieres crear la política de carga de trabajo. Especifica una región en la que quieras crear el MIG y el tipo de máquina que quieras usar esté disponible. Para obtener información sobre las regiones y las zonas, consulta Regiones y zonas disponibles.
REST
Para crear una política de carga de trabajo, haz una solicitud POST
al método resourcePolicies.insert.
-
Para asignar las VMs de la mejor forma posible, especifica solo el campo
typeen la solicitud de la siguiente manera:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies { "name": "WORKLOAD_POLICY_NAME" "workloadPolicy": { "type": "HIGH_THROUGHPUT" } } -
Para que las VMs se coloquen de forma estricta, especifica el campo
maxTopologyDistanceen la solicitud de la siguiente manera:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies { "name": "WORKLOAD_POLICY_NAME" "workloadPolicy": { "type": "HIGH_THROUGHPUT", "maxTopologyDistance": "TOPOLOGY_DISTANCE" } }
Haz los cambios siguientes:
PROJECT_ID: tu ID de proyectoREGION: la región en la que quieres crear la política de carga de trabajo. Especifica una región en la que quieras crear el MIG y el tipo de máquina que quieras usar esté disponible. Para obtener información sobre las regiones y las zonas, consulta Regiones y zonas disponibles.WORKLOAD_POLICY_NAME: el nombre de la política de carga de trabajo.
Crear una plantilla de instancia
Para especificar las propiedades de instancia y de consumo de cada instancia de la MIG, crea una plantilla de instancia con uno de los siguientes métodos:
gcloud
Para crear una plantilla de instancia regional, usa el comando
gcloud compute instance-templates create.
gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
--machine-type=MACHINE_TYPE \
--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, \
stack-type=STACK_TYPE, \
address=EXTERNAL_IPV4_ADDRESS \
--network-interface=nic-type=GVNIC, \
network=GVNIC_NAME_PREFIX-net-1, \
subnet=GVNIC_NAME_PREFIX-sub-1,no-address \
--network-interface=nic-type=IRDMA, \
network=RDMA_NAME_PREFIX-irdma, \
subnet=RDMA_NAME_PREFIX-irdma-sub, \
stack-type=IPV4_ONLY,no-address \
--reservation-affinity=specific \
--reservation=RESERVATION \
--provisioning-model=RESERVATION_BOUND \
--instance-termination-action=DELETE \
--maintenance-policy=TERMINATE
Haz los cambios siguientes:
INSTANCE_TEMPLATE_NAME: el nombre de la plantilla de instancia.MACHINE_TYPE: el tipo de máquina H4D que se va a usar en la instancia.IMAGE_FAMILY: la familia de imágenes del SO que quieres usar. Para ver una lista de los sistemas operativos compatibles, consulta Sistemas operativos compatibles.IMAGE_PROJECT: el ID de proyecto de la imagen del SO.REGION: la región en la que quieres crear la plantilla de instancia. Especifica una región en la que esté disponible el tipo de máquina que quieras usar.DISK_SIZE: tamaño del disco de arranque en GiB.GVNIC_NAME_PREFIX: el prefijo de nombre que usaste al crear las redes VPC y las subredes estándar para las interfaces gVNIC.Si usas la red predeterminada, incluye solo un campo
--network-interfacecon el camponic-typedefinido comoGVNIC. Además, omite los ajustesnetworkysubnetworkde esta interfaz de red.STACK_TYPE: opcional: el tipo de pila que se va a usar en la interfaz gVNIC. EspecificaIPV4_ONLYoIPV4_IPV6. Si no especifica ningún valor, se usaráIPV4_ONLYde forma predeterminada.EXTERNAL_IPV4_ADDRESS: opcional: una dirección IPv4 externa estática que se va a usar con la interfaz de red gVNIC. Debes haber reservado una dirección IPv4 externa previamente. Elige una de estas opciones:- Especifica una dirección IPv4 válida de la subred.
- Usa la marca
no-addresssi no quieres que la interfaz de red tenga una dirección IP externa. - Especifica
address=''si quieres que la interfaz de red reciba una dirección IP externa efímera.
Para especificar una dirección IPv6 externa para la interfaz de red GVNIC, usa la marca
--external-ipv6-address.RDMA_NAME_PREFIX: el prefijo de nombre que usaste al crear la red VPC y la subred de la interfaz de red IRDMA.Si no utilizas Cloud RDMA con tus instancias H4D, omite el campo
--network-interfacede la interfaz IRDMA.-
RESERVATION: el nombre de la reserva que quieras usar.RESERVATION: el nombre de la reserva o un bloque específico de una reserva. Para obtener el nombre de la reserva o los bloques disponibles, consulta Ver la capacidad reservada. En función de tus requisitos de colocación de instancias, elige una de las siguientes opciones:Para crear instancias en varios bloques o en un solo bloque, sigue estos pasos:
projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME
Además, para un solo bloque, crea el MIG aplicando una política de carga de trabajo que especifique una colocación de bloques (
maxTopologyDistance=BLOCK) . A continuación, Compute Engine aplica la política a la reserva y crea instancias en el mismo bloque.Para crear instancias en un bloque específico, haz lo siguiente:
projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME/reservationBlocks/RESERVATION_BLOCK_NAME
REST
Para crear una plantilla de instancia regional, envía 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":{
"disks":[
{
"boot":true,
"initializeParams":{
"diskSizeGb":"DISK_SIZE",
"diskType":"hyperdisk-balanced",
"sourceImage":"projects/IMAGE_PROJECT/global/images/family/IMAGE_FAMILY"
},
"mode":"READ_WRITE",
"type":"PERSISTENT"
}
],
"machineType":"MACHINE_TYPE",
"networkInterfaces": [
{
"network": "GVNIC_NAME_PREFIX-net-0",
"subnetwork": "GVNIC_NAME_PREFIX-sub-0",
"accessConfigs": [
{
"type": "ONE_TO_ONE_NAT",
"name": "External IP",
"natIP": "EXTERNAL_IPV4_ADDRESS"
}
],
"stackType": "IPV4_ONLY",
"nicType": "GVNIC",
},
{
"network": "GVNIC_NAME_PREFIX-net-1",
"subnetwork": "GVNIC_NAME_PREFIX-sub-1",
"stackType": "IPV4_ONLY",
"nicType": "GVNIC",
},
{
"network": "RDMA_NAME_PREFIX-irdma",
"subnetwork": "RDMA_NAME_PREFIX-irdma-sub",
"stackType": "IPV4_ONLY",
"nicType": "IRDMA",
}
],
,
"reservationAffinity":{
"consumeReservationType":"SPECIFIC_RESERVATION",
"key":"compute.googleapis.com/reservation-name",
"values":[
"RESERVATION"
]
},
"scheduling":{
"provisioningModel":"RESERVATION_BOUND",
"instanceTerminationAction":"DELETE",
"onHostMaintenance": "TERMINATE",
"automaticRestart":true
}
}
}
Haz los cambios siguientes:
INSTANCE_TEMPLATE_NAME: el nombre de la plantilla de instancia.MACHINE_TYPE: el tipo de máquina que se va a usar en la instancia. Especifica un tipo de máquina H4D. Para obtener más información, consulta los tipos de máquinas H4D.IMAGE_FAMILY: la familia de imágenes del SO que quieres usar. Para ver una lista de los sistemas operativos compatibles, consulta Sistemas operativos compatibles.IMAGE_PROJECT: el ID de proyecto de la imagen del SO.REGION: la región en la que quieres crear la plantilla de instancia. Especifica una región en la que esté disponible el tipo de máquina que quieras usar. Para obtener información sobre las regiones, consulta Regiones y zonas.DISK_SIZE: tamaño del disco de arranque en GiB.GVNIC_NAME_PREFIX: el prefijo de nombre que usaste al crear las redes VPC y las subredes estándar para las interfaces gVNIC.Si usas la red predeterminada, incluye solo un campo
--network-interfacecon el camponic-typedefinido comoGVNIC. Además, omite los ajustesnetworkysubnetworkde esta interfaz de red.EXTERNAL_IPV4_ADDRESS: opcional: una dirección IPv4 externa estática que se va a usar con la interfaz de red gVNIC. Debes haber reservado una dirección IPv4 externa previamente.Para especificar una dirección IPv6 externa para la interfaz de red GVNIC, usa la marca
--external-ipv6-address.RDMA_NAME_PREFIX: el prefijo de nombre que usaste al crear la red VPC y la subred de la interfaz de red IRDMA.Si no utilizas Cloud RDMA con tus instancias H4D, omite el campo
--network-interfacede la interfaz IRDMA.-
RESERVATION: el nombre de la reserva que quieras usar.RESERVATION: el nombre de la reserva o un bloque específico de una reserva. Para obtener el nombre de la reserva o los bloques disponibles, consulta Ver capacidad reservada. En función de tus requisitos de colocación de instancias, elige una de las siguientes opciones:Para crear instancias en varios bloques o en un solo bloque, sigue estos pasos:
projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME
Además, para un solo bloque, crea el MIG aplicando una política de carga de trabajo que especifique una colocación de bloques (
maxTopologyDistance=BLOCK) . A continuación, Compute Engine aplica la política a la reserva y crea instancias en el mismo bloque.Para crear instancias en un bloque específico, haz lo siguiente:
projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME/reservationBlocks/RESERVATION_BLOCK_NAME
Una vez que hayas creado la plantilla de instancia, puedes verla para consultar su ID y sus propiedades.
Crear un MIG
En función de los requisitos de tu carga de trabajo, puedes crear un MIG con una de las siguientes configuraciones:
- Si tienes varias tareas o tareas paralelas que pueden iniciarse con cualquier número de VMs, crea el MIG con un tamaño objetivo.
- Si necesitas varias VMs a la vez para iniciar un trabajo o tienes un trabajo que requiere distribuirse en un número exacto de instancias de VM, crea un MIG y, a continuación, crea una solicitud de cambio de tamaño en el MIG.
Crear un MIG con un tamaño de destino
Si puedes iniciar el trabajo sin crear todas las instancias de VM a la vez, crea un MIG con un tamaño objetivo. El tamaño objetivo determina el número de instancias de la MIG. La MIG empieza a crear instancias en función de la disponibilidad de recursos actual. Si algún recurso no está disponible temporalmente, el MIG intentará continuamente crear instancias para alcanzar el tamaño objetivo.
Para crear un MIG con un tamaño objetivo, selecciona una de las siguientes opciones:
gcloud
Para crear un MIG con un tamaño de destino específico, usa el comando instance-groups managed
create.
En este paso, los comandos para crear un MIG usan una política de carga de trabajo para especificar la colocación de las VMs. Si no quieres usar una política de carga de trabajo, elimina la marca --workload-policy.
Crea un MIG de zona 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
MIG_NAME: el nombre del MIG.INSTANCE_TEMPLATE_URL: la URL de la plantilla de instancia que quieres usar para crear VMs en el MIG. La URL puede contener el ID o el nombre de la plantilla de instancia. Especifica uno de los siguientes valores:- En el caso de una plantilla de instancia regional, haz lo siguiente:
projects/PROJECT_ID/regions/REGION/instanceTemplates/INSTANCE_TEMPLATE_ID - En el caso de una plantilla de instancia global, haz lo siguiente:
INSTANCE_TEMPLATE_ID
- En el caso de una plantilla de instancia regional, haz lo siguiente:
TARGET_SIZE: el número de VMs que quieres que haya en el MIG.WORKLOAD_POLICY_URL: opcional, la URL de la política de carga de trabajo. Si no quieres usar una política de carga de trabajo, puedes quitar la marca--workload-policy.ZONE: la zona en la que quieres crear el MIG. Si usas una política de carga de trabajo, especifica una zona dentro de la región de la política.REGION: la región en la que quieres crear el MIG. Si usas una política de carga de trabajo, especifica la misma región que la de la política. En el caso de los MIGs regionales, en lugar de una región, puedes especificar las zonas de esa región mediante la marca--zones.
REST
Para crear un MIG con un tamaño de destino específico, haz una solicitud POST de la siguiente manera.
En este paso, las solicitudes para crear un MIG usan una política de carga de trabajo para especificar la colocación de las VMs. Si no quieres usar una política de carga de trabajo, elimina el campo resourcePolicies.workloadPolicy del cuerpo de la solicitud.
Crea un MIG de zona o regional de la siguiente manera:
- Para crear un MIG zonal, haz una solicitud
POSTal métodoinstanceGroupManagers.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, haz una solicitud
POSTal métodoregionInstanceGroupManagers.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 } }
PROJECT_ID: el ID del proyecto.ZONE: la zona en la que quieres crear el MIG. Si usas una política de carga de trabajo, especifica una zona dentro de la región de la política.REGION: la región en la que quieres crear un MIG. Si usas una política de carga de trabajo, especifica la misma región que la de la política.INSTANCE_TEMPLATE_URL: la URL de la plantilla de instancia que quieres usar para crear VMs en el MIG. La URL puede contener el ID o el nombre de la plantilla de instancia. Especifica uno de los siguientes valores:- En el caso de una plantilla de instancia regional, haz lo siguiente:
projects/PROJECT_ID/regions/REGION/instanceTemplates/INSTANCE_TEMPLATE_ID - En el caso de una plantilla de instancia global, haz lo siguiente:
INSTANCE_TEMPLATE_ID
- En el caso de una plantilla de instancia regional, haz lo siguiente:
MIG_NAME: el nombre del MIG.TARGET_SIZE: el número de VMs que quieres que haya en el MIG.WORKLOAD_POLICY_URL: opcional, la URL de la política de carga de trabajo. Si no quieres usar una política de carga de trabajo, puedes quitar el camporesourcePolicies.workloadPolicy.
Crear un MIG y una solicitud de cambio de tamaño
Para crear todas las instancias solicitadas al mismo tiempo, crea un MIG sin ninguna instancia. Después de crear el MIG vacío, crea una solicitud de cambio de tamaño en el MIG. Cuando los recursos están disponibles para crear todas las instancias a la vez, la solicitud de cambio de tamaño añade las instancias al MIG.
Para crear un MIG y una solicitud de cambio de tamaño, selecciona una de las siguientes opciones:
gcloud
En este paso, los comandos para crear un MIG usan una política de carga de trabajo para especificar la colocación de las VMs. Si no quieres usar una política de carga de trabajo, elimina la marca --workload-policy.
Crea un MIG de zona o regional y una solicitud de cambio de tamaño de la siguiente manera:
-
Para crear un MIG zonal y una solicitud de cambio de tamaño en él, sigue estos pasos:
-
Crea un MIG zonal con el comando
instance-groups managed createde la siguiente manera.gcloud compute instance-groups managed create MIG_NAME \ --template=INSTANCE_TEMPLATE_URL \ --size=0 \ --workload-policy=WORKLOAD_POLICY_URL \ --zone=ZONE -
Crea una solicitud de cambio de tamaño en el MIG zonal mediante el comando
instance-groups managed resize-requests createde la siguiente manera:gcloud compute instance-groups managed resize-requests create MIG_NAME \ --resize-request=RESIZE_REQUEST_NAME \ POPULATION_METHOD \ --zone=ZONE
-
-
Para crear un MIG regional y una solicitud de cambio de tamaño en él, sigue estos pasos:
-
Crea un MIG regional con el comando
instance-groups managed createde la siguiente manera.gcloud compute instance-groups managed create MIG_NAME \ --template=INSTANCE_TEMPLATE_URL \ --size=0 \ --workload-policy=WORKLOAD_POLICY_URL \ --zones=ZONE \ --target-distribution-shape=any-single-zone \ --instance-redistribution-type=none -
Crea una solicitud de cambio de tamaño en el grupo de instancias gestionado regional con el comando beta
instance-groups managed resize-requests createde la siguiente manera:gcloud beta compute instance-groups managed resize-requests create MIG_NAME \ --resize-request=RESIZE_REQUEST_NAME \ POPULATION_METHOD \ --region=REGION
-
Haz los cambios siguientes:
MIG_NAME: el nombre del MIG.INSTANCE_TEMPLATE_URL: la URL de la plantilla de instancia que quieres usar para crear VMs en el MIG. La URL puede contener el ID o el nombre de la plantilla de instancia. Especifica uno de los siguientes valores:- En el caso de una plantilla de instancia regional, haz lo siguiente:
projects/PROJECT_ID/regions/REGION/instanceTemplates/INSTANCE_TEMPLATE_ID - En el caso de una plantilla de instancia global, haz lo siguiente:
INSTANCE_TEMPLATE_ID
- En el caso de una plantilla de instancia regional, haz lo siguiente:
WORKLOAD_POLICY_URL: opcional, la URL de la política de carga de trabajo. Si no quieres usar una política de carga de trabajo, puedes quitar la marca--workload-policy.ZONE: la zona en la que quieres crear el MIG. En el caso de los MIGs regionales, también debe especificar una zona. Esta zona debe ser la que contenga el perfil de tu red de VPC y debe ser una zona en la que esté disponible el tipo de máquina. Para obtener más información, consulta Limitaciones.RESIZE_REQUEST_NAME: el nombre de la solicitud de cambio de tamaño, que debe ser único en el MIG especificado. De lo contrario, no se podrá crear la solicitud de cambio de tamaño.POPULATION_METHOD: método para añadir instancias al MIG. Usa una de las siguientes opciones:--resize-by=COUNT: añade el número especificado de instancias al MIG a la vez. Los nombres de las instancias se generan automáticamente.--instances=INSTANCE_NAME_LIST: añade al MIG todas las instancias con los nombres especificados a la vez. Sustituye INSTANCE_NAME_LIST por una lista de nombres de instancias separados por comas. El número de nombres que proporciones determinará el número de instancias que se crearán con esta solicitud de cambio de tamaño.
REGION: la región en la que se encuentra el MIG.
REST
En este paso, las solicitudes para crear un MIG usan una política de carga de trabajo para especificar la colocación de las VMs. Si no quieres usar una política de carga de trabajo, elimina el campo resourcePolicies.workloadPolicy del cuerpo de la solicitud.
Crea un MIG de zona o regional y una solicitud de cambio de tamaño de la siguiente manera:
- Para crear un MIG zonal y una solicitud de cambio de tamaño en él, sigue estos pasos:
- Crea un MIG zonal haciendo una solicitud
POSTal métodoinstanceGroupManagers.insertde la siguiente manera.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers { "versions": [ { "instanceTemplate": "INSTANCE_TEMPLATE_URL" } ], "name": "MIG_NAME", "targetSize": 0, "resourcePolicies": { "workloadPolicy": WORKLOAD_POLICY_URL } } - Crea una solicitud de cambio de tamaño en el MIG zonal haciendo una solicitud
POSTal métodoinstanceGroupManagerResizeRequests.insertde la siguiente manera:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME/resizeRequests { "name": "RESIZE_REQUEST_NAME", POPULATION_METHOD }
- Crea un MIG zonal haciendo una solicitud
- Para crear un MIG regional y una solicitud de cambio de tamaño en él, sigue estos pasos:
- Crea un MIG regional haciendo una solicitud
POSTal métodoregionInstanceGroupManagers.insertde la siguiente manera.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers { "versions": [ { "instanceTemplate": "INSTANCE_TEMPLATE_URL" } ], "name": "MIG_NAME", "targetSize": 0, "distributionPolicy": { "targetShape": "ANY_SINGLE_ZONE", "zones": [ { "zone": "projects/PROJECT_ID/zones/ZONE" } ] }, "updatePolicy": { "instanceRedistributionType": "NONE" }, "resourcePolicies": { "workloadPolicy": WORKLOAD_POLICY_URL } } - Crea una solicitud de cambio de tamaño en el MIG regional haciendo una solicitud
POSTal métodobeta.regionInstanceGroupManagerResizeRequests.insertde la siguiente manera:POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/MIG_NAME/resizeRequests { "name": "RESIZE_REQUEST_NAME", POPULATION_METHOD }
- Crea un MIG regional haciendo una solicitud
Haz los cambios siguientes:
PROJECT_ID: el ID del proyecto.ZONE: la zona en la que quieres crear el MIG. En el caso de los MIGs regionales, también debe especificar una zona. Esta zona debe ser la que contenga el perfil de tu red de VPC y debe ser una zona en la que esté disponible el tipo de máquina. Para obtener más información, consulta Limitaciones.REGION: la región en la que quieres crear el MIG.INSTANCE_TEMPLATE_URL: la URL de la plantilla de instancia que quieres usar para crear VMs en el MIG. La URL puede contener el ID o el nombre de la plantilla de instancia. Especifica uno de los siguientes valores:- En el caso de una plantilla de instancia regional, haz lo siguiente:
projects/PROJECT_ID/regions/REGION/instanceTemplates/INSTANCE_TEMPLATE_ID - En el caso de una plantilla de instancia global, haz lo siguiente:
INSTANCE_TEMPLATE_ID
- En el caso de una plantilla de instancia regional, haz lo siguiente:
MIG_NAME: el nombre del MIG.WORKLOAD_POLICY_URL: opcional, la URL de la política de carga de trabajo. Si no quieres usar una política de carga de trabajo, puedes quitar el camporesourcePolicies.workloadPolicy.RESIZE_REQUEST_NAME: el nombre de la solicitud de cambio de tamaño, que debe ser único en el MIG especificado. De lo contrario, no se podrá crear la solicitud de cambio de tamaño.POPULATION_METHOD: método para añadir instancias al MIG. Usa una de las siguientes opciones:"resizeBy":COUNT: sustituye COUNT por el número de instancias que quieras añadir al MIG a la vez. Los nombres de las instancias se generan automáticamente."instanceNames":INSTANCE_NAME_LIST: añade al MIG todas las instancias con los nombres especificados a la vez. Sustituye INSTANCE_NAME_LIST por una lista de nombres de instancias separados por comas. El número de nombres que proporciones determinará el número de instancias que se crearán con esta solicitud de cambio de tamaño.