Neste documento, descrevemos o ciclo de vida de uma única instância de máquina virtual (VM), começando pela criação até a possível exclusão.
Uma instância de VM pode passar por vários estados como parte do ciclo de vida. Quando você cria uma VM, o Compute Engine provisiona recursos para iniciar a VM. Em seguida, a VM passa para a etapa de organização, em que é preparada para a primeira inicialização. Durante e após a inicialização, uma VM é considerada em execução. Durante todo o ciclo de vida, uma VM em execução pode ser interrompida e reiniciada ou suspensa e retomada repetidamente.
Uma VM pode estar em um dos seguintes estados:
PROVISIONING
: os recursos são alocados para a VM. A VM ainda não está em execução.STAGING
: os recursos são adquiridos e a VM está se preparando para a primeira inicialização.RUNNING
: a instância está sendo inicializada ou está em execução.STOPPING
: a VM está sendo interrompida. Você solicitou uma parada ou ocorreu uma falha. Esse é um status temporário. Depois disso, a VM entra no statusTERMINATED
.REPAIRING
: a VM está sendo reparada. O reparo ocorre quando a VM encontra um erro interno ou a máquina subjacente não está disponível devido à manutenção. Durante esse período, a instância não pode ser utilizada. Você não recebe cobranças quando uma VM está em reparo. As VMs não são cobertas pelo contrato de nível de serviço (SLA) durante o reparo. Se o reparo funcionar, a VM retornará a um dos estados acima.TERMINATED
: a VM foi interrompida; Você interrompeu a VM ou a VM encontrou uma falha. Reinicie ou exclua a VM.SUSPENDING
: a VM está em processo de suspensão. Você suspendeu a VM.SUSPENDED
: a VM está em estado suspenso. É possível retomar a VM ou excluí-la.
O diagrama a seguir mostra a transição entre cada estado da instância:
Como interromper, suspender ou redefinir uma VM
É possível interromper ou suspender uma VM caso você não precise mais dela, mas queira mantê-la para uso futuro. A decisão de interromper ou suspender uma VM depende da necessidade de preservar a memória do SO convidado e o estado do aplicativo.
Ao suspender ou interromper uma VM, considere o seguinte:
- Você paga por recursos que ainda estão anexados a uma VM suspensa ou interrompida, como IPs estáticos e dados de disco permanente. Para mais informações, consulte o guia de preços.
- Endereços IP externos temporários são liberados da VM. Quando você reinicia ou retoma a VM, o Google atribui novos endereços IP externos temporários. Se você depende de um endereço IP externo temporário que permanece o mesmo durante reinicializações, promova o endereço IP externo temporário a um endereço IP estático.
- Os endereços IP externos estáticos são retidos.
Como interromper uma VM
A interrupção de uma VM faz com que o Compute Engine envie o sinal de encerramento do ACPI para a VM.
Os sistemas operacionais convidados atuais estão configurados para executar
um encerramento limpo antes de desligar em resposta ao sinal de desligamento. O Compute Engine aguarda um breve período para que o convidado termine o encerramento e passa a instância para o estado TERMINATED
.
É possível interromper uma VM por vários motivos:
- Você não precisa mais da VM, mas quer os recursos anexados à VM, como IPs internos, endereço MAC e disco permanente.
- Você não precisa preservar a memória do SO convidado, o estado do dispositivo ou o estado do aplicativo;
- Pretende alterar determinadas propriedades da VM que exigem primeiro a interrupção dela.
É possível reiniciar uma VM encerrada quando precisar usá-la novamente.
Como suspender uma VM
Como suspender uma VM envia um sinal de suspensão ACPI S3 para o sistema operacional da VM. Suspender uma VM é uma forma de fechar a tampa do seu laptop ou colocá-la em um estado suspenso. Quando você suspende uma VM, ela passa para o estado SUSPENDED
.
Recomendamos suspender uma VM pelos seguintes motivos:
- Você quer parar de pagar pelos custos de núcleo e de memória de uma VM e pagar o custo de armazenamento relativamente mais barato para preservar o estado da sua VM.
- Você não precisa da VM no momento, mas quer poder recuperá-la rapidamente com o SO e o estado do aplicativo em que a deixou.
Você pode retomar uma VM suspensa quando precisar usá-la novamente.
Como redefinir uma VM
Se preferir, redefina uma VM para limpar o conteúdo da memória da VM e redefinir a VM para o estado inicial.
Redefinir uma VM causa uma reinicialização forçada imediata da VM, a VM não executa um encerramento otimizado do SO convidado. No entanto, a VM
retém todos os dados do disco permanente e nenhuma das propriedades da instância é alterada. Durante a redefinição, a VM permanece no estado RUNNING
.
Tabela de comparação
A tabela a seguir mostra como a interrupção, a suspensão e a redefinição de uma VM afetam a VM e os recursos dela:
Interrupção | Suspensão | Redefinição | |
---|---|---|---|
Faturamento | O Google não cobra por recursos de VM enquanto eles estão no estado TERMINATED . |
O Google cobra pelo armazenamento do estado de preservação das VMs suspensas. | Como a VM permanece no estado RUNNING durante a
redefinição, o Google cobra pelas instâncias de acordo
com os preços padrão de VM. |
Estado da VM | TERMINATED |
SUSPENDED |
RUNNING |
Discos permanentes | Os discos permanentes são mantidos, mesmo quando são marcados para exclusão automática. Você é cobrado por um disco permanente associado a uma VM interrompida, assim como a cobrança por um disco permanente não associado a uma instância de VM. |
Os discos permanentes são mantidos, mesmo quando são marcados para exclusão automática. Você é cobrado por um disco permanente associado a uma VM interrompida, assim como a cobrança por um disco permanente não associado a uma instância de VM. |
Os discos permanentes são mantidos, mesmo quando são marcados para exclusão automática. Você será cobrado pelos discos permanentes enquanto a VM permanecer no estado RUNNING . |
Estado da RAM e da VM | Redefinição para o estado ligado, nenhum dado será salvo. | O SO convidado e o estado do aplicativo são preservados e restaurados quando
a instância é retomada. É cobrada uma taxa específica para armazenar dados preservados. Para mais informações, consulte Faturamento de instâncias suspensas. |
Redefinição para o estado ligado, nenhum dado será salvo. |
GPUs | As GPUs não são cobradas quando uma VM é interrompida. Uma GPU conectada a uma VM TERMINATED não conta na cota do projeto. |
Incompatível. Se uma GPU estiver anexada a uma VM, não será possível suspender a VM. |
Os preços padrão da GPU são cobrados. |
SSDs locais | Incompatível. Não é possível interromper uma VM que tenha um SSD local anexado a ela. |
Incompatível. É possível suspender uma VM que tenha uma SSD local, mas será necessário descartar explicitamente os dados dela no processo. |
Os SSDs locais são mantidos. |
IPs temporários externos | Quando uma VM é interrompida, são liberados IPs temporários. No entanto, um novo endereço IP temporário é adquirido quando a VM é reiniciada. | Quando uma VM é suspensa, IPs temporários são liberados. No entanto, um novo endereço IP temporário é adquirido quando a VM é reiniciada. | Quando uma VM é redefinida, são liberados IPs temporários. No entanto, um novo endereço IP temporário é adquirido quando a VM é reiniciada. |
IPs estáticos externos | Os IPs estáticos externos são mantidos. Os IPs estáticos atribuídos às VMs no estado TERMINATED são cobrados como se não estivessem anexados a nenhuma VM. Para saber mais informações, consulte Preços. |
Os IPs estáticos externos são mantidos. Os IPs estáticos atribuídos às VMs no estado SUSPENDED são cobrados como se não estivessem anexados a nenhuma VM. Para saber mais informações, consulte Preços. |
Os IPs estáticos externos são mantidos. |
IPs internos ou endereços MAC | IPs internos e endereços MAC são mantidos. | IPs internos e endereços MAC são mantidos. | Quando uma instância é excluída, são liberados IPs internos. Os endereços MAC são gerados com base no IP interno. Se você quiser reutilizar o endereço MAC, defina o mesmo endereço IP interno ou use um IP interno reservado. |
Metadados da VM | Os metadados da VM são mantidos. | Os metadados da VM são mantidos. | Os metadados da VM são mantidos. |
Como verificar o status de uma VM
Cada VM informa seu status como parte das propriedades da VM. Verifique o status de uma VM nas seguintes circunstâncias:
- Você está enfrentando problemas com a VM.
- Você iniciou a VM e quer confirmar que ela está em execução.
- Você quer confirmar que a VM foi suspensa ou interrompida
(ou seja, no estado
SUSPENDED
ouTERMINATED
).
Para listar todas as VMs e os status delas, use o seguinte comando:
gcloud compute instances list
Para descrever o status de uma única instância, use este comando:
gcloud compute instances describe example-instance
Falha de hardware
Uma VM pode falhar devido a interrupções inesperadas, erros de hardware ou outros problemas do sistema, mas isso é raro. Para minimizar as falhas de hardware, use discos permanentes, faça backup dos dados com frequência e crie o sistema para que uma única falha de VM não seja catastrófica. Para mais informações, consulte Como criar sistemas robustos.
Se uma VM falhar, ela será reiniciada automaticamente com as mesmas configurações de disco permanente raiz, metadados e VMs. Para modificar o comportamento de reinicialização automática, consulte Como configurar políticas de disponibilidade de instância.
A seguir
- Saiba mais sobre a migração em tempo real durante eventos de manutenção.
- Saiba como suspender ou retomar uma VM.
- Saiba como interromper ou reiniciar uma VM.
- Saiba como redefinir uma VM.
- Saiba como excluir uma VM.