Este documento describe cómo aplicar selectivamente actualizaciones de configuración a las instancias de máquinas virtuales (VM) en un grupo de instancias administrado (MIG) .
Compute Engine mantiene las VM en un MIG según los componentes de configuración que usas: plantilla de instancia, configuración opcional de todas las instancias y configuración con estado opcional.
Cada vez que actualizas la configuración de VM de un MIG cambiando 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, puede configurar una actualización selectiva, también conocida como tipo de actualización "oportunista". Este tipo de actualización ofrece las siguientes ventajas:
- 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 VM inmediatamente.
Como alternativa, si desea automatizar la implementación de una nueva configuración en todas o en un subconjunto aleatorio de las máquinas virtuales en un MIG, consulte Aplicar automáticamente actualizaciones de configuración de máquinas virtuales en un MIG . Para ayudarle a decidir, consulte Métodos para aplicar una nueva configuración a máquinas virtuales existentes .
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.
-
INSTANCE_GROUP_NAME
: el nombre del MIG -
INSTANCE_TEMPLATE
: nueva plantilla de instancia -
INSTANCE_NAMES
: una lista de máquinas virtuales a las que aplicar la plantilla -
DISRUPTION_LEVEL
: el nivel de interrupción mínimo o máximo:none
,refresh
,restart
oreplace
- La acción mínima predeterminada es
none
- La acción predeterminada más disruptiva permitida es
replace
- La acción mínima predeterminada es
-
INSTANCE_GROUP_NAME
: el nombre del grupo -
NEW_TEMPLATE
: el nombre de la nueva plantilla -
ZONE
: la zona de una instancia a actualizar -
INSTANCE_NAME_1
eINSTANCE_NAME_2
: los nombres de las máquinas virtuales que se actualizarán -
DISRUPTION_LEVEL
: el nivel de interrupción mínimo o máximo:NONE
,REFRESH
,RESTART
oREPLACE
- La
minimalAction
predeterminada esNONE
. - La
mostDisruptiveAllowedAction
predeterminada esREPLACE
.
- La
Acción mínima : utilice esta opción para minimizar la interrupción tanto como sea posible o aplicar una acción más disruptiva de la necesaria.
- Para limitar las interrupciones tanto como sea posible, establezca la acción mínima en
NONE
. Si su actualización requiere una acción más disruptiva, Compute Engine realiza la acción necesaria para ejecutar la actualización. - Para aplicar una acción más disruptiva de la estrictamente necesaria, establezca la acción mínima en
RESTART
oREPLACE
. Por ejemplo, Compute Engine no necesita reiniciar una VM para cambiar sus metadatos. Pero si su aplicación lee los metadatos de la instancia solo cuando se reinicia una VM, puede configurar la acción mínima enRESTART
para detectar los cambios de metadatos.
- Para limitar las interrupciones tanto como sea posible, establezca la acción mínima en
Acción más disruptiva permitida : utilice esta opción para evitar una actualización si requiere más interrupciones de las que puede permitirse. Si su actualización requiere una acción más disruptiva que la que estableció con este indicador, la solicitud de actualización falla. Por ejemplo, si establece la acción permitida más disruptiva en
RESTART
, el intento de actualizar la imagen del disco de inicio falla porque esa actualización requiere la recreación de la instancia, una acción más disruptiva que un reinicio.- La acción mínima predeterminada es
NONE
, lo que limita las interrupciones tanto como sea posible. - La acción predeterminada más disruptiva permitida es
REPLACE
. Si no puede tolerar dicha interrupción, establezca la acción permitida más disruptiva para que sea menos disruptiva. - Obtenga información sobre cómo ver información sobre MIG y máquinas virtuales administradas .
- Obtenga más información sobre la creación de plantillas de instancias .
- Aprenda a utilizar familias de imágenes y un reemplazo continuo para actualizar la imagen del sistema operativo en todas las máquinas virtuales en un MIG.
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 .
Aplicar la configuración actualizada a las máquinas virtuales seleccionadas
Asegúrese de que el tipo de política de actualización de su grupo esté configurado en "oportunista" para evitar que MIG aplique automáticamente una nueva configuración de VM a las VM existentes. Para obtener más información, consulte Verifique el tipo de política de actualización de su grupo .
Luego, usa la CLI de gcloud o REST para actualizar la configuración de tu MIG y aplicar la configuración más reciente a VM específicas del grupo o a todas las VM del grupo.
nube de gcloud
Para configurar una nueva plantilla de instancia para su grupo, puede usar el comando
set-instance-template
.gcloud compute instance-groups managed set-instance-template INSTANCE_GROUP_NAME \ --template=INSTANCE_TEMPLATE
Aplicar configuración a máquinas virtuales específicas
Para aplicar la configuración actualizada a máquinas virtuales específicas, use el comando
update-instances
con el indicador--instances
.gcloud compute instance-groups managed update-instances INSTANCE_GROUP_NAME \ --instances INSTANCE_NAMES \ --most-disruptive-allowed-action DISRUPTION_LEVEL \ --minimal-action DISRUPTION_LEVEL
Aplicar la configuración a todas las máquinas virtuales
Para aplicar la configuración actualizada a todas las máquinas virtuales, utilice el comando
update-instances
con el indicador--all-instances
.gcloud compute instance-groups managed update-instances INSTANCE_GROUP_NAME \ --all-instances \ --most-disruptive-allowed-action DISRUPTION_LEVEL \ --minimal-action DISRUPTION_LEVEL
Reemplace lo siguiente:
DESCANSAR
Para configurar una nueva plantilla de instancia para su grupo, llame al método
patch
en un MIG zonal o regional y actualice el campoversions.instanceTemplate
. Para evitar implementar automáticamente la nueva plantilla en todas las máquinas virtuales del grupo, establezca el campoupdatePolicy.type
enOPPORTUNISTIC
.PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME { "updatePolicy": { "type": "OPPORTUNISTIC" }, "versions": [{ "instanceTemplate": "global/instanceTemplates/NEW_TEMPLATE", }] }
Aplicar configuración a máquinas virtuales específicas
Para aplicar la configuración actualizada a máquinas virtuales específicas, llame al método
applyUpdatesToInstances
para su MIG zonal o regional y especifique una lista de máquinas virtuales en la solicitud.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME/applyUpdatesToInstances { "instances": [ "zones/ZONE/instances/INSTANCE_NAME_1", "zones/ZONE/instances/INSTANCE_NAME_2" ], "minimalAction": DISRUPTION_LEVEL, "mostDisruptiveAllowedAction": DISRUPTION_LEVEL }
Aplicar la configuración a todas las máquinas virtuales
Para aplicar la configuración actualizada a todas las máquinas virtuales existentes, establezca el campo
allInstances
entrue
:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME/applyUpdatesToInstances { "allInstances": true, "minimalAction": DISRUPTION_LEVEL, "mostDisruptiveAllowedAction": DISRUPTION_LEVEL }
Reemplace lo siguiente:
Al igual que otros métodos de grupos de instancias administrados,
applyUpdatesToInstances
se basa en la intención, lo que significa que devuelve una respuesta de operación . La operación puede tardar algún tiempo en completarse.Después de realizar una solicitud, puede verificar el estado para verificar que la actualización esté completa.
Controle el nivel de interrupción durante las actualizaciones selectivas
Dependiendo de la naturaleza de una actualización, podría alterar el estado de una instancia. Por ejemplo, cambiar el disco de inicio de una instancia requiere reemplazar la instancia. Puede controlar el nivel de interrupción durante una actualización selectiva configurando las siguientes opciones:
Al actualizar las máquinas virtuales seleccionadas, ambas opciones aceptan los siguientes valores:
Valor Descripción ¿Qué propiedades de instancia se pueden actualizar? NONE
No interrumpas la instancia en absoluto. Ninguno REFRESH
No detengas la instancia. Discos adicionales, metadatos de instancia, etiquetas, etiquetas RESTART
Detenga la instancia y vuelva a iniciarla. Discos adicionales, metadatos de instancia, etiquetas, etiquetas, tipo de máquina REPLACE
Elimine la instancia y créela nuevamente. Todas las propiedades de la instancia almacenadas en la plantilla de instancia o en la configuración por instancia La acción más disruptiva permitida no puede ser menos disruptiva que la acción mínima.
Cuando actualiza selectivamente máquinas virtuales, se aplican los siguientes valores predeterminados:
¿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).
-