Este documento explica como limitar o tempo de execução de instâncias de máquinas virtuais (VM) novas ou existentes e como monitorar o tempo de execução dessas VMs. Para grupos gerenciados de instâncias (MIGs), consulte Limitar o tempo de execução de um MIG .
Ao limitar o tempo de execução de uma VM, você pode programar a VM para ser encerrada automaticamente (parada ou excluída) quando atingir um limite de tempo específico (duração ou tempo). Use limites de tempo para ajudar a otimizar cargas de trabalho temporárias. Ao limitar automaticamente os tempos de execução da VM, você pode ajudar a minimizar custos e liberar cotas.
Para saber como parar imediatamente uma VM, consulte Parar ou reiniciar uma VM . Para saber como excluir imediatamente uma VM, consulte Excluir uma VM .
Antes de começar
Para obter as permissões necessárias para limitar o tempo de execução de uma VM, peça ao administrador para conceder a você a função do IAM Compute Instance Admin (v1) (
roles/compute.instanceAdmin.v1
) no projeto. Para obter mais informações sobre a concessão de funções, consulte Gerenciar acesso a projetos, pastas e organizações .Você também poderá obter as permissões necessárias por meio de funções personalizadas ou outras funções predefinidas .
- Se ainda não o fez, configure a autenticação. Autenticação é o processo pelo qual sua identidade é verificada para acesso a Google Cloud serviços e APIs. Para executar códigos ou amostras em um ambiente de desenvolvimento local, você pode se autenticar no Compute Engine selecionando uma das seguintes opções:
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
-
After installing the Google Cloud CLI, initialize it by running the following command:
gcloud init
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
- Set a default region and zone.
A ação de encerramento automático deve ser parar ou excluir. Você não pode configurar uma VM para ser suspensa automaticamente quando o limite de tempo for atingido.
O prazo mínimo é de 30 segundos e o prazo máximo é de 120 dias.
O encerramento automático pode levar até 30 segundos a mais do que a duração ou o tempo especificado para começar a parar ou excluir a VM.
Você não pode usar limites de tempo com VMs preemptivas herdadas . Em vez disso, use limites de tempo com VMs Spot .
Os dados SSD locais de uma VM não podem ser preservados quando a VM é interrompida automaticamente devido a um limite de tempo. Para obter mais informações, consulte Interromper uma VM com SSD local .
O carimbo de data/hora de encerramento de uma VM (
terminationTimestamp
) é um campo somente leitura que representa o tempo planejado para o encerramento automático e é definido automaticamente pelo Compute Engine sempre que uma VM tem um limite de tempo e entra no estadoRUNNING
.O carimbo de data/hora de encerramento é apagado automaticamente sempre que uma VM é interrompida ou suspensa . No entanto, um carimbo de data/hora de encerramento não muda quando você reinicia ou reinicia a VM .
O carimbo de data/hora de encerramento é redefinido automaticamente sempre que a VM é reiniciada ou retomada com base no tipo de limite de tempo definido:
- Se você definir uma duração para a VM, o carimbo de data/hora de término será recalculado adicionando essa duração ao horário de início mais recente da VM.
- Se você definir um horário para a VM, o carimbo de data/hora de encerramento será definido para esse horário. Contudo, o tempo deve estar no futuro; caso contrário, quaisquer solicitações para criar ou executar novamente a VM falharão até que você atualize ou remova o horário.
No console do Google Cloud, acesse a página Criar uma instância .
Na seção Políticas de disponibilidade , expanda configurações avançadas do modelo de provisionamento de VM .
Marque a caixa de seleção Definir um limite de tempo para a VM . O campo Tipo de limite de tempo é exibido.
No campo Tipo de limite de tempo , selecione Por horas (padrão) para especificar o limite de tempo como duração. No campo a seguir, insira a duração em horas.
Na lista Na terminação da VM , selecione o que acontece quando o tempo de execução da VM atinge o limite de tempo especificado:
- Para parar automaticamente a VM, selecione Parar (padrão).
- Para excluir a VM, selecione Excluir .
Opcional: Especifique outras opções de VM. Para obter mais informações, consulte Criando e iniciando uma instância de VM .
Para criar e iniciar a VM, clique em Criar .
- Para criar uma VM que seja encerrada automaticamente após uma duração específica, você deve incluir o sinalizador
--max-run-duration
. - Para especificar a ação de encerramento, inclua o sinalizador
--instance-termination-action
. - Configure o sinalizador
--discard-local-ssds-at-termination-timestamp
:- Se a VM tiver SSDs locais e a ação de encerramento (
TERMINATION_ACTION
) for stop (STOP
), você deverá incluir o--discard-local-ssds-at-termination-timestamp=true
. - Caso contrário, omita o sinalizador
--discard-local-ssds-at-termination-timestamp
.
- Se a VM tiver SSDs locais e a ação de encerramento (
-
VM_NAME
: o nome da nova VM. -
DURATION
: a duração que você deseja que esta VM seja executada antes de ser encerrada automaticamente. Formate a duração como o número de dias, horas, minutos e segundos seguidos pord
,h
,m
es
respectivamente. Por exemplo, especifique30m
para uma duração de 30 minutos ou especifique1d2h3m4s
para uma duração de 1 dia, 2 horas, 3 minutos e 4 segundos. A duração mínima é de 30 segundos (30s
) e a duração máxima é de 120 dias (120d
). -
TERMINATION_ACTION
: a ação de encerramento desta VM, que pode ser parar (STOP
) ou excluir (DELETE
). Se este campo é obrigatório ou tem um valor padrão varia de acordo com o modelo de provisionamento da VM:- Se esta for uma VM Spot (se a VM usar o sinalizador
--provisioning-model=SPOT
), o sinalizador--instance-termination-action= TERMINATION_ACTION
será opcional. Se esse sinalizador for omitido, a ação de encerramento padrão será parada. - Caso contrário (padrão), o sinalizador
--instance-termination-action= TERMINATION_ACTION
é obrigatório.
- Se esta for uma VM Spot (se a VM usar o sinalizador
- Para criar uma VM que seja encerrada automaticamente após uma duração específica, você deve incluir o argumento
max_run_duration
. - Para especificar a ação de encerramento, inclua o argumento
instance_termination_action
. Você deve incluir o argumentoinstance_termination_action
, a menos que esteja criando uma VM Spot (defina o argumentoprovisioning_model
comoSPOT
), cujo padrão é stop (STOP
). - Configure o argumento
on_instance_stop_action
:- Se a VM tiver SSDs locais e a ação de encerramento ( argumento
instance_termination_action
) for stop (STOP
), você deverá definir o argumentoon_instance_stop_action
como true (true
). - Caso contrário, omita o argumento
on_instance_stop_action
.
- Se a VM tiver SSDs locais e a ação de encerramento ( argumento
-
PROJECT_ID
: o ID do projeto no qual criar a VM. -
ZONE
: a zona na qual criar a VM. A zona também deve oferecer suporte ao tipo de máquina a ser usada para a nova VM. -
MACHINE_TYPE
: o tipo de máquina predefinido ou personalizado para a nova VM. -
VM_NAME
: o nome da nova VM. -
IMAGE_PROJECT
: O projeto que contém a imagem . Por exemplo, se você especificarfamily/debian-10
como imagem, especifiquedebian-cloud
como projeto de imagem. -
IMAGE
: A imagem da nova VM. Você pode especificar uma versão específica de uma imagem pública ou uma família de imagens . Por exemplo, se você especificarfamily/debian-10
como imagem edebian-cloud
como projeto de imagem, o Compute Engine criará uma VM a partir da versão mais recente da imagem do sistema operacional na família de imagens Debian 10. -
DURATION
: a duração em segundos que você deseja que esta VM seja executada antes de ser encerrada automaticamente. A duração mínima é de 30 segundos (30s
) e a duração máxima é de 120 dias (120d
). -
TERMINATION_ACTION
: a ação de encerramento desta VM, que pode ser parar (STOP
) ou excluir (DELETE
). Se este campo é obrigatório ou tem um valor padrão varia de acordo com o modelo de provisionamento da VM:- Se esta for uma VM Spot (se a VM usar o campo
"provisioningModel": "SPOT"
), o campo"instanceTerminationAction": " TERMINATION_ACTION "
será opcional. Se este campo for omitido, a ação de encerramento padrão será parada. - Caso contrário (padrão), o campo
"instanceTerminationAction": " TERMINATION_ACTION "
é obrigatório.
- Se esta for uma VM Spot (se a VM usar o campo
No console do Google Cloud, acesse a página Criar uma instância .
Na seção Políticas de disponibilidade , expanda configurações avançadas do modelo de provisionamento de VM .
Marque a caixa de seleção Definir um limite de tempo para a VM . O campo Tipo de limite de tempo é exibido.
No campo Tipo de limite de tempo , selecione Por data para especificar o limite de tempo como hora e data. No campo a seguir, clique em
Selecione data e hora e selecione a data, hora e fuso horário para o limite de tempo.Na lista Na terminação da VM , selecione o que acontece quando o tempo de execução da VM atinge o limite de tempo especificado:
- Para parar automaticamente a VM, selecione Parar (padrão).
- Para excluir a VM, selecione Excluir .
Opcional: Especifique outras opções de VM. Para obter mais informações, consulte Criando e iniciando uma instância de VM .
Para criar e iniciar a VM, clique em Criar .
- Para criar uma VM que seja encerrada automaticamente em um horário específico, você deve incluir o sinalizador
--termination-time
. - Para especificar a ação de encerramento, inclua o sinalizador
--instance-termination-action
, que é opcional para VMs Spot. - Configure o sinalizador
--discard-local-ssds-at-termination-timestamp
:- Se a VM tiver SSDs locais e definir a ação de encerramento (
TERMINATION_ACTION
) como parada (STOP
), você deverá incluir o sinalizador--discard-local-ssds-at-termination-timestamp=true
. - Caso contrário, omita o sinalizador
--discard-local-ssds-at-termination-timestamp
.
- Se a VM tiver SSDs locais e definir a ação de encerramento (
-
VM_NAME
: o nome da nova VM. TIME
: A hora em que você deseja que esta VM seja encerrada automaticamente. O tempo especificado deve ser de pelo menos 30 segundos no futuro e no máximo 120 dias no futuro. Formate a hora como um carimbo de data/hora RFC 3339 :YYYY-MM-DDTHH:MM:SSOFFSET
Substitua o seguinte:
-
YYYY-MM-DD
: uma data formatada como ano de 4 dígitos, mês de 2 dígitos e dia do mês de 2 dígitos separados por hífens. -
HH:MM:SS
: uma hora formatada como uma hora de 2 dígitos usando o formato de 24 horas, minutos de 2 dígitos e segundos de 2 dígitos separados por dois pontos. -
OFFSET
: O fuso horário formatado como um deslocamento do Tempo Universal Coordenado (UTC). Por exemplo, para usar o Horário Padrão do Pacífico (PST), que é 8 horas antes do UTC, especifique-08:00
. Como alternativa, para não usar deslocamento (UTC+0), especifiqueZ
.
-
TERMINATION_ACTION
: a ação de encerramento desta VM, que pode ser parar (STOP
) ou excluir (DELETE
). Se este campo é obrigatório ou tem um valor padrão varia de acordo com o modelo de provisionamento da VM:- Se esta for uma VM Spot (se a VM usar o sinalizador
--provisioning-model=SPOT
), o sinalizador--instance-termination-action= TERMINATION_ACTION
será opcional. Se esse sinalizador for omitido, a ação de encerramento padrão será parada. - Caso contrário (padrão), o sinalizador
--instance-termination-action= TERMINATION_ACTION
é obrigatório.
- Se esta for uma VM Spot (se a VM usar o sinalizador
-
PROJECT_ID
: o ID do projeto no qual criar a VM. -
ZONE
: a zona na qual criar a VM. A zona também deve oferecer suporte ao tipo de máquina a ser usada para a nova VM. -
MACHINE_TYPE
: o tipo de máquina predefinido ou personalizado para a nova VM. -
VM_NAME
: o nome da nova VM. -
IMAGE_PROJECT
: O projeto que contém a imagem . Por exemplo, se você especificarfamily/debian-10
como imagem, especifiquedebian-cloud
como projeto de imagem. -
IMAGE
: A imagem da nova VM. Você pode especificar uma versão específica de uma imagem pública ou uma família de imagens . Por exemplo, se você especificarfamily/debian-10
como imagem edebian-cloud
como projeto de imagem, o Compute Engine criará uma VM a partir da versão mais recente da imagem do sistema operacional na família de imagens Debian 10. TIME
: A hora em que você deseja que esta VM seja encerrada automaticamente. O tempo especificado deve ser de pelo menos 30 segundos no futuro e no máximo 120 dias no futuro. Formate a hora como um carimbo de data/hora RFC 3339 :YYYY-MM-DDTHH:MM:SSOFFSET
Substitua o seguinte:
-
YYYY-MM-DD
: uma data formatada como ano de 4 dígitos, mês de 2 dígitos e dia do mês de 2 dígitos separados por hífens. -
HH:MM:SS
: uma hora formatada como uma hora de 2 dígitos usando o formato de 24 horas, minutos de 2 dígitos e segundos de 2 dígitos separados por dois pontos. -
OFFSET
: O fuso horário formatado como um deslocamento do Tempo Universal Coordenado (UTC). Por exemplo, para usar o Horário Padrão do Pacífico (PST), que é 8 horas antes do UTC, especifique-08:00
. Como alternativa, para não usar deslocamento (UTC+0), especifiqueZ
.
-
TERMINATION_ACTION
: a ação de encerramento desta VM, que pode ser parar (STOP
) ou excluir (DELETE
). Se este campo é obrigatório ou tem um valor padrão varia de acordo com o modelo de provisionamento da VM::- Se esta for uma VM Spot (se a VM usar o campo
"provisioningModel": "SPOT"
), o campo"instanceTerminationAction": " TERMINATION_ACTION "
será opcional. Se este campo for omitido, a ação de encerramento padrão será parada. - Caso contrário (padrão), o campo
"instanceTerminationAction": " TERMINATION_ACTION "
é obrigatório.
- Se esta for uma VM Spot (se a VM usar o campo
No console do Google Cloud, acesse a página de instâncias de VM .
Na coluna Nome , clique no nome da VM que você deseja atualizar.
Na página de detalhes da instância de VM , conclua as etapas a seguir:
- Se a VM estiver em execução, clique em Parar para interrompê-la.
- Para editar a VM, clique em Editar .
Na página Editar instância , conclua as etapas a seguir:
Na seção Políticas de disponibilidade , modifique a caixa de seleção Definir um limite de tempo para a VM e quaisquer campos abaixo dela conforme desejado.
Para obter mais informações sobre como configurar as propriedades para limites de tempo, consulte limitar o tempo de execução de uma nova VM .
Para salvar suas alterações, clique em Salvar .
Opcional: se quiser começar a executar a VM agora, clique em Iniciar .
Se a VM estiver em execução, interrompa-a usando o comando
gcloud compute instances stop
:gcloud compute instances stop VM_NAME
Substitua
VM_NAME
pelo nome da VM que você deseja atualizar.Atualize o limite de tempo da VM usando o comando
gcloud compute instances set-scheduling
.gcloud compute instances set-scheduling VM_NAME \ --max-run-duration=DURATION \ --termination-time=TIME \ --instance-termination-action=TERMINATION_ACTION \ --discard-local-ssds-at-termination-timestamp=true
Configure os seguintes sinalizadores:
- Você deve omitir o sinalizador
--max-run-duration
ou o sinalizador--termination-time
para definir o limite de tempo como tempo ou duração, respectivamente. - Inclua o sinalizador
--instance-termination-action
para definir a ação de encerramento. - Se a VM tiver SSDs locais e definir a ação de encerramento (
TERMINATION_ACTION
) como parada (STOP
), você deverá incluir o sinalizador--discard-local-ssds-at-termination-timestamp=true
. Caso contrário, omita o--discard-local-ssds-at-termination-timestamp=true
.
Em seguida, substitua o seguinte:
-
VM_NAME
: o nome da VM que você deseja atualizar. -
DURATION
: a duração que você deseja que esta VM seja executada antes de ser encerrada automaticamente. Formate a duração como o número de dias, horas, minutos e segundos seguidos pord
,h
,m
es
respectivamente. Por exemplo, especifique30m
para uma duração de 30 minutos ou especifique1d2h3m4s
para uma duração de 1 dia, 2 horas, 3 minutos e 4 segundos. A duração mínima é de 30 segundos (30s
) e a duração máxima é de 120 dias (120d
). TIME
: A hora em que você deseja que esta VM seja encerrada automaticamente. O tempo especificado deve ser de pelo menos 30 segundos no futuro e no máximo 120 dias no futuro. Formate a hora como um carimbo de data/hora RFC 3339 :YYYY-MM-DDTHH:MM:SSOFFSET
Substitua o seguinte:
-
YYYY-MM-DD
: uma data formatada como ano de 4 dígitos, mês de 2 dígitos e dia do mês de 2 dígitos separados por hífens. -
HH:MM:SS
: uma hora formatada como uma hora de 2 dígitos usando o formato de 24 horas, minutos de 2 dígitos e segundos de 2 dígitos separados por dois pontos. -
OFFSET
: o fuso horário formatado como um deslocamento do Tempo Universal Coordenado (UTC). Por exemplo, para usar o Horário Padrão do Pacífico (PST), que é 8 horas antes do UTC, especifique-08:00
. Como alternativa, para não usar deslocamento (UTC+0), especifiqueZ
.
-
TERMINATION_ACTION
: a ação de encerramento desta VM, que pode ser parar (STOP
) ou excluir (DELETE
). Se este campo é obrigatório ou tem um valor padrão varia de acordo com o modelo de provisionamento da VM:- Se esta for uma VM Spot (se a VM usar o sinalizador
--provisioning-model=SPOT
), o sinalizador--instance-termination-action= TERMINATION_ACTION
será opcional. Se esse sinalizador for omitido, a ação de encerramento padrão será parada. - Caso contrário (padrão), o sinalizador
--instance-termination-action= TERMINATION_ACTION
é obrigatório.
- Se esta for uma VM Spot (se a VM usar o sinalizador
- Você deve omitir o sinalizador
Se você quiser que a VM comece a ser executada, inicie-a usando o comando
gcloud compute instances start
:gcloud compute instances start VM_NAME
Substitua
VM_NAME
pelo nome da VM.Se a VM estiver em execução, interrompa-a usando o método
instances.stop
:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/stop
Substitua o seguinte:
Atualize a propriedade
scheduling
da VM, incluindo campos para o limite de tempo da VM, usando o métodoinstances.setScheduling
. Inclua o campomaxRunDuration
ou o campoterminationTime
para definir o limite de tempo como duração ou tempo, respectivamente:Para definir uma duração , use a seguinte solicitação:
POST https://compute.googleapis.com/compute/v1/projects/
PROJECT_ID
/zones/ZONE
/instances/VM_NAME/setScheduling { "maxRunDuration": { "seconds": DURATION }, "instanceTerminationAction": "TERMINATION_ACTION" }Para definir um horário , use a seguinte solicitação:
POST https://compute.googleapis.com/compute/v1/projects/
PROJECT_ID
/zones/ZONE
/instances/VM_NAME/setScheduling { "terminationTime": "TIME", "instanceTerminationAction": "TERMINATION_ACTION" }
Substitua o seguinte:
-
PROJECT_ID
: o ID do projeto no qual criar a VM. -
ZONE
: a zona na qual criar a VM. A zona também deve oferecer suporte ao tipo de máquina a ser usada para a nova VM. -
MACHINE_TYPE
: o tipo de máquina predefinido ou personalizado para a nova VM. -
VM_NAME
: o nome da nova VM. -
IMAGE_PROJECT
: O projeto que contém a imagem . Por exemplo, se você especificarfamily/debian-10
como imagem, especifiquedebian-cloud
como projeto de imagem. -
IMAGE
: A imagem da nova VM. Você pode especificar uma versão específica de uma imagem pública ou uma família de imagens . Por exemplo, se você especificarfamily/debian-10
como imagem edebian-cloud
como projeto de imagem, o Compute Engine criará uma VM a partir da versão mais recente da imagem do sistema operacional na família de imagens Debian 10. -
DURATION
: a duração em segundos que você deseja que esta VM seja executada antes de ser encerrada automaticamente. A duração mínima é de 30 segundos (30s
) e a duração máxima é de 120 dias (120d
). TIME
: A hora em que você deseja que esta VM seja encerrada automaticamente. O tempo especificado deve ser de pelo menos 30 segundos no futuro e no máximo 120 dias no futuro. Formate a hora como um carimbo de data/hora RFC 3339 :YYYY-MM-DDTHH:MM:SSOFFSET
Substitua o seguinte:
-
YYYY-MM-DD
: uma data formatada como ano de 4 dígitos, mês de 2 dígitos e dia do mês de 2 dígitos separados por hífens. -
HH:MM:SS
: uma hora formatada como uma hora de 2 dígitos usando o formato de 24 horas, minutos de 2 dígitos e segundos de 2 dígitos separados por dois pontos. -
OFFSET
: O fuso horário formatado como um deslocamento do Tempo Universal Coordenado (UTC). Por exemplo, para usar o Horário Padrão do Pacífico (PST), que é 8 horas antes do UTC, especifique-08:00
. Como alternativa, para não usar deslocamento (UTC+0), especifiqueZ
.
-
TERMINATION_ACTION
: a ação de encerramento desta VM, que pode ser parar (STOP
) ou excluir (DELETE
). Se este campo é obrigatório ou tem um valor padrão varia de acordo com o modelo de provisionamento da VM:- Se esta for uma VM Spot (se a VM usar o campo
"provisioningModel": "SPOT"
), o campo"instanceTerminationAction": " TERMINATION_ACTION "
será opcional. Se este campo for omitido, a ação de encerramento padrão será parada. - Caso contrário (padrão), o campo
"instanceTerminationAction": " TERMINATION_ACTION "
é obrigatório.
- Se esta for uma VM Spot (se a VM usar o campo
Se você deseja que a VM comece a ser executada, inicie-a usando o método
instances.start
:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/start
Substitua o seguinte:
Para ver quando uma VM em execução está programada para ser encerrada automaticamente, veja o carimbo de data/hora de encerramento da VM:
- Veja os detalhes de uma VM .
- Na saída, visualize o campo da VM para o carimbo de data/hora de encerramento:
- Se você estiver usando o console do Google Cloud, consulte o campo Duração máxima .
- Se você estiver usando a CLI do Google Cloud ou a API Compute Engine, consulte o campo
terminationTimestamp
.
Para verificar se uma VM foi encerrada automaticamente, veja as operações da VM:
- Veja as operações da VM .
Na saída, você pode identificar operações de VM causadas por um limite de tempo procurando os seguintes tipos de operações:
-
compute.instances.deferredStop
indica uma ação de encerramento automático de parada -
compute.instances.deferredDelete
indica uma ação de encerramento automático de exclusão
-
Saiba como otimizar ainda mais suas VMs:
- Se suas cargas de trabalho forem tolerantes a falhas, você poderá usar VMs Spot para obter descontos significativos e cota dedicada opcional.
- Se quiser que uma VM execute comandos automaticamente antes de desligar, você pode usar scripts de desligamento .
Saiba mais sobre opções para limitar automaticamente os tempos de execução das VMs:
REST
Para usar as amostras da API REST nesta página em um ambiente de desenvolvimento local, use as credenciais fornecidas para gcloud CLI.
After installing the Google Cloud CLI, initialize it by running the following command:
gcloud init
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
Para mais informações, consulte Autenticar para usar REST na documentação de autenticação do Google Cloud.
Restrições
Limitar o tempo de execução de uma VM tem as seguintes restrições:
Limite o tempo de execução de uma nova VM
As seções a seguir descrevem como configurar um limite de tempo ao criar uma nova VM. Você pode especificar o limite de tempo, que é quando você deseja que uma VM seja encerrada automaticamente, como uma duração (
maxRunDuration
) ou um tempo (terminationTime
).Ao decidir o tipo de limite de tempo para uma VM, considere que a VM pode ser interrompida, por exemplo, por uma solicitação do usuário ou por um evento do host . O comportamento de um limite de tempo varia de acordo com o tipo de interrupção e o tipo de limite de tempo:
Defina uma duração
Uma duração representa o tempo total de execução desejado para uma VM. Para criar uma VM que seja encerrada automaticamente após a execução da VM por um período específico, use o console do Google Cloud, a CLI do Google Cloud, o Terraform ou a API Compute Engine.
Console
gcloud
Para criar uma VM a partir da CLI gcloud, use o comando
gcloud compute instances create
.gcloud compute instances create VM_NAME \ --max-run-duration=DURATION \ --instance-termination-action=TERMINATION_ACTION
Substitua o seguinte:
Para obter mais informações sobre outras opções que você pode especificar ao criar uma VM, consulte Criando e iniciando uma instância de VM .
Terraforma
Para criar uma VM usando Terraform, use o recurso
google_compute_instance
.Para obter mais informações, consulte a documentação do Terraform para o recurso
google_compute_instance
.DESCANSAR
Para criar uma VM a partir da API Compute Engine, use o método
instances.insert
. Você deve especificar um nome, tipo de máquina e disco de inicialização para a VM.Para criar uma VM que seja encerrada automaticamente após um período específico, você deve incluir o campo
maxRunDuration
. Para especificar a ação de encerramento, inclua o campoinstanceTerminationAction
, que é opcional para VMs Spot.POST https://compute.googleapis.com/compute/v1/projects/
PROJECT_ID
/zones/ZONE
/instances { "machineType": "zones/ZONE/machineTypes/MACHINE_TYPE", "name": "VM_NAME
", "disks": [ { "initializeParams": { "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE" }, "boot": true } ] "scheduling": { "maxRunDuration": { "seconds": DURATION }, "instanceTerminationAction": "TERMINATION_ACTION" }, }Substitua o seguinte:
Para obter mais informações sobre as opções que você pode especificar ao criar uma VM, consulte Criando e iniciando uma instância de VM .
Defina um horário
Uma hora representa a data, a hora e o fuso horário em que você deseja que uma VM seja encerrada. Para criar uma VM que seja encerrada automaticamente em um horário específico, use o console do Google Cloud, a Google Cloud CLI ou a API Compute Engine.
Console
gcloud
Para criar uma VM a partir da CLI gcloud, use o comando
gcloud compute instances create
.gcloud compute instances create VM_NAME \ --termination-time=TIME \ --instance-termination-action=TERMINATION_ACTION
Substitua o seguinte:
Para obter mais informações sobre outras opções que você pode especificar ao criar uma VM, consulte Criando e iniciando uma instância de VM .
DESCANSAR
Para criar uma VM a partir da API Compute Engine, use o método
instances.insert
. Você deve especificar um nome, tipo de máquina e disco de inicialização para a VM.Para criar uma VM que seja encerrada automaticamente em um horário específico, você deve incluir o campo
terminationTime
. Para especificar a ação de encerramento, inclua o campoinstanceTerminationAction
, que é opcional para VMs Spot.POST https://compute.googleapis.com/compute/v1/projects/
PROJECT_ID
/zones/ZONE
/instances { "machineType": "zones/ZONE/machineTypes/MACHINE_TYPE", "name": "VM_NAME
", "disks": [ { "initializeParams": { "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE" }, "boot": true } ] "scheduling": { "terminationTime": "TIME", "instanceTerminationAction": "TERMINATION_ACTION" }, }Substitua o seguinte:
Para obter mais informações sobre as opções que você pode especificar ao criar uma VM, consulte Criando e iniciando uma instância de VM .
Limite o tempo de execução de uma VM existente
Você pode limitar o tempo de execução de uma VM existente atualizando a programação da VM. Se você ainda não entende como definir as configurações de limites de tempo, revise primeiro as seções anteriores sobre como limitar o tempo de execução de uma nova VM .
Você pode usar o console do Google Cloud, a CLI do Google Cloud ou a API Compute Engine para atualizar as propriedades relacionadas à programação da VM, conforme descrito nesta seção. Este método requer que você primeiro pare sua VM, depois atualize suas propriedades e, em seguida, reinicie-a. Como alternativa, se você quiser atualizar simultaneamente propriedades adicionais da VM e parar e reiniciar automaticamente uma VM, consulte Atualizar propriedades da instância .
Console
gcloud
Para atualizar o limite de tempo de uma VM usando a CLI gcloud, execute as seguintes etapas:
DESCANSAR
Para atualizar o limite de tempo de uma VM usando a API Compute Engine, siga estas etapas:
Monitore o tempo de execução de uma VM
Você pode monitorar o tempo de execução de uma VM que tem limite de tempo usando as seguintes opções:
O que vem a seguir
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-04-21 UTC.
-