En este documento se explica cómo funciona el grupo de reserva de instancias de máquina virtual (VM) suspendidas y detenidas, y cómo puedes usarlo para acelerar el escalado horizontal de un grupo de instancias gestionado (MIG).
Antes de empezar
- Consulta la página de introducción sobre las máquinas virtuales suspendidas y detenidas en un MIG.
-
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 init
Si 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.
Terraform
Para usar las muestras de Terraform de esta página en un entorno de desarrollo local, instala e inicializa la CLI de gcloud y, a continuación, configura las credenciales predeterminadas de la aplicación con tus credenciales de usuario.
Instala Google Cloud CLI.
Si utilizas un proveedor de identidades (IdP) externo, primero debes iniciar sesión en la CLI de gcloud con tu identidad federada.
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
Para obtener más información, consulta Set up authentication for a local development environment.
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.
Si 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 autenticación de Google Cloud .
Usar la API de MIG para el autoescalado
Te recomendamos que uses el escalador automático de Compute Engine para escalar automáticamente tu MIG. Sin embargo, si por algún motivo prefieres usar otro escalador automático, utiliza los endpoints de la API MIG para gestionar las VMs suspendidas y detenidas.
Elegir entre grupos suspendidos y detenidos
La elección entre grupos suspendidos y detenidos depende de tu caso de uso específico. Para obtener el mejor rendimiento, debe experimentar con diferentes tipos de grupo de espera en sus situaciones de escalado horizontal para determinar cuál se adapta mejor a sus necesidades. Es posible que diferentes cargas de trabajo muestren tiempos de publicación más cortos con diferentes opciones. En algunos casos, la operación de copiar el estado de la memoria del almacenamiento a la VM puede tardar más tiempo que reiniciar la VM o crear una VM desde cero.
Para encontrar el mejor enfoque, empieza por estas directrices:
- Usa VMs suspendidas si tus VMs requieren una inicialización de memoria que lleve mucho tiempo, ya que las VMs suspendidas conservan el estado de la memoria. Asegúrate de que tu aplicación se pueda suspender y reanudar. Para mantener el estado de la memoria, se necesita almacenamiento adicional y puede que se apliquen costes adicionales.
- Usa máquinas virtuales detenidas si la inicialización de tu máquina virtual se centra principalmente en la inicialización de los datos almacenados en los discos persistentes.
Editar la política de espera de un MIG
En esta sección se describe cómo definir el modo de grupo de espera para ampliar el grupo y el retraso inicial.
Consola
En la consola, ve a la página Grupos de instancias. Google Cloud
Haga clic en el nombre del grupo de instancias que quiera editar.
Haz clic en Editar para modificar este grupo de instancias administrado.
Haga clic en Opciones avanzadas para desplegar la sección.
En la sección Grupo de espera, selecciona Escalar horizontalmente.
En el campo Retraso inicial, introduce el número de segundos que el MIG debe esperar antes de suspender o detener una VM. El retraso inicial da tiempo a la secuencia de comandos de inicialización para preparar la VM para un escalado horizontal rápido.
Haz clic en Guardar.
gcloud
Usa el
instance-groups managed update
comando y especifica el modo de operación y el retraso inicial.gcloud compute instance-groups managed update MIG_NAME \ --standby-policy-mode=scale-out-pool \ --standby-policy-initial-delay=DELAY \ [--region=REGION | --zone=ZONE]
Haz los cambios siguientes:
MIG_NAME
: el nombre del MIG.DELAY
: número de segundos que debe esperar el MIG antes de suspender o detener una VM. El retraso inicial da al script de inicialización el tiempo necesario para preparar tu VM para un escalado horizontal rápido.REGION
: en el caso de un MIG regional, la región en la que se encuentra el MIG.ZONE
: en el caso de un MIG zonal, la zona en la que se encuentra el MIG.
Terraform
En el siguiente ejemplo se crea un MIG zonal con una política de espera. Usa el bloque
standby_policy
para definir un retraso inicial y el modoSCALE_OUT_POOL
.En el ejemplo se usa el
google_compute_instance_group_manager
recurso. En el caso de los MIGs regionales, usa elgoogle_compute_region_instance_group_manager
recurso.Para saber cómo aplicar o quitar una configuración de Terraform, consulta Comandos básicos de Terraform.
REST
Usa el método
instanceGroupManager.patch
y especifica el modo de operación y el retraso inicial en el cuerpo de la solicitud. En el caso de los MIGs regionales, utiliza el métodoregionInstanceGroupManager.patch
.PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME { // ... "standbyPolicy": { "mode": "SCALE_OUT_POOL", "initialDelaySec": DELAY } // ... }
Haz los cambios siguientes:
PROJECT_ID
: el ID de tu proyecto.ZONE
: en el caso de un MIG zonal, la zona en la que se encuentra el MIG.- En el caso de un MIG regional, sustituye
zones/ZONE
porregions/REGION
y especifica la región del MIG.
- En el caso de un MIG regional, sustituye
MIG_NAME
: el nombre del MIG.DELAY
: número de segundos que debe esperar el MIG antes de suspender o detener una VM. El retraso inicial da al script de inicialización el tiempo necesario para preparar tu VM para un escalado horizontal rápido.
Cambiar el tamaño del grupo de espera de un MIG
En esta sección se describe cómo cambiar el tamaño de los grupos de espera de las VMs suspendidas y detenidas de un MIG.
Consola
En la consola, ve a la página Grupos de instancias. Google Cloud
Haga clic en el nombre del grupo de instancias que quiera editar.
Haz clic en Editar para modificar este grupo de instancias administrado.
Haga clic en Opciones avanzadas para desplegar la sección.
En la sección Grupo de espera, introduce los nuevos tamaños en los campos VMs suspendidas y VMs detenidas.
Haz clic en Guardar.
gcloud
Usa el comando
instance-groups managed update
con las marcas--suspended-size
y--stopped-size
.gcloud compute instance-groups managed update MIG_NAME \ --suspended-size=SUSPENDED_SIZE \ --stopped-size=STOPPED_SIZE \ [--region=REGION | --zone=ZONE]
Haz los cambios siguientes:
MIG_NAME
: el nombre del MIG en el que se va a suspender una instancia.SUSPENDED_SIZE
: número de VMs suspendidas que el MIG debe mantener en cualquier momento.STOPPED_SIZE
: número de VMs detenidas que el MIG debe mantener en un momento dado.REGION
: en el caso de un MIG regional, la región en la que se encuentra el MIG.ZONE
: en el caso de un MIG zonal, la zona en la que se encuentra el MIG.
Terraform
En el siguiente ejemplo se crea un MIG zonal con tamaños de destino para las VMs suspendidas y detenidas. Para definir los tamaños objetivo, utilice los argumentos
target_suspended_size
ytarget_stopped_size
.En el ejemplo se usa el
google_compute_instance_group_manager
recurso. En el caso de los MIGs regionales, usa elgoogle_compute_region_instance_group_manager
recurso.Para saber cómo aplicar o quitar una configuración de Terraform, consulta Comandos básicos de Terraform.
REST
Usa el método
instanceGroupManager.patch
y especifica los tamaños de los grupos de VMs suspendidas y detenidas en el cuerpo de la solicitud. En el caso de los MIGs regionales, utiliza el métodoregionInstanceGroupManager.patch
.PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME { // ... "targetSuspendedSize": SUSPENDED_SIZE, "targetStoppedSize": STOPPED_SIZE // ... }
Haz los cambios siguientes:
PROJECT_ID
: el ID de tu proyecto.ZONE
: en el caso de un MIG zonal, la zona en la que se encuentra el MIG.- En el caso de un MIG regional, sustituye
zones/ZONE
porregions/REGION
y especifica la región del MIG.
- En el caso de un MIG regional, sustituye
MIG_NAME
: el nombre del MIG en el que se va a detener una instancia.SUSPENDED_SIZE
: número de VMs suspendidas que el MIG debe mantener en cualquier momento.STOPPED_SIZE
: número de VMs detenidas que el MIG debe mantener en un momento dado.
Siguientes pasos
- Consulta cómo suspender o detener manualmente las VMs de un MIG.
- Consulta más información sobre las actualizaciones de las VMs suspendidas y detenidas en un MIG.
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: 2025-09-12 (UTC).
-