Neste documento, explicamos como desativar o encerramento completo em uma instância atual do Compute Engine.
Para acelerar as operações de interrupção ou exclusão e evitar cobranças desnecessárias, é
possível desativar o encerramento completo de uma instância de computação. Essa ação
configura as instâncias de computação para fazer a transição imediata para o estado STOPPING
depois que uma operação de interrupção ou exclusão é iniciada. Não é necessário esperar que o
timer de encerramento completo expire ou encerrar manualmente o encerramento completo.
Para saber mais sobre os requisitos e as limitações que se aplicam ao encerrar uma instância de computação, consulte Sobre o encerramento completo.
Antes de começar
-
Configure a autenticação, caso ainda não tenha feito isso.
Com isso, você confirma sua identidade para acesso a serviços e APIs do Google Cloud . Para executar
códigos ou amostras de um ambiente de desenvolvimento local, autentique-se no
Compute Engine selecionando uma das seguintes opções:
Selecione a guia para como planeja usar as amostras nesta página:
Console
Quando você usa o console do Google Cloud para acessar os serviços e as APIs do Google Cloud , não é necessário configurar a autenticação.
gcloud
-
Instale a CLI do Google Cloud. Após a instalação, inicialize a Google Cloud CLI executando o seguinte comando:
gcloud initAo usar um provedor de identidade (IdP) externo, primeiro faça login na CLI gcloud com sua identidade federada.
-
- Defina uma região e uma zona padrão.
REST
Para usar as amostras da API REST desta página em um ambiente de desenvolvimento local, use as credenciais fornecidas para a CLI gcloud.
Instale a CLI do Google Cloud.
Ao usar um provedor de identidade (IdP) externo, primeiro faça login na CLI gcloud com sua identidade federada.
Saiba mais em Autenticar para usar REST na documentação de autenticação do Google Cloud .
Funções exigidas
Para receber as permissões necessárias para
desativar o encerramento completo em uma instância de computação,
peça ao administrador para conceder a você o
papel do IAM de Administrador da instância do Compute (v1) (roles/compute.instanceAdmin.v1) no projeto.
Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.
Esse papel predefinido contém a permissão compute.instances.update na instância de computação, que é necessária para desativar o encerramento completo em uma instância de computação.
Também é possível receber essa permissão com papéis personalizados ou outros papéis predefinidos.
Desativar o encerramento completo em uma instância de computação
É possível desativar o encerramento completo em uma instância de computação sem reiniciar a
instância de computação. No entanto, se a instância de computação estiver sendo encerrada de forma completa
(PENDING_STOP), será necessário encerrar o encerramento completo antes de desativá-lo.
Para desativar o encerramento completo em uma instância de computação, selecione uma das seguintes opções:
Console
No console do Google Cloud , acesse a página Instâncias de VM.
Na coluna Nome, clique no nome da instância de computação. A página de detalhes da instância de computação é aberta na guia Detalhes.
Clique em Editar.
Na seção Gerenciamento, desmarque a caixa de seleção Desligar a VM normalmente.
Clique em Salvar.
gcloud
Para desativar o encerramento completo em uma instância de computação, use o
comando gcloud compute instances update
com a flag --no-graceful-shutdown:
gcloud compute instances update INSTANCE_NAME \
--no-graceful-shutdown \
--zone=ZONE
Substitua:
INSTANCE_NAME: o nome da instância de computação.ZONE: a zona em que a instância de computação está.
REST
Crie um arquivo JSON vazio.
Para conferir as propriedades de uma instância de computação atual, faça uma solicitação
GETpara o métodoinstances.get:GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAMESubstitua:
PROJECT_ID: o ID do projeto em que a instância de computação está.ZONE: a zona em que a instância de computação está.INSTANCE_NAME: o nome de uma instância de computação atual.
No arquivo JSON vazio que você criou nas etapas anteriores, faça o seguinte:
Insira os detalhes da configuração da instância de computação na saída da solicitação
GET.Localize o campo
gracefulShutdown.enablede mude o valor dele parafalse:{ ... "scheduling": { ... "gracefulShutdown": { "enabled": false } }, ... }
Para atualizar a instância de computação, faça uma solicitação
PUTao métodoinstances.update. Inclua o seguinte:No URL da solicitação, inclua o parâmetro de consulta
mostDisruptiveAllowedAction.No corpo da solicitação, inclua as propriedades da instância de computação que estão no arquivo JSON que você criou e atualizou nas etapas anteriores.
A solicitação
PUTpara atualizar a instância de computação é parecida com esta:PUT https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME?mostDisruptiveAllowedAction=ALLOWED_ACTION { ... "scheduling": { ... "gracefulShutdown": { "enabled": false } }, ... }Substitua
ALLOWED_ACTIONpor um dos seguintes valores:NO_EFFECT: a solicitação verifica se a solicitação de atualização é válida e se os recursos estão disponíveis, mas não atualiza a instância de computação.REFRESH: se as propriedades modificadas não exigirem que a instância de computação seja reiniciada, o Compute Engine atualizará a instância de computação.
Para saber como atualizar as propriedades de uma instância de computação, consulte Atualizar as propriedades da instância.