Neste documento, explicamos como o pool em espera de instâncias de máquina virtual (VM) suspensas e interrompidas funciona e como é possível usar o pool em espera para acelerar o escalonamento horizontal de um grupo gerenciado de instâncias (MIG).
Antes de começar
- Consulte a página introdutória sobre VMs suspensas e interrompidas em um MIG.
-
Configure a autenticação, caso ainda não tenha feito isso.
A autenticação é
o processo de verificação da 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:
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
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
- Use VMs suspensas se elas exigirem uma inicialização demorada de memória, porque as VMs suspensas preservam o estado da memória. Verifique se a inscrição pode ser suspensa e retomada. Manter o estado da memória exige mais armazenamento e pode gerar custos extras.
- Use VMs interrompidas se a inicialização da VM se concentrar principalmente na inicialização de dados armazenados nos discos permanentes.
No Console do Google Cloud, acesse a página Grupos de instâncias.
Na coluna Nome da lista, clique no nome do grupo de instâncias em que você quer editar a política de espera.
Clique em Editar para modificar o grupo gerenciado de instâncias.
Clique em Mostrar configuração avançada.
Na seção Pool em espera, em Modo, selecione Escalonar horizontalmente.
No campo Atraso inicial, insira o número de segundos que o MIG precisa aguardar antes de suspender ou interromper uma VM. O atraso inicial dá ao script de inicialização o tempo para preparar a VM para escalonamento horizontal rápido.
Clique em Salvar.
MIG_NAME
: o nome do MIG;DELAY
: o número de segundos que o MIG precisa aguardar antes de suspender ou interromper uma VM. O atraso inicial dá ao script de inicialização o tempo para preparar a VM para escalonamento horizontal rápido.REGION
: para um MIG regional, a região em que o MIG está localizado.ZONE
: para um MIG zonal, a zona em que o MIG está localizado.PROJECT_ID
: ID do projeto.ZONE
: para um MIG zonal, a zona em que o MIG está localizado.zones/ZONE
porregions/REGION
e especifique a região do MIG se ele for regional;
MIG_NAME
: o nome do MIG;DELAY
: o número de segundos que o MIG precisa aguardar antes de suspender ou interromper uma VM. O atraso inicial dá ao script de inicialização o tempo para preparar a VM para escalonamento horizontal rápido.No Console do Google Cloud, acesse a página Grupos de instâncias.
Na coluna Nome da lista, clique no nome do grupo de instâncias em que você quer editar os tamanhos do pool em espera.
Clique em Editar para modificar o grupo gerenciado de instâncias.
Clique em Mostrar configuração avançada.
Na seção Pool em espera, insira os novos tamanhos nos campos VMs suspensas e VMs interrompidas.
Clique em Salvar.
MIG_NAME
: o nome do MIG em que uma instância será suspensa.SUSPENDED_SIZE
: o número de VMs suspensas que o MIG precisa manter a qualquer momento.STOPPED_SIZE
: o número de VMs interrompidas que o MIG precisa manter a qualquer momento.REGION
: para um MIG regional, a região em que o MIG está localizado.ZONE
: para um MIG zonal, a zona em que o MIG está localizado.PROJECT_ID
: o ID do projeto para a solicitação.ZONE
: para um MIG zonal, a zona em que o MIG está localizado.zones/ZONE
porregions/REGION
e especifique a região do MIG se ele for regional;
MIG_NAME
: o nome do MIG em que uma instância será interrompida.SUSPENDED_SIZE
: o número de VMs suspensas que o MIG precisa manter a qualquer momento.STOPPED_SIZE
: o número de VMs interrompidas que o MIG precisa manter a qualquer momento.- Saiba como suspender ou interromper manualmente as VMs em um MIG.
- Saiba mais sobre atualizações para VMs suspensas e interrompidas em um MIG.
Terraform
Para usar os exemplos do Terraform nesta página em um ambiente de desenvolvimento local, instale e inicialize a gcloud CLI e, em seguida, configure o Application Default Credentials com suas credenciais de usuário.
Confira mais informações em Set up authentication for a local development environment.
REST
Para usar as amostras da API REST nesta página em um ambiente de desenvolvimento local, use as credenciais fornecidas para gcloud CLI.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Para mais informações, consulte Autenticar para usar REST na documentação de autenticação do Google Cloud.
Usar a API MIG para escalonamento automático
Recomendamos o uso do escalonador automático do Compute Engine para escalonamento automático do MIG. No entanto, se por algum motivo você preferir usar um escalonador automático diferente, use os endpoints da API MIG para lidar com VMs suspensas e interrompidas.
Com a API MIG, é possível conectar o escalonador automático, por exemplo, o escalonador automático do GKE, e usar o pool de VMs em espera para um escalonamento horizontal mais rápido.
Escolher entre pools suspensos e interrompidos
A escolha entre pools suspensos e interrompidos depende do seu caso de uso específico. Para melhores desempenhos, teste diferentes tipos de pools em espera nos cenários de escalonamento horizontal para determinar qual atende melhor às suas necessidades. Cargas de trabalho diferentes podem mostrar um tempo menor para exibição com opções diferentes. Em alguns casos, a operação de copiar o estado da memória do armazenamento para a VM pode levar mais tempo do que reiniciar a VM ou criar uma nova VM do zero.
Para encontrar a melhor abordagem, comece com estas diretrizes:
Editar a política de espera em um MIG
Nesta seção, descrevemos como definir o atraso inicial e o modo de pool em espera para escalonar horizontalmente o pool.
Console
gcloud
Use o comando
instance-groups managed update
e especifique o modo de operação e o atraso inicial.gcloud compute instance-groups managed update MIG_NAME \ --standby-policy-mode=scale-out-pool \ --standby-policy-initial-delay=DELAY \ [--region=REGION | --zone=ZONE]
Substitua:
Terraform
O exemplo a seguir cria um MIG zonal com uma política de reserva. Use o bloco
standby_policy
para definir um atraso inicial e definir o modo comoSCALE_OUT_POOL
.O exemplo usa o recurso
google_compute_instance_group_manager
. Para um MIG regional, use o métodogoogle_compute_region_instance_group_manager
.Para saber como aplicar ou remover uma configuração do Terraform, consulte Comandos básicos do Terraform.
REST
Use o método
instanceGroupManager.patch
e especifique o modo de operação e o atraso inicial no corpo da solicitação. Para MIGs regionais, use o métodoregionInstanceGroupManager.patch
.PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME { // ... "standbyPolicy": { "mode": "SCALE_OUT_POOL", "initialDelaySec": DELAY } // ... }
Substitua:
Redimensionar o pool em espera em um MIG
Esta seção descreve como redimensionar os pools de espera de VMs suspensas e interrompidas em um MIG.
Console
gcloud
Use o comando
instance-groups managed update
com as sinalizações--suspended-size
e--stopped-size
.gcloud compute instance-groups managed update MIG_NAME \ --suspended-size=SUSPENDED_SIZE \ --stopped-size=STOPPED_SIZE \ [--region=REGION | --zone=ZONE]
Substitua:
Terraform
O exemplo a seguir cria um MIG zonal com tamanhos de destino para VMs suspensas e interrompidas. Para definir os tamanhos de destino, use os argumentos
target_suspended_size
etarget_stopped_size
.O exemplo usa o recurso
google_compute_instance_group_manager
. Para um MIG regional, use o métodogoogle_compute_region_instance_group_manager
.Para saber como aplicar ou remover uma configuração do Terraform, consulte Comandos básicos do Terraform.
REST
Use o método
instanceGroupManager.patch
e especifique os tamanhos dos pools de VMs suspensas e interrompidas no corpo da solicitação. Para MIGs regionais, use o métodoregionInstanceGroupManager.patch
.PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME { // ... "targetSuspendedSize": SUSPENDED_SIZE, "targetStoppedSize": STOPPED_SIZE // ... }
Substitua:
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-02-06 UTC.
-