Neste documento, explicamos como ativar o desligamento normal em uma instância do Compute Engine nova ou atual. Para saber mais sobre o encerramento gradual, consulte Visão geral do encerramento gradual.
Ao ativar o encerramento normal em uma instância, você pode dar ao SO convidado até uma hora para ser encerrado normalmente quando a instância for interrompida ou excluída. Isso ajuda a evitar a perda de dados ou a corrupção de sistemas de arquivos.
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ódigo ou exemplos em um ambiente de desenvolvimento local, faça a autenticação no Compute Engine com um destes métodos:
  
   
   
     
   
  
   
   
     
   
  
   
   
     
   
  
 
 
 
  
    
      
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
- 
 
 
  
  
   
   
  
   
   
  
   
   
     
   
  
  
   
   
  
   
   
  
   
   
  
 
 
   
   
      
Instale a CLI do Google Cloud. Após a instalação, inicialize a CLI do Google Cloud executando o seguinte comando:
gcloud initAo usar um provedor de identidade (IdP) externo, primeiro faça login na gcloud CLI com sua identidade federada.
 - Set a default region and zone.
 
REST
Para usar as amostras da API REST desta página em um ambiente de desenvolvimento local, use as credenciais fornecidas para gcloud CLI.
Instale a CLI do Google Cloud. Após a instalação, inicialize a CLI do Google Cloud executando o seguinte comando:
gcloud initAo usar um provedor de identidade (IdP) externo, primeiro faça login na gcloud CLI 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 ativar o encerramento normal 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 seu 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 as permissões necessárias para ativar o encerramento normal em uma instância de computação. Para acessar as permissões exatas necessárias, expanda a seção Permissões necessárias:
Permissões necessárias
As seguintes permissões são necessárias para ativar o desligamento normal em uma instância de computação:
- 
                Para criar instâncias:
                   
compute.instances.createno projeto- Para usar uma imagem personalizada para criar a VM: 
compute.images.useReadOnlyna imagem - Usar um snapshot para criar a VM: 
compute.snapshots.useReadOnlyno snapshot - Usar um modelo de instância para criar a VM: 
compute.instanceTemplates.useReadOnlyno modelo de instância - Atribuir uma rede legada à VM: 
compute.networks.useno projeto - Especificar um endereço IP estático para a VM: 
compute.addresses.useno projeto - Atribuir um endereço IP externo à VM ao usar uma rede legada: 
compute.networks.useExternalIpno projeto - Especificar uma sub-rede para a VM: 
compute.subnetworks.useno projeto ou na sub-rede escolhida - Atribuir um endereço IP externo à VM ao usar uma rede VPC: 
compute.subnetworks.useExternalIpno projeto ou na sub-rede escolhida - Definir os metadados da instância de VM para a VM: 
compute.instances.setMetadatano projeto - Definir tags para a VM: 
compute.instances.setTagsna VM - Definir rótulos para a VM: 
compute.instances.setLabelsna VM - Definir uma conta de serviço para a VM usar: 
compute.instances.setServiceAccountna VM - Criar um disco para a VM: 
compute.disks.createno projeto - Anexar um disco atual no modo somente leitura ou de leitura e gravação: 
compute.disks.useno disco - Anexar um disco atual no modo somente leitura: 
compute.disks.useReadOnlyno disco 
 - 
                Para criar um modelo de instância:
                  
compute.instanceTemplates.createno projeto - 
                Para ativar o encerramento normal em uma instância atual:
                   
compute.instances.updatena instância 
Essas permissões também podem ser concedidas com funções personalizadas ou outros papéis predefinidos.
Ativar o desligamento normal
Para ativar o desligamento normal em uma instância de computação, use um dos seguintes métodos:
Ativar o desligamento normal em uma instância atual
É possível ativar o desligamento normal em uma instância de computação sem interromper ou reiniciar. O período padrão de desligamento normal é de 10 minutos, mas é possível especificar um período personalizado entre um segundo e uma hora.
Para ativar o desligamento normal em uma instância, 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 em que você quer ativar o desligamento normal.
A página de detalhes da instância é aberta.
Clique em Editar.
Na seção Gerenciamento, faça o seguinte:
Marque a caixa de seleção Desligar a VM normalmente.
Opcional: para especificar um período de desligamento normal personalizado, informe uma duração no campo Duração máxima.
Clique em Salvar.
gcloud
Para ativar o desligamento normal em uma instância atual, use o comando
gcloud beta compute instances updatecom a flag--graceful-shutdown:gcloud beta compute instances update INSTANCE_NAME \ --graceful-shutdown \ --zone=ZONESubstitua:
INSTANCE_NAME: o nome da instância.ZONE: a zona em que a instância está localizada.
Se quiser especificar um período de desligamento normal personalizado, inclua a flag
--graceful-shutdown-max-duration:gcloud beta compute instances update INSTANCE_NAME \ --graceful-shutdown \ --graceful-shutdown-max-duration=MAX_DURATION \ --zone=ZONESubstitua
MAX_DURATIONpor uma duração para o período de desligamento. O valor precisa ser formatado como o número de horas, minutos ou segundos, seguido porh,mes, respectivamente. Por exemplo, especifique1hpara uma hora ou20m10spara 20 minutos e 10 segundos.REST
Crie um arquivo JSON vazio.
Para conferir as propriedades de uma instância atual, faça uma solicitação
GETpara o métodoinstances.getda versão Beta:GET https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAMESubstitua:
PROJECT_ID: o ID do projeto em que a instância está localizada.ZONE: a zona em que a instância está localizada.INSTANCE_NAME: o nome de uma instância.
No arquivo JSON vazio que você criou nas etapas anteriores, faça o seguinte:
Insira os detalhes da configuração da instância na saída da solicitação
GET.No campo
scheduling, adicione o campogracefulShutdownda seguinte forma:{ ... "scheduling": { ... "gracefulShutdown": { "enabled": true } }, ... }Se quiser especificar um período de desligamento normal personalizado, inclua o campo
maxDuration:{ ... "scheduling": { ... "gracefulShutdown": { ... "enabled": true, "maxDuration": { "seconds": "MAX_DURATION" } } }, ... }Substitua
MAX_DURATIONpor uma duração em segundos para o período de desligamento normal. O valor precisa estar entre1e3600, que é 3.600 segundos (uma hora).
Para atualizar e reiniciar a instância, faça uma solicitação
PUTao método Betainstances.update. Na solicitação, faça o seguinte:No URL da solicitação, inclua o parâmetro de consulta
mostDisruptiveAllowedActiondefinido comoRESTART.No corpo da solicitação, inclua as propriedades da instância do arquivo JSON que você criou e atualizou nas etapas anteriores.
A solicitação
PUTpara atualizar a instância é semelhante a esta:PUT https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME?mostDisruptiveAllowedAction=RESTART { ... "scheduling": { ... "gracefulShutdown": { "enabled": true } }, ... }
Para mais informações sobre como atualizar as propriedades de uma instância, consulte Atualizar propriedades da instância.
Ativar o desligamento normal ao criar uma instância
Quando você cria uma instância de computação com o desligamento automático ativado, o período de desligamento padrão é de 10 minutos. Se quiser, especifique um período de desligamento personalizado entre um segundo e uma hora.
Para criar uma instância com o desligamento normal ativado, selecione uma das seguintes opções:
Console
No console do Google Cloud , acesse a página Instâncias de VM.
Clique em Criar instância.
A página Criar uma instância será aberta.
Especifique um Nome para a instância.
Especifique a Região e a Zona em que a instância será criada.
Especifique um tipo de máquina para a instância.
No menu de navegação, clique em Avançado.
Expanda a seção Configurações avançadas do modelo de provisionamento de VM e faça o seguinte:
Marque a caixa de seleção Desligar a VM normalmente.
Opcional: para especificar um período de desligamento normal personalizado, informe uma duração no campo Duração máxima.
Clique em Criar.
gcloud
Para criar uma instância com o desligamento normal ativado, use o comando
gcloud beta compute instances createcom a flag--graceful-shutdown:gcloud beta compute instances create INSTANCE_NAME \ --graceful-shutdown \ --machine-type=MACHINE_TYPE \ --zone=ZONESubstitua:
INSTANCE_NAME: o nome da instância.MACHINE_TYPE: o tipo de máquina a ser usado para a instância.ZONE: a zona em que a instância será criada.
Se quiser especificar um período de desligamento normal personalizado, inclua a flag
--graceful-shutdown-max-duration:gcloud beta compute instances create INSTANCE_NAME \ --graceful-shutdown \ --graceful-shutdown-max-duration=MAX_DURATION \ --machine-type=MACHINE_TYPE \ --zone=ZONESubstitua
MAX_DURATIONpor uma duração para o período de desligamento normal. O valor precisa ser formatado como o número de horas, minutos ou segundos, seguido porh,mes, respectivamente. Por exemplo, especifique1hpara uma hora ou20m10spara 20 minutos e 10 segundos.REST
Para criar uma instância com o desligamento normal ativado, faça uma solicitação
POSTpara o métodobeta.instances.insert. No corpo da solicitação, inclua o campogracefulShutdown:POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instances { "name": "INSTANCE_NAME", "machineType": "zones/ZONE/machineTypes/MACHINE_TYPE", "disks": [ { "boot": true, "initializeParams": { "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE" } } ], "networkInterfaces": [ { "network": "global/networks/default" } ], "scheduling": { "gracefulShutdown": { "enabled": true } } }Substitua:
PROJECT_ID: o ID do projeto em que a instância será criada.ZONE: a zona em que a instância será criada.INSTANCE_NAME: o nome da instância.MACHINE_TYPE: o tipo de máquina da instância.IMAGE_PROJECT: o projeto de imagem que contém a imagem, por exemplo,debian-cloud. Para mais informações sobre os projetos de imagem com suporte, consulte Imagens públicas.IMAGE: especifique uma destas opções:Uma versão específica da imagem do SO. Por exemplo:
debian-12-bookworm-v20240617Uma família de imagens, que precisa ser formatada como
family/IMAGE_FAMILY. Essa formatação especifica a imagem do SO mais recente e não descontinuada. Por exemplo, se você especificarfamily/debian-12, a versão mais recente na família de imagens do Debian 12 será usada. Para mais informações sobre o uso de famílias de imagens, consulte Práticas recomendadas para famílias de imagens.
Opcionalmente, para especificar um período de desligamento normal personalizado, inclua o campo
maxDurationno corpo da solicitação:POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instances { "name": "INSTANCE_NAME", "machineType": "zones/ZONE/machineTypes/MACHINE_TYPE", "disks": [ { "boot": true, "initializeParams": { "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE" } } ], "networkInterfaces": [ { "network": "global/networks/default" } ], "scheduling": { "gracefulShutdown": { "enabled": true, "maxDuration": { "seconds": "MAX_DURATION" } } } }Substitua
MAX_DURATIONpor uma duração em segundos para o período de desligamento normal. O valor precisa estar entre1e3600, que é 3.600 segundos (uma hora).Para mais opções de configuração ao criar uma instância, consulte Criar e iniciar uma instância do Compute Engine.
Ativar o encerramento normal ao criar instâncias em massa
Quando você cria instâncias de computação em massa com o encerramento automático ativado, o período de encerramento padrão é de 10 minutos. Se quiser, especifique um período de desligamento personalizado entre um segundo e uma hora.
Para criar instâncias em massa com o desligamento normal ativado, selecione uma das seguintes opções:
gcloud
Para criar instâncias em massa com o desligamento normal ativado, use o comando
gcloud beta compute instances bulk createcom a flag--graceful-shutdown.Por exemplo, para criar instâncias em massa em uma única zona e especificar um padrão de nome para elas, execute o seguinte comando:
gcloud beta compute instances bulk create \ --count=COUNT \ --graceful-shutdown \ --machine-type=MACHINE_TYPE \ --name-pattern="NAME_PATTERN" \ --zone=ZONESubstitua:
COUNT: o número de instâncias a serem criadas.MACHINE_TYPE: o tipo de máquina das instâncias.NAME_PATTERN: o padrão de nome para as instâncias. Para substituir uma sequência de números no nome de uma instância, use uma sequência de caracteres hash (#). Por exemplo, usarinstance-#para o padrão de nome gera instâncias com nomes que começam cominstance-1,instance-2e continuam até o número de instâncias especificado porCOUNT.ZONE: a zona em que as instâncias serão criadas em massa.
Se quiser especificar um período de desligamento normal personalizado, inclua a flag
--graceful-shutdown-max-duration:gcloud beta compute instances bulk create \ --count=COUNT \ --graceful-shutdown \ --graceful-shutdown-max-duration=MAX_DURATION \ --machine-type=MACHINE_TYPE \ --name-pattern="NAME_PATTERN" \ --zone=ZONESubstitua
MAX_DURATIONpor uma duração para o período de desligamento normal. O valor precisa ser formatado como o número de horas, minutos ou segundos, seguido porh,mes, respectivamente. Por exemplo, especifique1hpara uma hora ou20m10spara 20 minutos e 10 segundos.REST
Para criar instâncias em massa com o desligamento normal ativado, faça uma solicitação
POSTpara o método Betainstances.bulkInsert. No corpo da solicitação, inclua o campogracefulShutdown.Por exemplo, para criar instâncias em massa em uma única zona e especificar um padrão de nome para elas, faça uma solicitação
POSTda seguinte maneira:POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instances/bulkInsert { "count": COUNT, "namePattern": "NAME_PATTERN", "instanceProperties": { "machineType": "MACHINE_TYPE", "disks": [ { "boot": true, "initializeParams": { "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE" } } ], "networkInterfaces": [ { "network": "global/networks/default" } ], "scheduling": { "gracefulShutdown": { "enabled": true } } } }Substitua:
PROJECT_ID: o ID do projeto em que as instâncias serão criadas em massa.ZONE: a zona em que as instâncias serão criadas em massa.COUNT: o número de instâncias a serem criadas.NAME_PATTERN: o padrão de nome para as instâncias. Para substituir uma sequência de números no nome de uma instância, use uma sequência de caracteres hash (#). Por exemplo, usarinstance-#para o padrão de nome gera instâncias com nomes que começam cominstance-1,instance-2e continuam até o número de instâncias especificado porCOUNT.MACHINE_TYPE: o tipo de máquina das instâncias.IMAGE_PROJECT: o projeto de imagem que contém a imagem, por exemplo,debian-cloud. Para mais informações sobre os projetos de imagem com suporte, consulte Imagens públicas.IMAGE: especifique uma destas opções:Uma versão específica da imagem do SO. Por exemplo:
debian-12-bookworm-v20240617Uma família de imagens, que precisa ser formatada como
family/IMAGE_FAMILY. Essa formatação especifica a imagem do SO mais recente e não descontinuada. Por exemplo, se você especificarfamily/debian-12, a versão mais recente na família de imagens do Debian 12 será usada. Para mais informações sobre o uso de famílias de imagens, consulte Práticas recomendadas para famílias de imagens.
ZONE: a zona em que as instâncias serão criadas em massa.
Opcionalmente, para especificar um período de desligamento normal personalizado, inclua o campo
maxDurationno corpo da solicitação:POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instances/bulkInsert { "count": COUNT, "namePattern": "NAME_PATTERN", "instanceProperties": { "machineType": "MACHINE_TYPE", "disks": [ { "boot": true, "initializeParams": { "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE" } } ], "networkInterfaces": [ { "network": "global/networks/default" } ], "scheduling": { "gracefulShutdown": { "enabled": true, "maxDuration": { "seconds": "MAX_DURATION" } } } } }Substitua
MAX_DURATIONpor uma duração em segundos para o período de desligamento normal. O valor precisa estar entre1e3600, que é 3.600 segundos (uma hora).Para mais opções de configuração ao criar instâncias em massa, consulte Criar VMs em massa.
Ativar o desligamento normal ao criar um modelo de instância
Quando você cria um modelo de instância com o encerramento automático ativado, o período de encerramento padrão é de 10 minutos. Se quiser, especifique um período de desligamento personalizado entre um segundo e uma hora.
Todas as instâncias de computação criadas usando o modelo de instância têm o desligamento normal ativado.
Para criar um modelo de instância com o desligamento normal ativado, selecione uma das opções a seguir:
Console
No console do Google Cloud , acesse a página Modelos de instância.
Clique em Criar modelo de instância.
A página Criar um modelo de instância é aberta.
No campo Nome, insira um nome para o modelo de instância.
Selecione o Local da seguinte forma:
Para reduzir a dependência entre regiões criando um modelo de instância regional, faça o seguinte:
Escolha Regional, se ainda não estiver selecionado.
No campo Região, selecione a região em que o modelo de instância será criado.
Caso contrário, para usar o modelo de instância em várias regiões, escolha Global.
Na seção Configuração da máquina, especifique um tipo de máquina.
Expanda a seção Configurações avançadas do modelo de provisionamento de VM e faça o seguinte:
Marque a caixa de seleção Desligar a VM normalmente.
Opcional: para especificar um período de desligamento normal personalizado, informe uma duração no campo Duração máxima.
Clique em Criar.
gcloud
Para criar um modelo de instância com o desligamento normal ativado, use o comando
gcloud beta compute instance-templates createcom a flag--graceful-shutdown.Por exemplo, para criar um modelo de instância regional com o desligamento normal ativado, execute o seguinte comando:
gcloud beta compute instance-templates create INSTANCE_TEMPLATE_NAME \ --graceful-shutdown \ --instance-template-region=REGION \ --machine-type=MACHINE_TYPESubstitua:
INSTANCE_TEMPLATE_NAME: o nome do modelo de instância.REGION: a região em que o modelo de instância será criado.MACHINE_TYPE: o tipo de máquina das instâncias criadas usando o modelo de instância.
Se quiser especificar um período de desligamento normal personalizado, inclua a flag
--graceful-shutdown-max-duration.gcloud beta compute instance-templates create INSTANCE_TEMPLATE_NAME \ --graceful-shutdown \ --graceful-shutdown-max-duration=MAX_DURATION \ --instance-template-region=REGION \ --machine-type=MACHINE_TYPESubstitua
MAX_DURATIONpor uma duração para o período de desligamento. O valor precisa ser formatado como o número de horas, minutos ou segundos, seguido porh,mes, respectivamente. Por exemplo, especifique1hpara uma hora ou20m10spara 20 minutos e 10 segundos.REST
Para criar um modelo de instância com o desligamento normal ativado, faça uma solicitação
POSTpara um dos seguintes métodos:Para criar um modelo de instância global: método
instanceTemplates.insertda versão Beta.Para criar um modelo de instância regional: método
regionInstanceTemplates.insertda versão Beta.
Por exemplo, para criar um modelo de instância regional com o desligamento normal ativado, faça uma solicitação
POSTda seguinte maneira:POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/instanceTemplates { "name": "INSTANCE_TEMPLATE_NAME", "properties": { "disks": [ { "boot": true, "initializeParams": { "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE" } } ], "machineType": "MACHINE_TYPE", "networkInterfaces": [ { "network": "global/networks/default" } ], "scheduling": { "gracefulShutdown": { "enabled": true } } } }Substitua:
PROJECT_ID: o ID do projeto em que o modelo de instância será criado.REGION: a região em que o modelo de instância será criado.INSTANCE_TEMPLATE_NAME: o nome do modelo de instância.IMAGE_PROJECT: o projeto de imagem que contém a imagem, por exemplo,debian-cloud. Para mais informações sobre os projetos de imagem com suporte, consulte Imagens públicas.IMAGE: especifique uma destas opções:Uma versão específica da imagem do SO. Por exemplo:
debian-12-bookworm-v20240617Uma família de imagens, que precisa ser formatada como
family/IMAGE_FAMILY. Essa formatação especifica a imagem do SO mais recente e não descontinuada. Por exemplo, se você especificarfamily/debian-12, a versão mais recente na família de imagens do Debian 12 será usada. Para mais informações sobre o uso de famílias de imagens, consulte Práticas recomendadas para famílias de imagens.
MACHINE_TYPE: o tipo de máquina das instâncias criadas usando o modelo de instância.
Opcionalmente, para especificar um período de desligamento normal personalizado, inclua o campo
maxDurationno corpo da solicitação.POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/global/instanceTemplates { "name": "INSTANCE_TEMPLATE_NAME", "properties": { "disks": [ { "boot": true, "initializeParams": { "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE" } } ], "machineType": "MACHINE_TYPE", "networkInterfaces": [ { "network": "global/networks/default" } ], "scheduling": { "gracefulShutdown": { "enabled": true, "maxDuration": { "seconds": "MAX_DURATION" } } } } }Substitua
MAX_DURATIONpor uma duração em segundos para o período de desligamento. O valor precisa estar entre1e3600, que é 3.600 segundos (uma hora).Para mais opções de configuração ao criar um modelo de instância, consulte Criar modelos de instância.
A seguir
Ver o encerramento normal em uma instância do Compute Engine
Desativar o encerramento normal em uma instância do Compute Engine
Exceto em caso de indicação contrária, o conteúdo desta página é licenciado de acordo com a Licença de atribuição 4.0 do Creative Commons, e as amostras de código são licenciadas de acordo com a Licença Apache 2.0. Para mais detalhes, consulte as políticas do site do Google Developers. Java é uma marca registrada da Oracle e/ou afiliadas.
Última atualização 2025-10-19 UTC.
 [[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Difícil de entender","hardToUnderstand","thumb-down"],["Informações incorretas ou exemplo de código","incorrectInformationOrSampleCode","thumb-down"],["Não contém as informações/amostras de que eu preciso","missingTheInformationSamplesINeed","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 2025-10-19 UTC."],[],[]] -