En este documento se explica cómo crear en bloque un gran número de instancias de máquina virtual (VM) de computación de alto rendimiento (HPC) que sean idénticas e independientes entre sí. Las instancias usan tipos de máquinas H4D y se ejecutan en bloques de capacidad reservados.
Para obtener más información sobre cómo crear VMs en bloque, consulta Información sobre la creación de VMs en bloque. Para crear instancias en bloque que no usen reservas para disfrutar de funciones de gestión de clústeres mejoradas, consulta Crear VMs en bloque.
Para obtener información sobre otras formas de crear clústeres grandes de VMs H4D estrechamente acopladas, consulta la página Descripción general de la creación de clústeres de HPC.
Antes de empezar
Elige una opción de consumo: para crear instancias de computación en bloque y habilitar funciones de gestión de clústeres mejoradas, puedes elegir una reserva futura en modo Calendario o VMs de spot.
Si decides usar máquinas virtuales de Spot, es posible que no estén colocadas de forma compacta. Además, las VMs de Spot se pueden interrumpir según sea necesario y no cumplen los requisitos para gestionar eventos de mantenimiento de hosts para grupos de VMs.
Obtener capacidad: el proceso para obtener capacidad varía en función de la opción de consumo.
Para obtener más información, consulta Elegir una opción de consumo y obtener capacidad.
-
Si aún no lo has hecho, configura la autenticación.
La autenticación verifica tu identidad para acceder a Google Cloud servicios y APIs. Para ejecutar código o ejemplos desde un entorno de desarrollo local, puedes autenticarte en Compute Engine seleccionando una de las siguientes opciones:
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
Instala Google Cloud CLI. Después de la instalación, inicializa la CLI de Google Cloud ejecutando el siguiente comando:
gcloud initSi utilizas un proveedor de identidades (IdP) externo, primero debes iniciar sesión en la CLI de gcloud con tu identidad federada.
- Set a default region and zone.
REST
Para usar las muestras de la API REST de esta página en un entorno de desarrollo local, debes usar las credenciales que proporciones a la CLI de gcloud.
Instala Google Cloud CLI. Después de la instalación, inicializa la CLI de Google Cloud ejecutando el siguiente comando:
gcloud initSi utilizas un proveedor de identidades (IdP) externo, primero debes iniciar sesión en la CLI de gcloud con tu identidad federada.
Para obtener más información, consulta el artículo Autenticarse para usar REST de la documentación sobre Google Cloud autenticación.
Roles obligatorios
Para obtener los permisos que necesitas para crear VMs en bloque, pide a tu administrador que te conceda los siguientes roles de gestión de identidades y accesos en el proyecto:
-
Administrador de instancias de Compute (v1) (
roles/compute.instanceAdmin.v1) -
Administrador de redes de Compute (
roles/compute.networkAdmin)
Para obtener más información sobre cómo conceder roles, consulta el artículo Gestionar acceso a proyectos, carpetas y organizaciones.
Estos roles predefinidos contienen los permisos necesarios para crear máquinas virtuales en bloque. Para ver los permisos exactos que se necesitan, despliega la sección Permisos necesarios:
Permisos obligatorios
Para crear VMs en bloque, se necesitan los siguientes permisos:
-
compute.instances.createdel proyecto -
Para usar una imagen personalizada para crear la VM, sigue estos pasos:
compute.images.useReadOnlyen la imagen -
Para usar una captura para crear la VM, sigue estos pasos:
compute.snapshots.useReadOnlyen la captura -
Para usar una plantilla de instancia para crear la VM, haz lo siguiente:
compute.instanceTemplates.useReadOnlyen la plantilla de instancia -
Para especificar una subred para tu VM, haz lo siguiente:
compute.subnetworks.useen el proyecto o en la subred elegida -
Para especificar una dirección IP estática para la máquina virtual, haz lo siguiente:
compute.addresses.useen el proyecto -
Para asignar una dirección IP externa a la VM cuando se usa una red de VPC, haz lo siguiente:
compute.subnetworks.useExternalIpen el proyecto o en la subred elegida -
Para asignar una red antigua a la VM, sigue estos pasos:
compute.networks.useen el proyecto -
Para asignar una dirección IP externa a la VM cuando se usa una red antigua, haz lo siguiente:
compute.networks.useExternalIpen el proyecto -
Para definir los metadatos de la instancia de VM:
compute.instances.setMetadataen el proyecto -
Para definir etiquetas en la VM, haz lo siguiente:
compute.instances.setTagsen la VM -
Para definir etiquetas en la VM, sigue estos pasos:
compute.instances.setLabelsen la VM -
Para definir una cuenta de servicio que use la VM, sigue estos pasos:
compute.instances.setServiceAccounten la VM -
Para crear un disco para la VM, sigue estos pasos:
compute.disks.createen el proyecto -
Para adjuntar un disco en modo de solo lectura o de lectura y escritura, sigue estos pasos:
compute.disks.useen el disco -
Para adjuntar un disco en modo de solo lectura:
compute.disks.useReadOnlyen el disco
También puedes obtener estos permisos con roles personalizados u otros roles predefinidos.
Información general
Para crear instancias de HPC en bloque con el tipo de máquina H4D, sigue estos pasos:
- Opcional: crea redes de nube privada virtual.
- Opcional: crea una política de colocación si no vas a crear las instancias de proceso en el mismo bloque o subbloque.
- Crea instancias de H4D en bloque.
Opcional: Crea redes de nube privada virtual
Cuando creas una instancia de proceso, puedes especificar una red de VPC y una subred. Si omite esta configuración, se usarán la red y la subred predeterminadas.
- Si quieres configurar las instancias H4D de la MIG 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.
Para usar Cloud RDMA con instancias H4D, debes tener configuradas al menos dos redes, una para cada tipo de interfaz de red (NIC):
- 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/iRDMA para la conexión en red RDMA de Cloud entre instancias.
Las instancias que usan Cloud RDMA solo pueden tener una interfaz
IRDMA. Puedes añadir hasta ocho interfaces de redGVNICadicionales, lo que supone un total de 10 vNICs 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 de VPC con un perfil de red de VPC de Falcon. Usa el valor predeterminado de la unidad de transmisión máxima (MTU) de una red de VPC de Falcon, 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 para IRDMA.
- Opcional: Antes de ejecutar la secuencia de comandos, enumera los perfiles de red de VPC de Falcon para verificar que haya uno disponible.
gcloud 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 regular 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 Falcon VPC network for the Cloud RDMA network interface gcloud compute networks create RDMA_NAME_PREFIX-irdma \ --network-profile=ZONE-vpc-falcon \ --subnet-mode custom # Create a subnet in the Falcon VPC network gcloud 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 normales que usan 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 de VPC de Falcon. 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 uses0.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 emplazamiento
Puedes especificar la colocación de las VMs creando una política de colocación compacta. Cuando aplicas una política de emplazamiento compacta a tus VMs, Compute Engine hace todo lo posible para crear VMs que estén lo más cerca posible entre sí. Si tu aplicación es sensible a la latencia y quieres que las VMs estén más cerca entre sí (máxima compacidad), especifica el campo
Para crear una política de colocación compacta, selecciona una de las siguientes opciones:maxDistance(vista previa) al crear una política de colocación compacta. Un valor demaxDistancemás bajo asegura que las VMs estén más cerca, pero también aumenta la probabilidad de que no se creen algunas VMs.gcloud
Para crear una política de posición compacta, usa el comando
gcloud beta compute resource-policies create group-placement:gcloud beta compute resource-policies create group-placement POLICY_NAME \ --collocation=collocated \ --max-distance=MAX_DISTANCE \ --region=REGIONHaz los cambios siguientes:
POLICY_NAME: el nombre de la política de posición compacta.MAX_DISTANCE: la configuración de distancia máxima de tus VMs. El valor debe ser3para colocar las VMs en los bloques adyacentes o2para colocarlas en el mismo bloque. Para obtener información sobre el número máximo de VMs admitidas por cadamaxDistancepor serie de máquinas, consulta el artículo Acerca de las políticas de colocación compacta de la documentación de Compute Engine.REGION: la región en la que quieres crear la política de posición compacta. 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 disponibles.
REST
Para crear una política de emplazamiento compacta, haz una solicitud
POSTal método betaresourcePolicies.insert. En el cuerpo de la solicitud, incluye el campocollocationcon el valorCOLLOCATEDy el campomaxDistance.POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/resourcePolicies { "name": "POLICY_NAME", "groupPlacementPolicy": { "collocation": "COLLOCATED", "maxDistance": MAX_DISTANCE } }Haz los cambios siguientes:
PROJECT_ID: tu ID de proyectoPOLICY_NAME: el nombre de la política de posición compacta.MAX_DISTANCE: la configuración de distancia máxima de tus VMs. El valor debe ser3para colocar las VMs en los bloques adyacentes o2para colocarlas en el mismo bloque. Para obtener información sobre el número máximo de VMs admitidas por cadamaxDistancepor serie de máquinas, consulta el artículo Acerca de las políticas de colocación compacta de la documentación de Compute Engine.REGION: la región en la que quieres crear la política de posición compacta. 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 disponibles.
Crear instancias de VM en bloque
En las instrucciones de esta sección se describe cómo crear máquinas virtuales H4D en bloque.
Consulta las siguientes limitaciones antes de crear instancias H4D con Cloud RDMA:
- No puedes usar la migración en directo durante los eventos de mantenimiento del host con instancias que tengan una interfaz de red Cloud RDMA. Debes configurar la instancia para que se finalice durante los eventos de mantenimiento.
- La interfaz de red gVNIC solo puede tener una dirección IPv6, ya sea interna o externa, pero no ambas.
Solo puedes usar direcciones IPv4 con interfaces de red IRDMA y redes VPC de Falcon.
gcloud
Para crear VMs en bloque, usa el comando
gcloud compute instances create.Los parámetros que debe especificar dependen de la opción de consumo que utilice en esta implementación. Selecciona la pestaña que corresponda al modelo de aprovisionamiento de tu opción de consumo.
Con reserva
Empieza con el siguiente
gcloud compute instances createcomando.gcloud compute instances bulk create \ --name-pattern=NAME_PATTERN \ --count=COUNT \ --machine-type=MACHINE_TYPE \ --image-family=IMAGE_FAMILY \ --image=project= IMAGE_PROJECT \ --instance-termination=action=DELETE \ --maintenance-policy=TERMINATE \ --region=REGION \ --boot-disk-type=hyperdisk-balanced \ --boot-disk-size=DISK_SIZEEste agente debe seguir estos pasos:
Haz los cambios siguientes:
NAME_PATTERN: el patrón de nombre de las instancias. Por ejemplo, si usasvm-#para el patrón de nombre, se generarán instancias con nombres comovm-1yvm-2, hasta el número especificado por la marca--count.COUNT: número de instancias que se van a crear.MACHINE_TYPE: el tipo de máquina que se va a usar en las instancias. Usa uno de los tipos de máquinas H4D, comoh4d-highmem-192-lssd.IMAGE_FAMILY: la familia de imágenes de la imagen del SO que quieras usar. Por ejemplo,rocky-linux-9-optimized-gcp.Para ver una lista de las imágenes de SO compatibles, consulta Sistema operativo compatible. Elige una versión de imagen del SO que admita la interfaz IRDMA.
IMAGE_PROJECT: el ID del proyecto de la imagen del SO. Por ejemplo,rocky-linux-cloud.REGION: especifica una región en la que esté disponible el tipo de máquina que quieras usar. Por ejemplo,europe-west4. Para obtener información sobre las regiones disponibles, consulta Regiones y zonas disponibles.DISK_SIZE: opcional, tamaño del disco de arranque en GiB. El valor debe ser un número entero.
Opcional: Si has elegido usar una política de emplazamiento compacta, incluye la marca
--resource-policies:--resource-policies=POLICY_NAMESustituye POLICY_NAME por el nombre de la política de colocación compacta.
Para especificar la reserva, haz una de las siguientes acciones:
-
Si usas una política de colocación o si las VMs se pueden colocar en cualquier lugar de tu bloque de reserva, añade las siguientes marcas al comando:
--provisioning-model=RESERVATION_BOUND \ --reservation-affinity=specific \ --reservation=RESERVATION_NAME \Sustituye RESERVATION_NAME por el nombre de la reserva; por ejemplo,
h4d-highmem-exfr-prod. -
Si no usas una política de colocación compacta y quieres que las instancias se coloquen en un bloque específico, añade las siguientes marcas al comando:
--provisioning-model=RESERVATION_BOUND \ --reservation-affinity=specific \ --reservation=<RESERVATION_BLOCK_NAME \Sustituye RESERVATION_BLOCK_NAME por el nombre de un bloque de la reserva. Por ejemplo,
h4d-highmem-exfr-prod/reservationBlocks/h4d-highmem-exfr-prod-block-1.
Para ver el nombre de la reserva o los bloques de reserva disponibles, consulta Ver capacidad.
-
-
Opcional: Para configurar las instancias de forma que usen RDMA de Cloud, añade al comando las marcas similares a las siguientes. En este ejemplo se configuran dos interfaces de red GVNIC y una interfaz de red IRDMA:
--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 \Haz los cambios siguientes:
GVNIC_NAME_PREFIX: el prefijo de nombre que has usado al crear la red VPC y la subred de la interfaz gVNIC.En el caso de la primera interfaz de red gVNIC, puedes omitir las marcas
networkysubnetpara usar la reddefault.STACK_TYPE: Opcional: el tipo de pila de la interfaz de red gVNIC.STACK_TYPEdebe serIPV4_ONLYoIPV4_IPV6. El valor predeterminado esIPV4_ONLY.EXTERNAL_IPV4_ADDRESS: Opcional: una dirección IPv4 externa estática que se va a usar con la interfaz de red. Debes haber reservado una dirección IPv4 externa previamente. Realiza una de las siguientes acciones:- 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 reciba una dirección IP externa efímera.
Para especificar una dirección IPv6 externa, usa la marca
--external-ipv6-address.RDMA_NAME_PREFIX: el prefijo de nombre que usaste al crear la red de VPC y la subred de la interfaz IRDMA.
- Opcional: Añade más marcas para personalizar el resto de las propiedades de la instancia, según sea necesario.
- Ejecuta el comando.
Spot
Empieza con el siguiente
gcloud compute instances createcomando.gcloud compute instances bulk create \ --name-pattern=NAME_PATTERN \ --count=COUNT \ --machine-type=MACHINE_TYPE \ --image-family=IMAGE_FAMILY \ --image=project= IMAGE_PROJECT \ --region=REGION \ --boot-disk-type=hyperdisk-balanced \ --boot-disk-size=DISK_SIZE \ --provisioning-model=SPOT \ --instance-termination=action=TERMINATION_ACTIONEste agente debe seguir estos pasos:
Haz los cambios siguientes:
NAME_PATTERN: el patrón de nombre de las instancias. Por ejemplo, si usasvm-#para el patrón de nombre, se generarán instancias con nombres comovm-1yvm-2, hasta el número especificado por la marca--count.COUNT: número de instancias que se van a crear.MACHINE_TYPE: el tipo de máquina que se va a usar en las instancias. Usa uno de los tipos de máquinas H4D, comoh4d-highmem-192-lssd.IMAGE_FAMILY: la familia de imágenes de la imagen del SO que quieras usar. Por ejemplo,rocky-linux-9-optimized-gcp.Para ver una lista de las imágenes de SO compatibles, consulta Sistema operativo compatible. Elige una versión de imagen del SO que admita la interfaz IRDMA.
IMAGE_PROJECT: el ID del proyecto de la imagen del SO. Por ejemplo,rocky-linux-cloud.REGION: especifica una región en la que esté disponible el tipo de máquina que quieras usar. Por ejemplo,europe-west4. Para obtener información sobre las regiones disponibles, consulta Regiones y zonas disponibles.DISK_SIZE: opcional, tamaño del disco de arranque en GiB. El valor debe ser un número entero.TERMINATION_ACTION: la acción que se debe llevar a cabo cuando Compute Engine desaloja la instancia, ya seaSTOP(valor predeterminado) oDELETE.
-
Opcional: Si has elegido usar una política de emplazamiento compacta, añade la siguiente marca al comando:
--resource-policies=POLICY_NAME \Sustituye
POLICY_NAMEpor el nombre de la política de colocación compacta. -
Opcional: Para configurar las instancias de forma que usen RDMA de Cloud, añade al comando las marcas similares a las siguientes. En este ejemplo se configuran dos interfaces de red GVNIC y una interfaz de red IRDMA:
--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 \Haz los cambios siguientes:
GVNIC_NAME_PREFIX: el prefijo de nombre que has usado al crear la red VPC y la subred de la interfaz gVNIC.En el caso de la primera interfaz de red gVNIC, puedes omitir las marcas
networkysubnetpara usar la reddefault.STACK_TYPE: Opcional: el tipo de pila de la interfaz de red gVNIC.STACK_TYPEdebe serIPV4_ONLYoIPV4_IPV6. El valor predeterminado esIPV4_ONLY.EXTERNAL_IPV4_ADDRESS: Opcional: una dirección IPv4 externa estática que se va a usar con la interfaz de red. Debes haber reservado una dirección IPv4 externa previamente. Realiza una de las siguientes acciones:- 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 reciba una dirección IP externa efímera.
Para especificar una dirección IPv6 externa, usa la marca
--external-ipv6-address.RDMA_NAME_PREFIX: el prefijo de nombre que usaste al crear la red de VPC y la subred de la interfaz IRDMA.
- Opcional: Añade más marcas para personalizar el resto de las propiedades de la instancia, según sea necesario.
- Ejecuta el comando.
REST
Para crear instancias de VM en bloque, haz una solicitud
POSTal métodoinstances.bulkInsert.Los parámetros que debe especificar dependen de la opción de consumo que utilice en esta implementación. Selecciona la pestaña que corresponda al modelo de aprovisionamiento de tu opción de consumo.
Con reserva
Empieza con la siguiente solicitud
POSTal métodoinstances.bulkInsert.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/bulkInsert { "namePattern":"NAME_PATTERN", "count":"COUNT", "instanceProperties":{ "machineType":"MACHINE_TYPE", "disks":[ { "boot":true, "initializeParams":{ "diskSizeGb":"DISK_SIZE", "diskType":"hyperdisk-balanced", "sourceImage":"projects/IMAGE_PROJECT/global/images/family/IMAGE_FAMILY" }, "mode":"READ_WRITE", "type":"PERSISTENT" } ], "scheduling":{ "provisioningModel":"RESERVATION_BOUND", "instanceTerminationAction":"DELETE", "onHostMaintenance": "TERMINATE", "automaticRestart":true } } }Este agente debe seguir estos pasos:
Haz los cambios siguientes:
PROJECT_ID: el ID del proyecto en el que quieres crear las instancias.ZONE: especifica una zona en la que esté disponible el tipo de máquina que quieras usar. Si usas una política de colocación compacta, utiliza una zona de la misma región que la política de colocación compacta. Para obtener información sobre las regiones en las que están disponibles los tipos de máquinas H4D, consulta Regiones y zonas disponibles.NAME_PATTERN: el patrón de nombre de las instancias. Por ejemplo, si se usavm-#como patrón de nombre, se generarán instancias con nombres comovm-1yvm-2, hasta el número especificado en el campocount.COUNT: número de instancias que se van a crear.MACHINE_TYPE: el tipo de máquina que se va a usar en las instancias. Usa uno de los tipos de máquinas H4D, comoh4d-highmem-192-lssd.DISK_SIZE: tamaño del disco de arranque en GiB.IMAGE_PROJECT: el ID de proyecto de la imagen del SO, por ejemplo,debian-cloud.IMAGE_FAMILY: la familia de imágenes del SO de la imagen que quieras usar. Por ejemplo,rocky-linux-9-optimized-gcp. Para consultar una lista de imágenes de SO compatibles, consulta Sistema operativo compatible. Elige una versión de imagen del SO que admita la interfaz IRDMA.
Opcional: Si has elegido usar una política de emplazamiento compacta, incluye el parámetro
resourcePoliciesen el cuerpo de la solicitud como parte del parámetro"instanceProperties"."resourcePolicies": [ "projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME" ],Sustituye POLICY_NAME por el nombre de la política de colocación compacta.
-
Para especificar la reserva, haz una de las siguientes acciones:
-
Si utilizas una política de colocación o si las máquinas virtuales se pueden colocar en cualquier lugar de tu bloque de reserva, añade lo siguiente al cuerpo de la solicitud como parte del parámetro
"instanceProperties":"reservationAffinity":{ "consumeReservationType":"SPECIFIC_RESERVATION", "key":"compute.googleapis.com/reservation-name", "values":[ "RESERVATION_NAME" ], },Sustituye RESERVATION_NAME por el nombre de la reserva; por ejemplo,
h4d-highmem-exfr-prod. -
Si no usas una política de colocación compacta o quieres que las instancias se coloquen en un bloque específico, añade lo siguiente al cuerpo de la solicitud como parte del parámetro
"instanceProperties":"reservationAffinity":{ "consumeReservationType":"SPECIFIC_RESERVATION", "key":"compute.googleapis.com/reservation-name", "values":[ "RESERVATION_BLOCK_NAME" ], },Sustituye RESERVATION_BLOCK_NAME por el nombre de un bloque de la reserva. Por ejemplo,
h4d-highmem-exfr-prod/reservationBlocks/h4d-highmem-exfr-prod-block-1.
Para ver el nombre de la reserva o los bloques de reserva disponibles, consulta Ver capacidad.
-
Si quieres configurar las instancias para que usen Cloud RDMA, incluye un bloque de parámetros similar al siguiente en el cuerpo de la solicitud como parte del parámetro
"instanceProperties". En este ejemplo, se configuran dos interfaces de red GVNIC y una interfaz de red IRDMA:"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", } ],Haz los cambios siguientes:
GVNIC_NAME_PREFIX: el prefijo de nombre que has usado al crear la red VPC y la subred de la interfaz gVNIC.En el caso de la interfaz de red gVNIC, puedes omitir los campos
networkysubnetworkpara usar la reddefault.EXTERNAL_IPV4_ADDRESS: Opcional: una dirección IPv4 externa estática que se va a usar con la interfaz de red. Debes haber reservado una dirección IPv4 externa previamente.RDMA_NAME_PREFIX: el prefijo de nombre que usaste al crear la red VPC y la subred de la interfaz IRDMA.
- Opcional: Personaliza el resto de las propiedades de la instancia según sea necesario.
- Envía la solicitud.
Spot
Empieza con la siguiente solicitud
POSTal métodoinstances.bulkInsert.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/bulkInsert { "namePattern":"NAME_PATTERN", "count":"COUNT", "instanceProperties":{ "machineType":"MACHINE_TYPE", "disks":[ { "boot":true, "initializeParams":{ "diskSizeGb":"DISK_SIZE", "diskType":"hyperdisk-balanced", "sourceImage":"projects/IMAGE_PROJECT/global/images/family/IMAGE_FAMILY" }, "mode":"READ_WRITE", "type":"PERSISTENT" } ], "scheduling":{ "provisioningModel":"SPOT", "instanceTerminationAction":"TERMINATION_ACTION" } } }Este agente debe seguir estos pasos:
Haz los cambios siguientes:
PROJECT_ID: el ID del proyecto en el que quieres crear las instancias.ZONE: especifica una zona en la que esté disponible el tipo de máquina que quieras usar. Si usas una política de colocación compacta, utiliza una zona de la misma región que la política de colocación compacta. Para obtener información sobre las regiones en las que están disponibles los tipos de máquinas H4D, consulta Regiones y zonas disponibles.NAME_PATTERN: el patrón de nombre de las instancias. Por ejemplo, si se usavm-#como patrón de nombre, se generarán instancias con nombres comovm-1yvm-2, hasta el número especificado en el campocount.COUNT: número de instancias que se van a crear.MACHINE_TYPE: el tipo de máquina que se va a usar en las instancias. Usa uno de los tipos de máquinas H4D, comoh4d-highmem-192-lssd.DISK_SIZE: tamaño del disco de arranque en GiB.IMAGE_PROJECT: el ID de proyecto de la imagen del SO, por ejemplo,debian-cloud.IMAGE_FAMILY: la familia de imágenes del SO de la imagen que quieras usar. Por ejemplo,rocky-linux-9-optimized-gcp. Para consultar una lista de imágenes de SO compatibles, consulta Sistema operativo compatible. Elige una versión de imagen del SO que admita la interfaz IRDMA.TERMINATION_ACTION: la acción que se debe llevar a cabo cuando Compute Engine desaloja la instancia. Puede serSTOP(valor predeterminado) oDELETE.
Opcional: Si has elegido usar una política de emplazamiento compacta, incluye el parámetro
resourcePoliciescomo parte del parámetro"instanceProperties"."resourcePolicies": [ "projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME" ]Si quieres configurar las instancias para que usen Cloud RDMA, incluye un bloque de parámetros similar al siguiente en el cuerpo de la solicitud como parte del parámetro
"instanceProperties". En este ejemplo, se configuran dos interfaces de red GVNIC y una interfaz de red IRDMA:"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", } ],Haz los cambios siguientes:
GVNIC_NAME_PREFIX: el prefijo de nombre que has usado al crear la red VPC y la subred de la interfaz gVNIC.En el caso de la interfaz de red gVNIC, puedes omitir los campos
networkysubnetworkpara usar la reddefault.EXTERNAL_IPV4_ADDRESS: Opcional: una dirección IPv4 externa estática que se usará con la interfaz de red. Debes haber reservado una dirección IPv4 externa previamente.RDMA_NAME_PREFIX: el prefijo de nombre que usaste al crear la red VPC y la subred de la interfaz IRDMA.
- Opcional: Personaliza el resto de las propiedades de la instancia según sea necesario.
- Envía la solicitud.
Siguientes pasos
- Ver la topología de clústeres H4D.
- Conéctate a máquinas virtuales Linux.
- Configurar y escalar aplicaciones MPI en VMs H4D con Cloud RDMA.
A menos que se indique lo contrario, el contenido de esta página está sujeto a la licencia Reconocimiento 4.0 de Creative Commons y las muestras de código están sujetas a la licencia Apache 2.0. Para obtener más información, consulta las políticas del sitio web de Google Developers. Java es una marca registrada de Oracle o sus afiliados.
Última actualización: 2026-01-14 (UTC).
[[["Es fácil de entender","easyToUnderstand","thumb-up"],["Me ofreció una solución al problema","solvedMyProblem","thumb-up"],["Otro","otherUp","thumb-up"]],[["Es difícil de entender","hardToUnderstand","thumb-down"],["La información o el código de muestra no son correctos","incorrectInformationOrSampleCode","thumb-down"],["Me faltan las muestras o la información que necesito","missingTheInformationSamplesINeed","thumb-down"],["Problema de traducción","translationIssue","thumb-down"],["Otro","otherDown","thumb-down"]],["Última actualización: 2026-01-14 (UTC)."],[],[]] -