Neste documento, descrevemos como definir a política de manutenção de host de uma instância de máquina virtual para configurar o comportamento da VM quando ocorre um evento de host.
Antes de começar
- Para usar os exemplos de linha de comando deste guia, faça o seguinte:
- Instale ou atualize para a versão mais recente da Google Cloud CLI.
- Defina uma região e uma zona padrão.
- Para usar os exemplos da API deste guia, configure o acesso a ela.
Limitações
- Não é possível alterar a política de manutenção do host de uma VM preemptiva. Quando há um evento de manutenção, a VM preemptiva é interrompida e não migra. Você precisa reiniciar manualmente a VM preemptiva.
- Depois de criar uma VM usando um tipo de máquina E2, não é possível alterar as configurações de manutenção
do host da VM de
Migrate
paraTerminate
ou vice-versa.
Definir política de manutenção de host de uma VM
É possível alterar a política de manutenção do host de uma VM ao
criar uma VM
ou depois que ela for criada
usando os setScheduling
.
Para configurar o comportamento de manutenção de uma VM, o comportamento de reinicialização e o tempo de detecção
de erros de host, use as propriedades onHostMaintenance
, automaticRestart
e
hostErrorTimeoutSeconds
. O Compute Engine configura todas as VMs com valores padrão, a menos que você especifique o contrário.
onHostMaintenance
: determina o comportamento quando ocorre um evento de manutenção que possa causar a reinicialização da instância.MIGRATE
: faz com que o Compute Engine migre em tempo real uma instância quando há um evento de manutenção. Esse é o valor padrão.TERMINATE
: interrompe uma VM em vez de migrá-la.
automaticRestart
: determina o comportamento quando uma VM falha ou é interrompida pelo sistema.true
: o Compute Engine reinicializa a instância se ela falhar ou for interrompida. Esse é o valor padrão.false
: o Compute Engine não reinicia a VM se ela falhar ou for interrompida.
hostErrorTimeoutSeconds
(Visualização): define o tempo máximo, em segundos, que o Compute Engine aguarda para reiniciar ou encerrar uma VM depois de detectar que não está respondendo.- [Padrão] não definido, o Compute Engine aguarda até 5,5 minutos (330 segundos) antes de reiniciar uma VM não responsiva.
- Número de segundos entre
90
e330
, em incrementos de 30, o que define quanto tempo o Compute Engine aguarda antes de reiniciar uma VM não responsiva.
Todas as instâncias são configuradas com valores padrão, a não ser que você especifique outra forma explicitamente.
Definir política de manutenção de host durante a criação da VM
Console
No console do Google Cloud, acesse a página Criar uma instância.
Expanda a seção Rede, discos, segurança, gerenciamento, locatário único e faça o seguinte:
- Expanda a seção Gerenciamento.
- Na lista Reinicialização automática, selecione a opção que você quer usar.
- Na lista Na manutenção do host, selecione a opção que você quer.
Para criar a VM, clique em Criar.
gcloud
Para definir a política de manutenção do host de uma nova VM em gcloud compute
, use
a sinalização --maintenance-policy
para especificar se a VM será
migrada ou interrompida. Por padrão, as VMs são configuradas automaticamente
para reiniciar, a menos que você forneça a sinalização --no-restart-on-failure
.
Para especificar o tempo máximo que o Compute Engine aguarda para reiniciar ou
encerrar uma VM depois de detectar que ela não está respondendo, use a
sinalização --host-error-timeout-seconds
(Visualização). de dados.
gcloud compute instances create VM_NAME \ --maintenance-policy=MAINTENANCE_POLICY \ --host-error-timeout-seconds=NUMBER_OF_SECONDS \ [--no-restart-on-failure]
Substitua:
VM_NAME
: o nome da VM.MAINTENANCE_POLICY
: a política dessa VM (TERMINATE
ouMIGRATE
)NUMBER_OF_SECONDS
: o número de segundos que o Compute Engine aguarda antes de reiniciar uma VM não responsiva, entre90
e330
, em incrementos de 30. Essa opção está disponível em "Visualização". Para usar essa opção, use o comandogcloud beta compute instances create
.
API
Para definir a política de manutenção de host de uma nova VM usando a
API Compute Engine, use o
método instances.insert
.
No corpo da solicitação, adicione onHostMaintenance
para especificar se a VM será migrada ou interrompida durante a manutenção do host. As VMs são
definidas automaticamente para reiniciar após um erro de host, a menos que você defina
automaticRestart
como false
.
Para especificar o tempo máximo que o Compute Engine aguarda para reiniciar ou
encerrar uma VM depois de detectar que a VM não está respondendo, adicione o parâmetro
hostErrorTimeoutSeconds
(Visualização). ao corpo da solicitação.
Na API, faça uma solicitação POST
para o seguinte URL, substituindo o projeto e a zona pelo ID do projeto e a zona da VM:
https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances
Substitua:
PROJECT_ID
: o projeto em que você quer criar a VM emZONE
: a zona em que você quer criar a VM
Adicione os parâmetros onHostMaintenance
, hostErrorTimeoutSeconds
e automaticRestart
como parte do corpo da solicitação:
{ "name": "VM_NAME", ... // User options for influencing this Instance's life cycle. "scheduling": { "onHostMaintenance": "MAINTENANCE_POLICY", "hostErrorTimeoutSeconds": NUMBER_OF_SECONDS, "automaticRestart": RESTART_POLICY } }
Substitua:
VM_NAME
: o nome da VM.MAINTENANCE_POLICY
: a política dessa VM (TERMINATE
ouMIGRATE
)NUMBER_OF_SECONDS
: o número de segundos que o Compute Engine aguarda antes de reiniciar uma VM não responsiva, entre90
e330
, em incrementos de 30. Essa opção está disponível em "Visualização". Para usar essa opção, utilize o método Betainstances.inset
.RESTART_POLICY
: a política de reinicialização desta VM,true
oufalse
Atualizar política de manutenção de host de uma VM
Console
No Console do Google Cloud, acesse a página Instâncias de VMs.
Clique na VM com as configurações que você quer alterar. A página de detalhes da VM é exibida.
Na página de detalhes da VM, conclua estas etapas:
- Clique no botão Editar na parte superior da página.
- Em Políticas de disponibilidade, atualize a política, conforme necessário. Na seção Políticas de disponibilidade, defina as opções Na manutenção do host e Reinicialização automática.
- Clique em Save.
gcloud
Para atualizar a política de manutenção do host de uma VM atual, use o
comando gcloud compute instances set-scheduling
com os mesmos parâmetros e sinalizações usados no comando de criação da VM
acima.
gcloud compute instances set-scheduling VM_NAME \ --maintenance-policy=MAINTENANCE_POLICY \ --host-error-timeout-seconds=NUMBER_OF_SECONDS \ [--no-restart-on-failure | --restart-on-failure]
Substitua:
MAINTENANCE_POLICY
: a política dessa VM (TERMINATE
ouMIGRATE
)VM_NAME
: o nome da VM.NUMBER_OF_SECONDS
: o número de segundos que o Compute Engine aguarda antes de reiniciar uma VM não responsiva, entre90
e330
, em incrementos de 30. Essa opção está disponível em "Visualização". Para usar essa opção, use o comandogcloud beta compute instances set-scheduling
.
API
Para atualizar a política de manutenção do host de uma VM atual, use o
método instances.setScheduling
.
No corpo da solicitação, adicione onHostMaintenance
para especificar se a VM será migrada ou interrompida durante a manutenção do host. As VMs são
definidas automaticamente para reiniciar após um erro de host, a menos que você defina
automaticRestart
como false
.
Para especificar o tempo máximo que o Compute Engine aguarda para reiniciar ou
encerrar uma VM depois de detectar que a VM não está respondendo, adicione o parâmetro
hostErrorTimeoutSeconds
(Visualização). ao corpo da solicitação.
Na API, faça uma solicitação POST
para o seguinte URL:
https://compute.googleapis.com/compute/v1/projects/PROJECT_IDt/zones/ZONE/instances/VM_NAME/setScheduling
Substitua:
PROJECT_ID
: é o projeto em que a VM está localizadaZONE
: é a zona em que a VM está localizadaVM_NAME
: o nome da VM.
Adicione os parâmetros onHostMaintenance
, hostErrorTimeoutSeconds
e automaticRestart
como parte do corpo da solicitação:
{ "onHostMaintenance": "MAINTENANCE_POLICY", "hostErrorTimeoutSeconds": NUMBER_OF_SECONDS, "automaticRestart": RESTART_POLICY }
Substitua:
MAINTENANCE_POLICY
: a política dessa VM (TERMINATE
ouMIGRATE
)NUMBER_OF_SECONDS
: o número de segundos que o Compute Engine aguarda antes de reiniciar uma VM não responsiva, entre90
e330
, em incrementos de 30. Essa opção está disponível em "Visualização". Para usar essa opção, utilize o método Betainstances().setScheduling
.RESTART_POLICY
: a política de reinicialização desta VM,true
oufalse
A seguir
- Saiba mais sobre manutenção do host.
- Saiba mais sobre migração em tempo real.
- Saiba como detectar um evento de migração em tempo real.