Un grupo de instancias administrado con estado (MIG con estado) conserva el estado único de cada instancia de máquina virtual (VM), incluido el nombre de la VM, los discos persistentes conectados, las direcciones IP o los metadatos, en el reinicio, la recreación, la reparación automática o la actualización de la máquina.
En esta página, se describe cómo funcionan los MIG con estado. Consulta este artículo sobre cómo configurar los MIG con estado para obtener información sobre cómo configurar un MIG con estado.
Descripción general de cómo funcionan los MIG con estado
Un MIG se considera con estado si creaste una configuración con estado.
Creas una configuración con estado mediante la configuración de una política con estado que no esté vacía o una o más configuraciones no vacías por instancia:
- Una política con estado define los elementos que deseas preservar para todas las instancias de tu MIG.
- Una configuración por instancia define los elementos que se preservarán para una instancia de VM específica.
La configuración es efectiva después de que tú o el MIG la aplican:
- Un MIG aplica automáticamente tu configuración de política con estado a instancias nuevas y existentes.
- Cuando creas o actualizas configuraciones por instancia, puedes elegir si deseas aplicar la configuración nueva de forma manual o automática.
Después de aplicar la configuración con estado (política con estado o configuración por instancia), puedes verificarla si inspeccionas el estado preservado de cada instancia administrada.
Los cambios posteriores en la configuración con estado o en el tamaño del MIG (por ejemplo, reducir el tamaño del MIG, o borrar o descartar instancias del MIG) pueden afectar los estados conservados de las instancias.
Cómo se aplica la configuración con estado a las instancias administradas
Tu configuración con estado es efectiva después de que tú o el MIG la aplican. La aplicación de la configuración con estado a las instancias del MIG depende de la configuración:
- Política con estado: el MIG aplica automáticamente tu configuración de política con estado a las instancias nuevas y existentes.
- Configuraciones por instancia: cuando se crean o actualizan configuraciones por instancia, puedes elegir si deseas aplicar la nueva configuración de forma manual o automática.
Cómo se aplican las actualizaciones de políticas con estado a las instancias
Cuando creas o actualizas una política con estado, por ejemplo, cuando agregas o quitas un disco con estado, el MIG aplica tu configuración de política con estado a todas las instancias administradas del grupo de forma automática y asíncrona. Un MIG también aplica automáticamente tu configuración de política con estado a instancias nuevas durante su creación, por ejemplo, cuando se aumenta el tamaño de un MIG o cuando se crean instancias en el MIG manualmente.
Después de aplicar la configuración, puedes ver el efecto de la actualización en el estado preservado de la política de cada instancia administrada.
Las actualizaciones a una política con estado no interrumpen las VM en ejecución.
Cuando actualizas una política con estado para agregar un disco con estado, el MIG actualiza cada recurso de VM y cambia el valor de la marca autoDelete
del disco (instances.disks[].autoDelete
):
- El MIG configura
autoDelete
enFALSE
para los discos que configuras como con estado. Esto evita la eliminación de ese disco en la recreación de la instancia mediante reparación automática, actualización o recreación manual. - El MIG configura
autoDelete
a fin de que coincida con la configuración de la plantilla de tu instancia (instanceTemplates.disks[].autoDelete
) para todos los discos sin estado.
Cambiar el valor de la marca autoDelete
no interrumpe una VM en ejecución.
Cómo se aplican las actualizaciones de configuración por instancia a las instancias
Cuando creas o actualizas una configuración por instancia, puedes elegir si deseas aplicar la configuración nueva de forma manual o automática. Para obtener más información, consulta Aplica la configuración con estado de la configuración por instancia.
En la siguiente tabla, se muestran los niveles de interrupción necesarios para aplicar diferentes actualizaciones de configuración por instancia a una VM:
Actualización de la configuración por instancia | Interrupción en la VM requerida para la aplicación |
---|---|
Configurar un disco, definido por la plantilla de la instancia, para que sea con estado (se agrega a la configuración por instancia) | ACTUALIZAR |
Configurar un disco, definido por la plantilla de la instancia, para que sea sin estado (se quita de la configuración por instancia) | ACTUALIZAR |
Agregar un disco, no definido por la plantilla de la instancia, y conectarlo a la VM | ACTUALIZAR |
Quitar un disco, no definido por la plantilla de la instancia, y desconectarlo de la VM | ACTUALIZAR |
Agregar un par clave-valor de metadatos | ACTUALIZAR |
Quitar un par clave-valor de metadatos | ACTUALIZAR |
Agregar un disco de arranque externo, no creado a partir de la plantilla de la instancia y conectarlo a la VM | REEMPLAZAR |
Quitar un disco de arranque externo, no creado desde la plantilla de la instancia, desconectarlo de la VM y crear un disco de arranque desde la plantilla de la instancia en su lugar | REPLACE |
Establece una dirección IP interna | REPLACE |
Quita una dirección IP interna | REPLACE |
Cuando se aplica una configuración por instancia actualizada a la VM correspondiente, el MIG realiza las siguientes acciones según los elementos con estado que se actualizan:
- Agrega (o quita) los discos, las direcciones IP o los metadatos al estado preservado de la configuración en la instancia administrada correspondiente.
- Conecta (o desconecta) a la VM los discos que la plantilla de instancias no defina.
- Configura (o quita) pares clave-valor de metadatos que son específicos para la VM.
- Asigna (o quita) direcciones IP especificadas a la instancia de VM.
Después de aplicar una configuración por instancia a una VM administrada correspondiente, puedes ver el efecto de la actualización en el estado preservado de la configuración de la instancia.
Estado preservado de una instancia administrada
Cuando se aplica, el MIG traduce la plantilla de tu instancia y la configuración con estado a un “estado preservado” para cada instancia administrada.
Puedes ver el estado preservado si inspeccionas una instancia administrada.
El MIG conserva estos estados preservados automáticamente, y aplica este estado de forma automática y asíncrona a cada instancia de VM real correspondiente en el MIG.
El estado preservado describe qué elementos individuales (discos persistentes, direcciones IP y metadatos) tienen estado para una instancia determinada:
El estado preservado generado en función de una política con estado se almacena por separado del estado preservado generado en función de una configuración por instancia. El MIG combina ambos cuando se vuelve a crear una VM, con el estado preservado de una configuración por instancia que tiene prioridad.
Estado preservado según una política con estado
Una política con estado especifica elementos, presentes en todas las instancias y definidos en la plantilla de la instancia de MIG, a fin de preservarlos individualmente para cada instancia de VM en un MIG.
Cuando se aplica, el MIG traduce la política con estado a estados preservados específicos de la instancia (managedInstances[].preservedStateFromPolicy
). El MIG mantiene estos estados preservados de forma automática.
En el siguiente ejemplo, se muestra un MIG con dos instancias de VM que usan un disco con estado definido en una política con estado que se aplica a todas las instancias. No hay configuraciones por instancia en este ejemplo.
En la figura anterior, se muestra un MIG con dos instancias:
- La plantilla de la instancia define un disco de arranque con nombre de dispositivo,
boot-disk
, y un disco con nombre de dispositivo,data-disk
, para todas las instancias en el MIG. - La política con estado declara que
data-disk
se considera con estado. El disco de arranque permanece sin estado. Ten en cuenta que el disco con el nombre de dispositivo,data-disk
, debe estar definido por la plantilla de la instancia. - Después de aplicar la configuración, el MIG traduce la política con estado a estados preservados específicos de la instancia para cada instancia administrada. Los estados preservados le indican al MIG que preserve el disco
data-disk-1
para la instancia de VMnode-1
y el discodata-disk-2
para la instancianode-2
, porque ambos discos tienen nombre de dispositivodata-disk
configurado en la política con estado. - En este ejemplo, no hay configuraciones por instancia.
Estado preservado según la configuración por instancia
Una configuración por instancia especifica los elementos que se deben preservar para una VM en particular. No es necesario definir estos elementos en la plantilla de la instancia del MIG.
Cuando se aplica, el MIG traduce cada configuración por instancia a un estado preservado (preservedStateFromConfig
) para la instancia correspondiente.
En el siguiente ejemplo, se muestra un MIG con dos instancias de VM cuyos metadatos y discos con estado se definen en configuraciones por instancia (PIC) para cada instancia. No hay ninguna política con estado en este ejemplo.
En la figura anterior:
- La plantilla de la instancia define un disco de arranque con nombre de dispositivo
boot-disk
para todas las instancias en el MIG. El disco de arranque se considera sin estado para todas las VM del MIG. - Las configuraciones por instancia definen los estados que se preservarán para dos instancias en el MIG:
node-1
ynode-2
.- Para la instancia
node-1
, la configuración por instancia define un discomy-legacy-1
con nombre de dispositivolegacy-disk
y metadatosnode-id:xyz273
. - Para la instancia
node-2
, la configuración por instancia define un discomy-logs-1
con nombre de dispositivologs-disk
y metadatosnode-id:pqr851
.
- Para la instancia
- Después de aplicar la configuración, el MIG traduce automáticamente las configuraciones por instancia a estados preservados para cada instancia administrada. Los estados preservados le indican al MIG que conecte y preserve los siguientes elementos:
- Disco persistente
my-legacy-1
y metadatosnode-id:xyz273
para VMnode-1
- Disco persistente
my-logs-1
y metadatosnode-id:pqr851
para VMnode-2
- Disco persistente
- En este ejemplo, no hay una política con estado.
Ten en cuenta que los discos y metadatos en el estado preservado de las configuraciones por instancia no están definidos por la plantilla de la instancia en este ejemplo; en su lugar, solo se definen mediante la configuración por instancia. Esto se debe a que la configuración que especificas en una configuración por instancia es específica para una VM en particular, lo que significa que no tiene que estar presente en la plantilla de la instancia.
La configuración por instancia tiene prioridad sobre la política con estado y la plantilla de instancias
Puedes configurar una política con estado y una o más configuraciones por instancia en un MIG. Por ejemplo, en una política con estado, puedes definir discos con estado que estén presentes en todas las instancias y, en las configuraciones por instancia, puedes definir metadatos específicos de la instancia.
La configuración por instancia de una instancia administrada tiene prioridad sobre la configuración conflictiva en la plantilla de la instancia o en una política con estado.
Si aplicas una configuración por instancia para agregar un disco o una interfaz de red que ya esté definida en una política con estado, el MIG almacena la configuración con estado para ese disco o interfaz de red en el preservado de la configuración por instancia (preservedStateFromConfig
) y quita las entradas en conflicto de su estado preservado de la política (preservedStateFromPolicy). El MIG debe actualizar la VM si el nuevo estado preservado es diferente al anterior. La actualización podría provocar un cambio de metadatos, un cambio en la dirección IP externa o un cambio de disco para desconectar el disco de la última configuración de estado preservado y conectar el disco especificado en la nueva configuración de estado preservado.
En el siguiente ejemplo, la configuración por instancia para la instancia de VM node-1
redefine lo siguiente:
- El estado preservado del disco con nombre de dispositivo
logs-disk
, definido originalmente en la política de estado - El valor de la clave de metadatos
logmonth
, definido originalmente en la plantilla de la instancia
En la figura anterior:
- La plantilla de la instancia define:
- Tres discos para todas las instancias del MIG, con nombres de dispositivos
boot-disk
,data-disk
,logs-disk
. - Metadatos comunes a todas las instancias:
logmonth:jan
- Tres discos para todas las instancias del MIG, con nombres de dispositivos
- La política con estado declara que los discos con nombres de dispositivos
data-disk
ylogs-disk
se consideran con estado; el disco de arranque permanece sin estado. - Una configuración por instancia para la instancia
node-1
redefine:- La configuración con estado para un disco con nombre de dispositivo
logs-disk
: esto le indica al MIG que conecte el discopd-logs-feb
anode-1
bajo el nombre de dispositivologs-disk
. - Los metadatos, definidos en la plantilla de la instancia, con clave-valor
logmonth:jan
: esto indica al MIG que configure el valorlogmonth:feb
ennode-1
.
- La configuración con estado para un disco con nombre de dispositivo
- Después de aplicar la configuración, el MIG traduce automáticamente la política con estado y la configuración por instancia a un estado preservado específico de la instancia, almacenado en la instancia administrada.
- El estado preservado de la política le indica al MIG que preserve el disco
data-disk-1
para la VMnode-1
. Ten en cuenta que el estado preservado de la política no incluye la configuración con estado del disco con nombre de dispositivologs-disk
porque esta configuración se anula por la configuración paralogs-disk
en la configuración por instancia. - El estado preservado de la configuración le indica al MIG que conecte y preserve el disco persistente
logs-disk
y que establezca y preserve los metadatoslogmonth:feb
para la instancia de VMnode-1
. Ten en cuenta que el estado preservado de la configuración anula la configuración paralogs-disk
de la política con estado y los metadatoslogmonth:jan
de la plantilla de la instancia.
- El estado preservado de la política le indica al MIG que preserve el disco
Cómo la eliminación de un recurso de una política con estado afecta el estado preservado
Si quitas una configuración de recursos de tu política con estado, el MIG quitará automáticamente el preservedStateFromPolicy
correspondiente para todas las instancias administradas. Los recursos de procesamiento permanecen conectados a las instancias, pero ya no se los considera con estado.
En el siguiente ejemplo, quitar un disco de la política con estado genera la eliminación de ese disco de los estados preservados de la política en todas las VM administradas. Esos discos permanecen conectados a sus VM, pero ya no se los considera con estado y podrían borrarse y volver a crearse en la próxima recreación de VM.
Si el mismo elemento, por ejemplo, un disco persistente con estado, está presente tanto en la política con estado como en una configuración por instancia, y quitas su configuración con estado de la política con estado, el MIG no lo quita de la configuración por instancia. Para la VM correspondiente, el recurso configurado permanece con estado.
En el siguiente ejemplo, quitar el disco de la política con estado no lleva a la eliminación del disco de la configuración por instancia. El disco permanece con estado porque todavía es una parte del estado preservado de la configuración.
Cómo afecta al estado preservado la eliminación de elementos de la configuración por instancia
Si quitas la configuración con estado de una configuración por instancia y aplicas el cambio, el MIG quita automáticamente la configuración con estado del estado preservado de la configuración (preservedStateFromConfig
) en la instancia administrada correspondiente. Los recursos de procesamiento que ya no forman parte de ningún estado preservado se quedan sin estado.
Cómo afecta al estado preservado la eliminación de la configuración de discos con estado de la configuración por instancia
Si quitas un disco con estado de una configuración por instancia y aplicas el cambio a la instancia de VM asociada, el MIG hace lo siguiente:
- La configuración del disco se quita del estado preservado de la configuración de la instancia.
- Si un disco con el mismo nombre de dispositivo está definido en la plantilla de la instancia, pero no está configurado en una política con estado, el disco permanece conectado a la VM determinada. Sin embargo, el disco pasa a ser sin estado para la VM determinada y puede recrearse según la configuración de la plantilla de la instancia en el próximo evento de recreación, reparación automática o actualización de la VM.
- Si un disco con el mismo nombre de dispositivo no se define en la plantilla de la instancia, se desconecta de forma automática de la VM cuando se aplica la configuración por instancia actualizada a la VM asociada, independientemente de su configuración de eliminación automática.
- Si un disco con el mismo nombre de dispositivo está configurado en una política con estado, su configuración de política con estado se traduce en el estado preservado de la política para la instancia administrada determinada, y el disco permanece con estado.
En el siguiente ejemplo, quitar un disco azul y un disco verde de la configuración por instancia de node-1
genera que se quiten ambos discos del estado preservado de la instancia administrada de node-1
de la configuración.
- El disco azul permanece conectado a la instancia de VM
node-1
, pero ahora se lo considera sin estado y se puede recrear en la siguiente recreación de VM según la configuración de la plantilla de la instancia. - El disco verde se desconecta de la instancia de VM
node-1
porque la plantilla de la instancia no define un disco con el mismo nombre de dispositivo.
Cómo afecta al estado conservado la eliminación de metadatos con estado de la configuración por instancia
Quitar metadatos con estado de una configuración por instancia y aplicar el cambio hace que el MIG quite de inmediato los metadatos con estado del estado preservado de la instancia administrada correspondiente:
- Si definiste metadatos con la misma clave en la plantilla de la instancia, el MIG aplica inmediatamente el valor de la plantilla de la instancia a la instancia.
- Si los metadatos con la misma clave no están definidos en la plantilla de la instancia, el MIG quita inmediatamente la clave-valor de la instancia.
En el siguiente ejemplo, quitar los metadatos mode:dev
y id:xyz273
de la configuración por instancia de node-1
genera la eliminación automática de ambos pares clave-valor del estado conservado de la instancia administrada node-1
en la configuración.
mode:dev
se reemplaza por la plantilla de la instanciamode:test
en la VM.id:xyz273
se quita de la VM de inmediato porque la plantilla de instancias no tiene metadatos con la misma claveid
para reemplazarla.
Cómo afecta al estado preservado la eliminación de la configuración de IP con estado de la configuración por instancia
Quitar la configuración de IP interna de la configuración por instancia hace que la dirección IP de esta VM no tenga estado. No se realizan cambios automatizados en esta VM, pero la dirección IP puede cambiar después de que la VM se vuelve a crear, se actualiza o se repara de forma automática.
Resguarda a la política con estado
Si quitas la configuración con estado de un recurso de una configuración por instancia y configuraste el mismo recurso en la política con estado, el recurso permanecerá con estado de acuerdo con la política con estado.
El MIG quita de forma automática la configuración con estado del elemento de preservedStateFromConfig
y la agrega a preservedStateFromPolicy
de la instancia administrada correspondiente.
En el siguiente ejemplo, quitar un disco de la configuración por instancia de node-1
no genera que se quite el disco de la política con estado. El disco permanece con estado de acuerdo con la política con estado:
- El MIG quita automáticamente el disco de
preserveStateFromConfig
para la instancia administradanode-1
porque el disco ya no forma parte de su configuración por instancia. - El MIG agrega automáticamente el disco a
preserveStateFromPolicy
para la instancia administradanode-1
porque la configuración de política con estado todavía está en su lugar y ya no está en conflicto con la configuración por instancianode-1
.
Comentarios
Queremos conocer tus casos de uso, desafíos y comentarios sobre los MIG con estado. Comparte tus comentarios con nuestro equipo en mig-discuss@google.com.
¿Qué sigue?
- Obtén información sobre cómo las diferentes opciones de configuración y las acciones del MIG afectan el estado preservado.
- Para obtener información sobre cómo admitir cargas de trabajo con estado mediante la preservación de nombres de instancias, discos persistentes y metadatos en instancias administradas, consulta Configura MIG con estado.
- Obtén más información sobre cuándo usar MIG con estado.
- Obtén más información sobre cómo migrar una carga de trabajo existente a un MIG con estado.
- Obtén más información sobre los MIG.
- Trabaja con instancias administradas.