Ciclo de vida de las instancias de VM

En este documento, se describe el ciclo de vida de una sola instancia de máquina virtual (VM), desde su creación hasta su posible eliminación.

Una instancia de VM puede pasar por muchos estados como parte de su ciclo de vida. Cuando creas una VM, Compute Engine aprovisiona recursos para iniciarla. Luego, la VM pasa a la etapa de pruebas, en la que se la prepara para el primer inicio. Durante y después del inicio, una VM se considera en ejecución. Durante su vida útil, una VM en ejecución se puede detener y reiniciar o suspender y reanudar varias veces.

Una VM puede estar en uno de los siguientes estados:

  • PROVISIONING: Son los recursos asignados para la VM. La VM aún no se está ejecutando.
  • STAGING: se adquieren los recursos y la VM se prepara para el primer inicio.
  • RUNNING. La instancia se está iniciando o ejecutando.
  • STOPPING: la VM se detiene. Solicitaste una detención o se produjo una falla. Este es un estado temporal después del cual la VM ingresa en el estado TERMINATED.
  • REPAIRING: La VM que se está reparando La reparación se produce cuando la VM experimenta un error interno o la máquina subyacente no está disponible debido al mantenimiento. Durante este momento, la VM no se puede usar. Si la reparación se realiza con éxito, la VM regresa a uno de los estados anteriores.
  • TERMINATED: La VM se detiene. Detuviste la VM, o esta encontró una falla. Puedes reiniciar o borrar la VM.
  • SUSPENDING: la VM está en proceso de suspensión. Suspendiste la VM.
  • SUSPENDED: la VM está en estado suspendido. Puedes reanudar la VM o borrarla.

En el siguiente diagrama, se muestra la transición entre cada estado de la VM:

Ciclo de vida de las instancias de VM

Detén, suspende o restablece una VM

Puedes detener o suspender una VM si ya no la necesitas, pero deseas conservarla para usarla en el futuro. Tu decisión de detener o suspender una VM depende de si necesitas conservar la memoria del SO invitado y el estado de la aplicación.

Cuando suspendes o detienes una VM, ten en cuenta lo siguiente:

  • No se generan costos por una VM suspendida o detenida.
  • Pagas por los recursos que aún están conectados a una VM suspendida o detenida, como IP estáticas y datos de disco persistente.
  • Las direcciones IP externas efímeras se liberan de la VM. Cuando reinicias o vuelves la VM, Google asigna direcciones IP externas efímeras nuevas. Si dependes de que una dirección IP externa efímera permanezca igual durante los reinicios, debes promover la IP externa efímera.
  • Se conservan direcciones IP externas estáticas.

Detén una VM

Si se detiene una VM, Compute Engine envía la señal de cierre de ACPI a la VM. Los sistemas operativos invitados modernos están configurados para realizar un cierre ordenado antes de apagarse en respuesta a la señal de apagado. Compute Engine espera a que el sistema invitado finalice el cierre y, luego, pasa la instancia al estado TERMINATED.

Es posible que quieras detener una VM por varias razones, como las siguientes:

  • Ya no necesitas la VM, pero quieres los recursos conectados a ella, como sus IP internas, direcciones MAC y discos persistentes.
  • No necesitas mantener la memoria del SO invitado, el estado del dispositivo ni el estado de la aplicación.
  • Si deseas cambiar algunas propiedades de la VM que requieren que primero la detengas.

Puedes reiniciar una VM finalizada cuando necesites usarla de nuevo.

Suspende una VM

La suspensión de una VM envía una señal de suspensión S3 de ACPI al sistema operativo de la VM. La suspensión de una VM es similar al cierre de la tapa de tu laptop, que pone la VM en estado de suspensión. Cuando suspendes una VM, pasa al estado SUSPENDED.

Recomendamos suspender una VM por los siguientes motivos:

  • En este momento, no necesitas la VM, pero quieres ser capaz de volver a ponerla en marcha rápidamente con su SO y el estado de las aplicaciones ya inicializados.
  • No te importa pagar para que Google conserve el estado de tu VM.

Puedes reanudar una VM suspendida cuando necesites usarla de nuevo.

Restablece una VM

Como alternativa, puedes restablecer una VM para limpiar el contenido de la memoria de la VM y restablecerla a su estado inicial. Cuando restableces una VM, se produce un restablecimiento de configuración de fábrica inmediato de la VM. la VM no cierra correctamente el SO invitado. Sin embargo, la VM conserva todos los datos de discos persistentes y no cambia ninguna de las propiedades de la VM. La VM permanece en el estado RUNNING durante el restablecimiento.

Tabla de comparación

En la siguiente tabla, se muestra cómo detener, suspender y restablecer una VM afecta la VM y sus recursos:

Detención Suspensión Restablecimiento
Facturación Google no cobra por los recursos de VM mientras están en estado TERMINATED. Google cobra por almacenar el estado conservado de las VM suspendidas. Debido a que la VM permanece en el estado RUNNING cuando se restablece, Google cobra por las VM según los precios de VM estándar.
Estado de la VM TERMINATED SUSPENDED RUNNING
Discos persistentes Los discos persistentes se conservan, incluso cuando están marcados para la eliminación automática.

Se te cobra por un disco persistente asociado con una VM detenida, de la misma manera que se te cobra por un disco persistente que no está asociado con una VM.
Los discos persistentes se conservan, incluso cuando están marcados para la eliminación automática.

Se te cobra por un disco persistente asociado con una VM detenida, de la misma manera que se te cobra por un disco persistente que no está asociado con una VM.
Los discos persistentes se conservan, incluso cuando están marcados para la eliminación automática.

Se te cobrará por los discos persistentes siempre que la VM permanezca en un estado RUNNING.
Estado de la VM y RAM Se restablece al estado de encendido, no se guardan datos. El SO invitado y el estado de la aplicación se conservan y se restablecen cuando se reanuda la VM.
Se te cobra una tarifa específica por almacenar datos conservados. Para obtener más información, consulta Facturación de instancias suspendidas.
Se restablece al estado de encendido, no se guardan datos.
GPU No se cobra por GPU cuando la VM se detiene.

Una GPU conectada a una VM TERMINATED no se tiene en cuenta en la cuota de tu proyecto.
No compatible.

Si una GPU está conectada a una VM, no puedes suspenderla.
Se te cobrarán los precios de GPU estándar.
SSD locales No compatible.

No puedes detener una VM que tenga una SSD local adjunto.
No compatible.

Puedes suspender una VM que tenga un SSD local, pero debes descartar los datos de SSD locales en el proceso de forma explícita.
Los SSD locales se conservan.
IP efímeras externas Las IP efímeras se liberan cuando se detiene una VM, pero se adquiere una dirección IP efímera nueva cuando la VM se reinicia. Las IP efímeras se liberan cuando se suspende una VM, pero se adquiere una dirección IP efímera nueva cuando la VM se reinicia. Las IP efímeras se liberan cuando la VM se restablece, pero se adquiere una dirección IP efímera nueva cuando la VM se reinicia.
IP estáticas externas Las IP estáticas externas se conservan.

Las IP estáticas que se asignan a las VM en el estado TERMINATED se cobran como si no estuvieran conectadas a ninguna VM. Para obtener más información, consulta Precios.
Las IP estáticas externas se conservan.

Las IP estáticas que se asignan a las VM en el estado TERMINATED se cobran como si no estuvieran conectadas a ninguna VM. Para obtener más información, consulta Precios.
Las IP estáticas externas se conservan.
IP internas o direcciones MAC Las IP internas y las direcciones MAC se conservan. Las IP internas y las direcciones MAC se conservan. Las IP internas se liberan cuando se borra una VM.

Las direcciones MAC se generan en función de la IP interna. Si deseas volver a usar la dirección MAC, establece la misma dirección IP interna o usa una IP interna reservada.
Metadatos de VM Los metadatos de VM se conservan. Los metadatos de VM se conservan. Los metadatos de VM se conservan.

Verifica el estado de una VM

Cada VM informa su estado como parte de las propiedades de la VM. Verifica el estado de una VM en las siguientes circunstancias:

  • Tienes problemas con la VM.
  • Recién inició la VM y desea confirmar que esté en ejecución.
  • Deseas confirmar que la VM se suspendió o se detuvo (es decir, en el estado TERMINATED).

Para enumerar todas las VM y sus estados, usa el siguiente comando:

gcloud compute instances list

Para describir el estado de una sola instancia, usa este comando:

gcloud compute instances describe example-instance

¿Qué sigue?