Em um grupo grupo gerenciado de instâncias (MIG) regional, para manter um número par de instâncias de máquina virtual (VM) nas zonas selecionadas na região, use a redistribuição proativa de instâncias. Essa configuração maximiza a disponibilidade do aplicativo no caso de uma falha no nível da zona.
A redistribuição proativa de instâncias é ativada por padrão para MIGs regionais. Quando a redistribuição proativa de instâncias é desativada, o grupo não tenta redistribuir proativamente as VMs entre as zonas. Isso é útil quando caso seja necessário necessário:
- Excluir ou abandonar VMs do grupo sem afetar outras VMs em execução. Por exemplo, é possível excluir uma VM de worker em lote após a conclusão do job sem afetar outros workers.
- Proteger VMs com cargas de trabalho com estado contra exclusão automática indesejada devido à redistribuição proativa.
- Defina o formato de distribuição de destino do MIG como
BALANCED
ouANY_SINGLE_ZONE
.
É possível desativar a redistribuição proativa de instâncias ao criar um MIG regional. Também é possível ativá-lo ou desativá-lo para um MIG regional existente.
Antes de começar
-
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.
- No Console do Google Cloud, acesse a página Grupos de instâncias.
- Clique em Criar grupo de instâncias para criar um novo grupo.
- Atribua um nome e, se quiser, uma descrição ao grupo de instâncias.
- Selecione um modelo de instância para o grupo ou crie um modelo novo.
- Especifique o número de VMs para este grupo. Para cargas de trabalho altamente disponíveis, lembre-se de provisionar VMs suficientes para fazer com que o aplicativo continue a funcionar se uma zona falhar.
- Em Local, selecione Várias zonas.
- Escolha uma região e selecione as zonas que você quer usar.
- Para desativar a redistribuição proativa de instâncias, em Redistribuição de instâncias, desmarque a caixa de seleção Permitir redistribuição de instâncias.
- Continue com o restante do processo de criação do MIG.
INSTANCE_GROUP_NAME
: o nome do MIG;INSTANCE_TEMPLATE_NAME
: o nome do modelo de instância a ser usado para o grupo;TARGET_SIZE
: o tamanho de destino do grupo;ZONES
: a lista de zonas em uma única região em que você quer implantar VMsPROJECT_ID
: o ID do projeto desta solicitação;REGION
: a região do grupo de instâncias;INSTANCE_GROUP_NAME
: o nome do MIG;INSTANCE_TEMPLATE_NAME
: o nome do modelo de instância a ser usado para o grupo;TARGET_SIZE
: o tamanho de destino do grupo de instâncias;ZONE
: o nome de uma zona na única região em que você quer implantar as VMs- 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 que você quer modificar.
- Clique em Editar para modificar o grupo gerenciado de instâncias.
- Em Redistribuição da instância, desmarque a caixa de seleção Permitir redistribuição de instâncias.
- Clique em Salvar.
INSTANCE_GROUP_NAME
: o nome do MIG.REGION
: a região do grupo de instâncias.PROJECT_ID
: o ID do projeto desta solicitação;REGION
: a região do grupo de instâncias;INSTANCE_GROUP_NAME
: o nome do MIG.- Saiba mais sobre Como visualizar informações sobre MIGs e as respectivas VMs.
- Saiba mais sobre como trabalhar com VMs em um MIG, incluindo como adicionar, recriar e remover instâncias.
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.
Como criar um grupo com a redistribuição proativa de instâncias desativada
Para criar um MIG regional com a redistribuição proativa de instâncias desativada, use o console do Google Cloud, a gcloud CLI ou a REST.
Console
gcloud
Para criar um novo MIG regional sem redistribuição proativa de instâncias, use o comando
gcloud compute instance-groups managed create
com a sinalização--instance-redistribution-type
definida comoNONE
.gcloud compute instance-groups managed create INSTANCE_GROUP_NAME \ --template INSTANCE_TEMPLATE_NAME \ --size TARGET_SIZE \ --zones ZONES \ --instance-redistribution-type NONE
Substitua:
Exemplo:
gcloud compute instance-groups managed create example-rmig \ --template example-template \ --size 30 \ --zones us-east1-b,us-east1-c \ --instance-redistribution-type NONE
Terraform
Se você ainda não criou um modelo de instância, que especifica o tipo de máquina, a imagem do disco de inicialização, a rede e outras propriedades de VM que você quer para cada VM no MIG, crie um modelo de instância.
Para criar um MIG regional, use o recurso
google_compute_region_instance_group_manager
.Para desativar a redistribuição proativa de instâncias em um MIG regional, inclua o bloco
update_policy
e defina o campoinstance_redistribution_type
comoNONE
.Para saber como aplicar ou remover uma configuração do Terraform, consulte Comandos básicos do Terraform.
REST
Para criar um MIG regional, sem escalonamento automático e sem redistribuição proativa de instâncias, faça uma solicitação
POST
ao métodoregionInstanceGroupManagers.insert
. No corpo da solicitação, inclua a propriedadeupdatePolicy
e defina o respectivo campoinstanceRedistributionType
comoNONE
.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME { "name": "INSTANCE_GROUP_NAME", "instanceTemplate": "global/instanceTemplates/INSTANCE_TEMPLATE_NAME", "targetSize": TARGET_SIZE, "distributionPolicy": { "zones": [ {"zone": "zones/ZONE"}, {"zone": "zones/ZONE"} ] }, "updatePolicy": { "instanceRedistributionType": "NONE" } }
Substitua:
Como desativar a redistribuição proativa de instâncias
Para desativar ou reativar a redistribuição proativa de instâncias, use o console do Google Cloud, a CLI gcloud ou REST.
Console
gcloud
Para desativar a redistribuição proativa de instâncias, use o comando
compute instance-groups managed update
e defina a flag--instance-redistribution-type
comoNONE
da seguinte maneira:gcloud compute instance-groups managed update INSTANCE_GROUP_NAME \ --instance-redistribution-type NONE \ --region REGION
Substitua:
REST
Para desativar a redistribuição proativa de instâncias, use o método
regionInstanceGroupManagers.patch
e defina o campoinstanceRedistributionType
comoNONE
da seguinte maneira:PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME { "updatePolicy": { "instanceRedistributionType": "NONE" } }
Substitua:
Como ativar a redistribuição proativa de instâncias
Para ativar a redistribuição proativa de instâncias, use um comando semelhante ao visto em Como desativar a redistribuição proativa de instâncias, mas defina o tipo de redistribuição de instâncias como
PROACTIVE
.Se você excluiu ou abandonou manualmente algumas instâncias gerenciadas que resultam em uma distribuição desigual de VMs na região, antes de reativar a redistribuição proativa de instâncias, será necessário reequilibrar manualmente o grupo. A diferença no número de VMs entre duas zonas não pode ultrapassar uma VM.
Um MIG regional não permite ativar a redistribuição proativa de instâncias quando as VMs são distribuídas de maneira uniforme entre as zonas (a diferença no número de VMs entre duas zonas é de duas ou mais VMs). Isso evita uma exclusão automática não intencional de VMs de zonas com mais VMs, o que seria acionado para atingir a distribuição uniforme.
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 2024-12-22 UTC.
-