Una instancia de VM puede pasar por muchos estados a lo largo de su ciclo de vida. Cuando creas una máquina virtual, Google Distributed Cloud (GDC) con air gap aprovisiona recursos para iniciarla. A continuación, la VM pasa al estado de inicio, donde se prepara para el primer arranque. Durante el inicio y después, se considera que una VM está en ejecución. Durante su ciclo de vida, una VM en ejecución se puede detener y reiniciar varias veces, o suspender y reanudar.
Definiciones de estados de las VMs
Estado | Definición |
---|---|
Pending |
El sistema acepta la VM y está esperando a que se le asigne. |
Provisioning
|
Se están aprovisionando y preparando los recursos asociados a la VM, como VirtualMachineDisk . |
Starting |
La VM se está preparando para ejecutarse. |
Running |
La VM se está ejecutando. |
Stopping |
La VM está en proceso de detenerse. |
Stopped |
La VM está detenida y no se espera que se inicie. |
Paused
|
La máquina virtual está pausada y en un estado congelado, que se conserva. No se puede acceder a la VM. |
Terminating
|
La VM y sus recursos asociados están en proceso de eliminación. |
ErrorConfiguration
|
La VM tiene un error de configuración. Los estados de configuración no válidos pueden deberse a los siguientes motivos: |
MachineTypeNotFound : no se ha encontrado el tipo de VM al que hace referencia la VM o se está eliminando. |
|
MachineDiskMisconfig - El disco de la VM no está configurado correctamente. |
|
InterfaceCreationFailed : no se ha podido crear la interfaz de red. |
|
CrashLoopBackOff |
La VM está en un bucle de fallos y está esperando a que se vuelva a intentar. |
PendingIPAllocation |
La VM está esperando a que el sistema le asigne una dirección IP. |
Unknown
|
No se ha podido obtener el estado de la VM, normalmente debido a un error al comunicarse con el host en el que se está ejecutando. |
ErrorUnschedulable
|
Se ha producido un error al programar la VM. Por ejemplo, debido a solicitudes de recursos o restricciones de programación que no se pueden satisfacer o admitir. |
DiskError |
La máquina virtual tiene un error en uno o varios de los discos adjuntos. |
WaitingForDisk |
La máquina virtual está esperando a que uno o varios de los VirtualMachineDisk adjuntos estén listos. |
CrashLoopBackoff |
La VM se ha bloqueado de forma reiterada por algún motivo. |
Antes de empezar
Para usar los comandos de la gdcloud
interfaz de línea de comandos (CLI), asegúrate de haber descargado, instalado y configurado la gdcloud
CLI.
Todos los comandos de Distributed Cloud usan la CLI gdcloud
o kubectl
y requieren un entorno de sistema operativo.
Obtener la ruta del archivo kubeconfig
Para ejecutar comandos en el servidor de la API Management, asegúrate de tener los siguientes recursos:
Inicia sesión y genera el archivo kubeconfig del servidor de la API Management si no tienes uno.
Usa la ruta al archivo kubeconfig del servidor de la API Management para sustituir
MANAGEMENT_API_SERVER
en estas instrucciones.
Solicitar permisos y acceso
Para realizar las tareas que se indican en esta página, debes tener el rol de administrador de máquinas virtuales de proyecto. Sigue los pasos para verificar que tienes el rol de administrador de máquinas virtuales de proyecto (project-vm-admin
) en el espacio de nombres del proyecto en el que reside la VM.
Para realizar operaciones con VMs mediante la consola de GDC o la CLI de gdcloud, pide al administrador de gestión de identidades y accesos de tu proyecto que te asigne el rol Administrador de VirtualMachine de proyecto y el rol Lector de proyectos (project-viewer
).
Comprobar el estado de una VM
Cada máquina virtual informa de su estado como parte de sus propiedades. Comprueba el estado de una máquina virtual por alguno de los siguientes motivos:
- Si hay problemas con la máquina virtual.
- Para confirmar que la VM se está ejecutando después de que se haya iniciado.
- Para verificar que la máquina virtual está en el estado
Paused
oStopped
.
Lista de VMs para comprobar el estado
En el siguiente procedimiento se muestra cómo enumerar las máquinas virtuales, ver su estado y obtener información adicional sobre el estado.
Lista todas las VMs y consulta el estado de cada una:
kubectl --kubeconfig MANAGEMENT_API_SERVER \ get virtualmachines.virtualmachine.gdc.goog -n PROJECT
Sustituye las variables de los ejemplos de código por tus propios valores según la siguiente tabla.
Variable Definición MANAGEMENT_API_SERVER
El archivo kubeconfig del servidor de la API Management. PROJECT
El proyecto de GDC en el que reside la VM. Ejemplo:
NAME STATUS AGE vm-1 Running 1d vm-2 Stopped 8d vm-3 ErrorConfiguration 1d
Para obtener más información sobre el estado de una VM concreta, sigue estos pasos:
kubectl --kubeconfig MANAGEMENT_API_SERVER \ get virtualmachines.virtualmachine.gdc.goog VM_NAME -n PROJECT -o \ jsonpath='{"State:"}{.status.state}{"\n"}{"Reason:"}{.status.reason}{"\n"}{"Message:"}{.status.message}{"\n"}'
Haz los cambios siguientes:
MANAGEMENT_API_SERVER
con el archivo kubeconfig del servidor de la API de gestión que has obtenido con el comandogdcloud auth login
.VM_NAME
con el nombre de la nueva VM.PROJECT
con el proyecto de GDC en el que reside la VM.
Ejemplo de salida que muestra los valores
Reason
yMessage
:State: ErrorConfiguration Reason: MachineDiskNotFound Message: VirtualMachineDisk disk-1 in namespace project-1 does not exist.
También es posible que veas los campos de
Reason
yMessage
vacíos. Esto indica que el sistema no ha detectado nada que deba comunicar al respecto.Ejemplo de salida con
Reason
yMessage
vacíos:State: Running Reason: Message:
Detener o reiniciar una VM
Durante el ciclo de vida de una VM, es posible que tengas que detenerla y reiniciarla, o eliminarla para responder a un cambio de estado o para gestionarla en general. Consulta estas páginas para detener, restablecer o eliminar una VM: