Una instancia de VM puede pasar por muchos estados a lo largo de su ciclo de vida. Cuando creas una máquina virtual, el dispositivo air-gapped de Google Distributed Cloud (GDC) aprovisiona recursos para iniciar la máquina virtual. 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 del dispositivo aislado de GDC usan la CLI gdcloud
o kubectl
y requieren un entorno de sistema operativo (SO).
Obtener la ruta del archivo kubeconfig
Para ejecutar comandos en el servidor de la API Management, asegúrate de tener los siguientes recursos:
Busca el nombre del servidor de la API Management o pregunta a tu administrador de plataforma cuál es.
Inicia sesión y genera el archivo kubeconfig del servidor de la API Management si no tienes uno.
Usa la ruta para sustituir
MANAGEMENT_API_SERVER{"</var>"}}
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 o pide al administrador de gestión de identidades y accesos de tu proyecto que te asigne el rol Administrador de máquinas virtuales de proyectos (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 archivokubeconfig
del servidor de la API Management 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: