Esta página explica cómo puede configurar las instancias de máquinas virtuales (VM) en un grupo de instancias administrado (MIG) y los métodos que puede utilizar para aplicar la configuración a las VM existentes en el grupo.
La configuración prevista para las máquinas virtuales en un MIG se especifica mediante los siguientes componentes de configuración de máquinas virtuales:
- Obligatorio: plantilla de instancia
- Opcional: configuración de todas las instancias
- Opcional: configuración con estado
Cada vez que actualizas la configuración deseada mediante el uso de esos componentes, Compute Engine aplica automáticamente tu configuración actualizada a las nuevas VM que se agregan al grupo.
Para aplicar una configuración actualizada a las máquinas virtuales existentes, utilice los métodos descritos en esta página:
- Implementaciones automáticas con un presupuesto de interrupción y actualizaciones canarias opcionales de nuevas plantillas.
- Actualizaciones manuales selectivas solo para máquinas virtuales específicas, para minimizar las interrupciones
- Recreación de máquinas virtuales específicas
También puede configurar su MIG para aplicar la última configuración disponible a las máquinas virtuales durante las reparaciones de las máquinas virtuales. Para obtener más información, consulte Aplicar actualizaciones de configuración durante las reparaciones .
Si solo necesita cambiar el tamaño de un MIG, consulte la documentación sobre cómo agregar o eliminar máquinas virtuales en un MIG . Si desea obtener información sobre la configuración de funciones MIG, consulte los documentos sobre escalado automático , reparación automática , equilibrio de carga y cargas de trabajo con estado .
Antes de comenzar
- Si aún no lo has hecho, configura la autenticación. La autenticación es el proceso mediante el cual se verifica su identidad para acceder a Google Cloud servicios y API. Para ejecutar código o muestras 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
-
After installing the Google Cloud CLI, initialize it by running the following command:
gcloud init
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
- Set a default region and zone.
- Automático (proactivo) : utilice este método si desea que MIG aplique automáticamente nuevas configuraciones a todas o a un subconjunto de máquinas virtuales existentes en el grupo. El nivel de interrupción de las máquinas virtuales en ejecución depende de la política de actualización que configure. Puede utilizar este método para actualizar canary nuevas plantillas de instancias. Para utilizar este método, configure el tipo de actualización del MIG en "proactivo".
- Selectivo (oportunista) : utilice este método si desea aplicar la actualización manualmente o si desea actualizar todas las máquinas virtuales existentes en el grupo a la vez. Usted apunta a cualquiera o todas las máquinas virtuales para que se actualicen a la configuración más reciente. Para utilizar este método, configure el tipo de actualización del MIG en "oportunista".
- Recreación de máquinas virtuales : aplique nuevas configuraciones recreando máquinas virtuales específicas.
- El lanzamiento de una actualización se realiza automáticamente según sus especificaciones, sin necesidad de realizar aportaciones adicionales después de la solicitud inicial. Puede especificar la velocidad de implementación, el nivel de interrupción de su servicio y el alcance de la actualización.
- Puede automatizar implementaciones parciales, lo que permite realizar pruebas canary.
- Puede seleccionar las máquinas virtuales que desea actualizar.
- Puede controlar el tiempo y la secuencia de las actualizaciones.
- Puedes usar la CLI de gcloud o REST para actualizar todas las instancias de inmediato.
Una de las máquinas virtuales de su MIG se cae y necesita ser reparada, pero no desea que cambie su configuración. Si configura el tipo de actualización del MIG en oportunista y no aplica actualizaciones de manera forzada durante las reparaciones , Compute Engine repara la VM usando la misma configuración que se usó para crear esa VM, incluso si la plantilla de instancia original ya no existe.
Tiene un MIG con escalado automático y desea aplicar una actualización no crítica sin ninguna urgencia. Para garantizar que Compute Engine no destruya sus máquinas virtuales existentes para aplicar la actualización, configure el tipo de actualización del MIG en oportunista. Al realizar el escalado vertical, el escalador automático finaliza preferentemente las máquinas virtuales con la configuración anterior. Cuando el grupo se amplía horizontalmente, crea máquinas virtuales con la configuración más reciente.
En la consola de Google Cloud, vaya a la página de grupos de instancias .
Seleccione el MIG que desea actualizar.
En la parte superior de la página, haga clic en Actualizar máquinas virtuales .
Para configurar una plantilla diferente para el grupo, en Nueva plantilla , seleccione la plantilla de instancia que desea usar.
En Configuración de actualización , elija actualización automática o selectiva.
-
INSTANCE_GROUP_NAME
: el nombre del grupo -
NEW_TEMPLATE
: el nombre de la nueva plantilla para el grupo -
TYPE
: el tipo de actualización,opportunistic
oproactive
-
PROJECT_ID
: el proyecto en el que existe el MIG. -
REGION
: la región donde se encuentra su MIG. Para un MIG zonal, reemplaceregions/ REGION
conzones/ ZONE
. -
INSTANCE_GROUP_NAME
: el nombre del grupo. -
NEW_TEMPLATE
: el nombre de la nueva plantilla para el grupo. -
TYPE
: el tipo de actualización,OPPORTUNISTIC
oPROACTIVE
. - Aplicar automáticamente actualizaciones de configuración de VM en un MIG
- Aplicar selectivamente actualizaciones de configuración de VM en un MIG
- Máquinas virtuales en ejecución, suspendidas y detenidas
- Máquinas virtuales con estado
SUSPENDING
oSTOPPING
- Elimina las máquinas virtuales suspendidas y detenidas.
- Crea nuevas máquinas virtuales con la nueva plantilla de instancia.
- Realiza el proceso de inicialización.
- Suspende o detiene las máquinas virtuales.
- Reanuda o inicia las máquinas virtuales.
- Realiza la actualización en las VM cuando se están ejecutando.
- Realiza el proceso de inicialización.
- Suspende o detiene las máquinas virtuales.
- En el modo de política de espera
manual
, MIG actualiza solo las máquinas virtuales en ejecución según la cantidad o el porcentaje de máquinas virtuales a las que desea aplicar la actualización. Las VM suspendidas y detenidas permanecen en las versiones anteriores. - En el modo de política en espera
scale-out-pool
, no puede iniciar una actualización canary en el MIG. Estableces ambos campos con el mismo valor.
Esta es una solicitud válida. En este caso, no crea ambigüedad y la nueva plantilla de instancia se aplica al MIG.
Por ejemplo, en la siguiente solicitud, la
instanceTemplate
de nivel superior y el campoversions
especifican la misma plantilla de instancia que es diferente de la plantilla actual existente, por lo que el MIG se actualiza a la nueva plantilla de instancia:{ "instanceTemplate": "global/instanceTemplates/NEW_TEMPLATE", "versions": [ { "instanceTemplate": "global/instanceTemplates/NEW_TEMPLATE" } ], "updatePolicy": { "type": "PROACTIVE" } }
Establece ambos campos con valores que no coinciden, pero solo un valor difiere de la plantilla de instancia actual en el MIG.
Esta es una solicitud válida. El campo que es diferente de la configuración actual se toma como el valor previsto. Por ejemplo, llama al método
update()
y proporciona ambos campos, pero solo se actualiza un campo:{ "instanceTemplate": "global/instanceTemplates/CURRENT_TEMPLATE", "versions": [ { "instanceTemplate": "global/instanceTemplates/NEW_TEMPLATE" } ], "updatePolicy": { "type": "PROACTIVE" } }
Establece ambos campos con valores que no coinciden y ambos valores difieren de la plantilla de instancia actual en el MIG.
Esta configuración no es válida y devuelve un error porque no hay una intención clara.
{ "instanceTemplate": "global/instanceTemplates/NEW_TEMPLATE", "versions": [ { "instanceTemplate": "global/instanceTemplates/A_DIFFERENT_NEW_TEMPLATE" } ], "updatePolicy": { "type": "PROACTIVE" } }
- Obtenga más información sobre cómo implementar automáticamente una nueva plantilla de instancia en un MIG .
- Obtenga más información sobre cómo actualizar selectivamente máquinas virtuales en un MIG .
- Vea información sobre su MIG y sus VM.
REST
Para usar las muestras de la API de REST en esta página en un entorno de desarrollo local, debes usar las credenciales que proporcionas a la CLI de gcloud.
After installing the Google Cloud CLI, initialize it by running the following command:
gcloud init
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
Para obtener más información, consulta Autentica para usar REST en la documentación de autenticación de Google Cloud .
Componentes de configuración para VM en un MIG
Las máquinas virtuales en un MIG se configuran a través de los siguientes componentes:
Componente Propiedades Caso de uso Plantilla de instancia Tipo de máquina, imagen del disco de arranque, etiquetas, secuencia de comandos de inicio y otras propiedades de la VM Requerido : use una plantilla de instancia para definir propiedades de instancia requeridas y opcionales para todas las máquinas virtuales del grupo.
Opcional: si desea probar canary una segunda configuración de VM, puede agregar una segunda plantilla de instancia al grupo y aplicarla a un subconjunto de las VM del grupo.Configuración de todas las instancias Etiquetas y metadatos Opcional: utilice una configuración de todas las instancias para anular rápidamente las propiedades de la plantilla de instancias para todas las máquinas virtuales del grupo. Configuración con estado Discos con estado, direcciones IP y metadatos Opcional: si necesita admitir una carga de trabajo con estado , agregue una configuración con estado a las máquinas virtuales del grupo. Si actualiza cualquier configuración para el grupo a través de esos componentes, debe aplicar la configuración actualizada a las máquinas virtuales existentes en el grupo para que la configuración actualizada sea efectiva.
Métodos para aplicar una nueva configuración a máquinas virtuales existentes
Después de actualizar la configuración de VM de un MIG, puede aplicar la nueva configuración a las VM existentes en el grupo mediante los siguientes métodos:
Para obtener más información sobre cómo configurar el tipo de actualización de un MIG, consulte Configurar una actualización proactiva u oportunista .
Automático (proactivo)
Un tipo de actualización automática también se conoce como tipo de actualización proactiva . Cuando configura el tipo de actualización del MIG en proactiva, el MIG aplica automáticamente configuraciones actualizadas a las máquinas virtuales según sea necesario.
Configurar el tipo de actualización del MIG en proactivo ofrece dos ventajas principales:
Para saber cómo configurar el tipo de actualización del MIG, consulte Configurar una actualización proactiva u oportunista .
Para obtener más información sobre implementaciones automáticas, consulte Aplicar automáticamente actualizaciones de configuración de VM en un MIG .
Selectivo (oportunista)
Un tipo de actualización selectiva también se conoce como tipo de actualización oportunista . Cuando configura el tipo de actualización del MIG en oportunista, el MIG aplica nuevas configuraciones a las máquinas virtuales existentes solo cuando apunta selectivamente a máquinas virtuales específicas para actualizarlas.
Configurar el tipo de actualización del MIG en oportunista ofrece las siguientes ventajas:
En ciertos escenarios, un tipo de actualización selectiva es útil porque no desea causar inestabilidad al sistema si se puede evitar. Por ejemplo, considere lo siguiente:
Para saber cómo configurar el tipo de actualización del MIG, consulte Configurar una actualización proactiva u oportunista .
Para obtener más información sobre la actualización selectiva de VM, consulte Aplicar selectivamente actualizaciones de configuración de VM en un MIG .
Recreación de máquinas virtuales
Puede recrear cualquier VM en un MIG. Cuando lo hace, el MIG aplica cualquier configuración actualizada que aún no se haya aplicado a esa VM. Para obtener más información, consulte Recreación de máquinas virtuales en un MIG .
Configure una actualización proactiva u oportunista
Para aplicar nuevas configuraciones a las máquinas virtuales existentes automáticamente, configure el tipo de actualización del MIG en "proactivo". Para aplicar nuevas configuraciones a las máquinas virtuales existentes solo cuando selecciona una máquina virtual para actualizar, establezca el tipo de actualización del MIG en "oportunista".
Utilice la consola de Google Cloud, la CLI de Google Cloud o REST.
Consola
nube de gcloud
Utilice el comando
rolling-action start-update
y establezca el indicador--type
enopportunistic
oproactive
.gcloud compute instance-groups managed rolling-action start-update INSTANCE_GROUP_NAME \ --version=template=NEW_TEMPLATE \ --type=TYPE
También puede utilizar el comando
update
beta e incluir el indicador--update-policy-type
.gcloud beta compute instance-groups managed update INSTANCE_GROUP_NAME \ --update-policy-type=TYPE
Reemplace lo siguiente:
DESCANSAR
Llame al método
patch
en un recurso MIG zonal o regional .PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME { "updatePolicy": { "type": "TYPE" # Choose an opportunistic or proactive update }, "versions": [{ "instanceTemplate": "global/instanceTemplates/NEW_TEMPLATE", }] }
Reemplace lo siguiente:
Para obtener más información sobre cómo configurar una nueva plantilla y luego aplicar esa plantilla a máquinas virtuales nuevas y existentes en un MIG, consulte las siguientes páginas:
Verifique el tipo de política de actualización de su grupo
Puedes ver el tipo de política de actualización configurada actualmente de tu MIG ("oportunista" o "proactiva") y otras configuraciones de política de actualización mediante la CLI de gcloud o REST.
nube de gcloud
Utilice el comando
describe
e incluya el indicador--format
para enumerar solo la configuraciónupdatePolicy
.gcloud beta compute instance-groups managed describe INSTANCE_GROUP_NAME \ --format="(updatePolicy)"
DESCANSAR
Realice una solicitud
GET
en un MIG zonal o regional y verifique el campoupdatePolicy
.GET https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME
Para cambiar el tipo de política, consulte Configurar una actualización proactiva u oportunista .
Actualizaciones para máquinas virtuales suspendidas y detenidas
Si ha suspendido y detenido grupos de máquinas virtuales en un MIG, puede actualizar selectivamente (oportunista) las máquinas virtuales suspendidas o detenidas del mismo modo que actualiza otras máquinas virtuales en ejecución. Si configura actualizaciones automáticas (proactivas), el MIG actualiza las máquinas virtuales en el siguiente orden:
Para una actualización automática, MIG calcula el aumento máximo y el máximo no disponible basándose únicamente en el número objetivo de máquinas virtuales en ejecución y no considera las máquinas virtuales en el grupo de reserva.
Si la actualización automática requiere el reemplazo de las máquinas virtuales del grupo, el MIG hace lo siguiente:
Si la actualización automática solo requiere actualizar o reiniciar las máquinas virtuales del grupo, entonces el MIG hace lo siguiente:
actualizaciones canarias
Si desea iniciar actualizaciones canary en un MIG que ha suspendido o detenido máquinas virtuales, se aplica lo siguiente:
Relación entre
versions
y campos deinstanceTemplate
Si usa REST, le recomendamos utilizar los campos
instanceGroupManagers.versions
yregionInstanceGroupManagers.versions
para configurar plantillas de instancia para MIG zonales y regionales.El campo de
instanceTemplate
heredado se superpone en funcionalidad con el campoversions
porque ambos campos le permiten especificar qué plantilla de instancia utiliza el MIG para crear máquinas virtuales. Sin embargo, solo el campoversions
le permite especificar una configuración avanzada de dos plantillas (canario).Para lograr compatibilidad con versiones anteriores, los MIG continúan admitiendo la configuración del
instanceTemplate
de nivel superior, aunque le recomendamos que cambie a usar solo el campoversions
. El uso del campoinstanceTemplate
de nivel superior y del campoversions
al mismo tiempo puede generar ambigüedad y confusión.Si especifica tanto el campo
instanceTemplate
como el campoversions
al llamar al métodoupdate()
opatch()
, hay tres resultados posibles:El campo
versions
, el campo deinstanceTemplate
y el métodoget()
Si solo especifica una plantilla de instancia, ya sea a través del campo
instanceTemplate
de nivel superior o a través del campoversions
o a través de ambos, el métodoget()
devuelve ambos campos en su respuesta. Esto hace que las nuevasversions
sean compatibles con versiones anteriores. Siempre que especifique una plantilla de instancia única en cualquiera de estos campos, no habrá cambios en lo que devuelve el métodoget()
en el campoinstanceTemplate
.Si el campo
versions
tiene dos plantillas de instancia especificadas, el métodoget()
devuelve un campo deinstanceTemplate
de nivel superior vacío. No hay forma de expresar sin ambigüedades una configuración de plantilla canaria de dos instancias en el campoinstanceTemplate
de nivel superior, por lo que el campo no se utiliza durante una actualización canaria.El campo
versions
y el métodosetInstanceTemplate()
Para compatibilidad con versiones anteriores, el método
setInstanceTemplate()
se comporta como antes, permitiéndole cambiar la plantilla que utiliza el MIG para crear máquinas virtuales. Cuando llama a este método, el campoversions
se reemplaza con la plantilla de instancia especificada por el métodosetInstanceTemplate()
.El método
setInstanceTemplate()
también estableceupdatePolicy
enOPPORTUNISTIC
. Esto evita que MIG implemente activamente una plantilla de instancia que no esté especificada explícitamente en el campoversions
.¿Qué sigue?
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-04-17 (UTC).
-