Uma instância de VM pode passar por muitos estados ao longo do respetivo ciclo de vida. Quando cria uma VM, o dispositivo isolado do Google Distributed Cloud (GDC) aprovisiona recursos para iniciar a VM. Em seguida, a VM passa para o estado de início, onde se prepara para o primeiro arranque. Durante e após o arranque, considera-se que uma VM está em execução. Durante a sua duração, uma VM em execução pode ser repetidamente parada e reiniciada, ou suspensa e retomada.
Definições do estado da VM
Estado | Definição |
---|---|
Pending |
A VM é aceite pelo sistema e está a aguardar a atribuição. |
Provisioning
|
Os recursos associados à VM, como VirtualMachineDisk , estão a ser aprovisionados e preparados. |
Starting |
A VM está a ser preparada para execução. |
Running |
A VM está em execução. |
Stopping |
A VM está em processo de paragem. |
Stopped |
A VM está parada e não se espera que seja iniciada. |
Paused
|
A VM está pausada e num estado congelado, que é preservado. Não é possível aceder à VM. |
Terminating
|
A VM e os respetivos recursos associados estão a ser eliminados. |
ErrorConfiguration
|
A VM tem um erro de configuração. Os estados de configuração inválida podem ser causados pelo seguinte: |
MachineTypeNotFound : o tipo de VM a que a VM se refere não foi encontrado ou está a ser eliminado. |
|
MachineDiskMisconfig – O disco da VM está configurado incorretamente. |
|
InterfaceCreationFailed – Não foi possível criar a interface de rede. |
|
CrashLoopBackOff |
A VM está atualmente num loop de falhas e está a aguardar uma nova tentativa. |
PendingIPAllocation |
A VM está a aguardar que o sistema lhe atribua um endereço IP. |
Unknown
|
Não foi possível obter o estado da VM, normalmente devido a um erro na comunicação com o anfitrião no qual está a ser executada. |
ErrorUnschedulable
|
Ocorreu um erro ao agendar a VM, por exemplo, devido a pedidos de recursos ou restrições de agendamento que não podem ser satisfeitas ou suportadas. |
DiskError |
A VM tem um erro com um ou mais dos discos anexados. |
WaitingForDisk |
A VM está a aguardar que um ou mais dos discos VirtualMachineDisk anexados estejam prontos. |
CrashLoopBackoff |
A VM tem falhado constantemente por algum motivo. |
Antes de começar
Para usar os comandos da gdcloud
interface de linhas de comando (CLI), certifique-se de que transferiu, instalou e configurou a CLI gdcloud
.
Todos os comandos para o dispositivo isolado do GDC usam a CLI gdcloud
ou kubectl
e requerem um ambiente de sistema operativo (SO).
Obtenha o caminho do ficheiro kubeconfig
Para executar comandos no servidor da API Management, certifique-se de que tem os seguintes recursos:
Localize o nome do servidor da API Management ou pergunte ao administrador da plataforma (PA) qual é o nome do servidor.
Inicie sessão e gere o ficheiro kubeconfig para o servidor da API Management, se não tiver um.
Use o caminho para substituir
MANAGEMENT_API_SERVER{"</var>"}}
nestas instruções.
Peça autorizações e acesso
Para realizar as tarefas indicadas nesta página, tem de ter a função de administrador da máquina virtual do projeto. Siga os passos para validar ou pedir ao administrador de IAM do projeto que lhe atribua a função de administrador de máquinas virtuais do projeto (project-vm-admin
) no espaço de nomes do projeto onde a VM reside.
Para operações de VM que usam a consola do GDC ou a CLI gdcloud,
peça ao administrador de IAM do projeto para lhe atribuir a função de administrador de máquinas virtuais do projeto e a função de visualizador do projeto (project-viewer
).
Verifique o estado da VM
Cada MV comunica o respetivo estado como parte das propriedades da MV. Verifique o estado de uma VM por qualquer um dos seguintes motivos:
- Se existirem problemas com a VM.
- Para confirmar que a VM está em execução depois de ter sido iniciada.
- Para verificar se a VM está no estado
Paused
ouStopped
.
Liste as VMs para verificar o estado
O procedimento seguinte mostra como listar VMs, ver o respetivo estado e obter informações de estado adicionais.
Liste todas as VMs e veja o estado de cada uma:
kubectl --kubeconfig MANAGEMENT_API_SERVER \ get virtualmachines.virtualmachine.gdc.goog -n PROJECT
Substitua as variáveis nos exemplos de código pelos seus próprios valores de acordo com a tabela seguinte.
Variável Definição MANAGEMENT_API_SERVER
O ficheiro kubeconfig
do servidor da API Management.PROJECT
O projeto do GDC no qual a VM reside. Exemplo de saída:
NAME STATUS AGE vm-1 Running 1d vm-2 Stopped 8d vm-3 ErrorConfiguration 1d
Obtenha detalhes adicionais sobre o estado de uma VM específica:
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"}'
Substitua o seguinte:
MANAGEMENT_API_SERVER
com o ficheirokubeconfig
para o servidor da API Management que obteve através do comandogdcloud auth login
.VM_NAME
com o nome da nova VM.PROJECT
com o projeto do GDC no qual a VM reside.
Exemplo de resultado que mostra os valores
Reason
eMessage
:State: ErrorConfiguration Reason: MachineDiskNotFound Message: VirtualMachineDisk disk-1 in namespace project-1 does not exist.
Também pode encontrar campos vazios para
Reason
eMessage
. Isto indica que não havia nada para o sistema comunicar sobre a pessoa.Exemplo de resultado com
Reason
eMessage
vazios:State: Running Reason: Message:
Parar ou reiniciar uma VM
Durante o ciclo de vida da VM, pode ter de parar e reiniciar uma VM ou eliminar uma VM para responder a uma alteração de estado ou gerir geralmente a VM. Consulte estas páginas para parar, repor ou eliminar uma VM: