Ao criar um MIG regional, você seleciona uma ou mais zonas em que o MIG distribui as VMs. Por padrão, se uma VM no MIG falhar, ele tentará corrigir essa VM na zona original. Você pode permitir que o MIG corrija essa VM em uma das outras zonas selecionadas, o que é útil nos casos em que o MIG não consegue corrigir a VM na zona original. O MIG escolhe a zona alternativa com base na capacidade e na cota disponíveis.
Limitações
Ao configurar um MIG regional para reparar uma VM em uma zona alternativa, as seguintes limitações se aplicam:
É necessário ativar a atualização durante reparo.
Os MIGs regionais com a seguinte configuração não são compatíveis:
MIGs com formatos de distribuição de destino
EVENouANY_SINGLE_ZONE.MIGs com configuração com estado.
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 Google Cloud para acessar serviços Google Cloud e APIs, 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.
-
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.
-
Se você estiver usando um shell local, crie credenciais de autenticação local para sua conta de usuário:
gcloud auth application-default login
Não é necessário fazer isso se você estiver usando o Cloud Shell.
Se um erro de autenticação for retornado e você estiver usando um provedor de identidade (IdP) externo, confirme se você fez login na CLI gcloud com sua identidade federada.
Terraform
Para usar os exemplos do Terraform nesta página em um ambiente de desenvolvimento local, instale e inicialize a CLI gcloud e configure o Application Default Credentials com suas credenciais de usuário.
Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
REST
Para usar as amostras da API REST nesta página em um ambiente de desenvolvimento local, use as credenciais fornecidas para 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 .
Permitir correções em uma zona alternativa
Para permitir que um MIG corrija uma VM em uma zona alternativa, selecione uma das seguintes opções:
Console
No console, do Google Cloud , acesse a página Grupos de instâncias.
Se você já tiver um MIG, faça o seguinte:
- Clique no nome do MIG.
- Clique em Editar.
Se você ainda não tiver um MIG, faça o seguinte:
- Clique em Criar grupo de instâncias.
- Digite um Nome.
- Selecione um modelo de instância.
- Na seção Local, selecione Várias zonas e escolha uma região e as zonas.
No menu suspenso Forma de distribuição de destino, selecione Equilibrado ou Qualquer.
Se você selecionar Equilibrada, na caixa de diálogo exibida, clique em Desativar redistribuição de instâncias.
Se você quiser selecionar Qualquer uma, primeiro exclua a configuração de escalonamento automático. Para excluir o escalonamento automático, no menu suspenso Modo de escalonamento automático, clique em Excluir configuração de escalonamento automático.
Na seção Ciclo de vida da instância de VM, verifique se os seguintes campos estão definidos da seguinte maneira:
A lista Ação padrão em caso de falha está definida como Reparar instância.
A opção Atualizações durante o reparo da instância de VM está definida como Atualizar a configuração da instância.
Na seção Mudar a zona durante a correção da instância de VM, marque a caixa de seleção Permitir a correção de VMs em uma zona alternativa.
Para as outras configurações, é possível usar os valores padrão ou modificar os campos.
Depois de terminar, clique em Salvar para um MIG atual ou em Criar para um novo.
gcloud
Para configurar um MIG atual para reparar uma VM em uma zona alternativa, use o
comando update Beta:
gcloud beta compute instance-groups managed update MIG_NAME \
--on-repair-allow-changing-zone=YES \
--force-update-on-repair \
--region=REGION
Para criar um MIG que possa reparar VMs em uma zona alternativa, use o
comando Beta create:
gcloud beta compute instance-groups managed create MIG_NAME \
--template=INSTANCE_TEMPLATE_URL \
--size=SIZE \
--zones=ZONES \
--target-distribution-shape=SHAPE \
--instance-redistribution-type=none \
--on-repair-allow-changing-zone=YES \
--force-update-on-repair
Substitua:
MIG_NAME: o nome do MIG;INSTANCE_TEMPLATE_URL: o URL do modelo de instância que você quer usar para criar instâncias no MIG. O URL pode conter o ID ou o nome do modelo de instância. Especifique um dos seguintes valores:- Para um modelo de instância regional:
projects/PROJECT_ID/regions/REGION/instanceTemplates/INSTANCE_TEMPLATE_ID. - Para um modelo de instância global:
INSTANCE_TEMPLATE_ID
- Para um modelo de instância regional:
SIZE: o tamanho de destino do MIG.ZONES: a lista de zonas em uma região em que você quer criar as VMs no MIG.SHAPE: o formato de distribuição de destino. Esse valor pode serbalancedouany.REGION: a região em que o MIG está localizado.
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 que possa reparar VMs em uma zona alternativa, use o
recurso google_compute_region_instance_group_manager.
Para saber como aplicar ou remover uma configuração do Terraform, consulte Comandos básicos do Terraform.
REST
Para configurar um MIG atual para reparar uma VM em uma zona alternativa, use o
método beta regionInstanceGroupManagers.patch:
PATCH https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/MIG_NAME
{
"instanceLifecyclePolicy": {
"onRepair": {
"allowChangingZone": "YES"
},
"forceUpdateOnRepair": "YES"
}
}
Para criar um MIG que possa reparar VMs em uma zona alternativa, use o
método Beta regionInstanceGroupManagers.insert:
POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/instanceGroupManagers
{
"name": "MIG_NAME",
"instanceTemplate": "INSTANCE_TEMPLATE_URL",
"targetSize": SIZE,
"distributionPolicy": {
"targetShape": "SHAPE"
}
"updatePolicy": {
"instanceRedistributionType": none
}
"instanceLifecyclePolicy": {
"forceUpdateOnRepair": "YES",
"onRepair": {
"allowChangingZone": "YES"
}
}
}
Substitua:
PROJECT_ID: o ID do projeto.REGION: a região em que o MIG está localizado.MIG_NAME: o nome do MIG;INSTANCE_TEMPLATE_URL: o URL do modelo de instância que você quer usar para criar instâncias no MIG. O URL pode conter o ID ou o nome do modelo de instância. Especifique um dos seguintes valores:- Para um modelo de instância regional:
projects/PROJECT_ID/regions/REGION/instanceTemplates/INSTANCE_TEMPLATE_ID. - Para um modelo de instância global:
INSTANCE_TEMPLATE_ID
- Para um modelo de instância regional:
SIZE: o tamanho de destino do MIG.SHAPE: o formato de distribuição de destino. Esse valor pode serBALANCEDouANY.
Não permitir correções em uma zona alternativa
Se você configurou um MIG para corrigir uma VM em uma zona alternativa, é possível restaurar a configuração padrão em que o MIG corrige a VM na zona original.
Para não permitir correções em uma zona alternativa, selecione uma das seguintes opções:
Console
No console, do Google Cloud , acesse a página Grupos de instâncias.
Clique no nome do MIG.
Clique em Editar.
Acesse a seção Ciclo de vida da instância de VM.
Na seção Mudar a zona durante a correção da instância de VM, desmarque a caixa de seleção Permitir a correção de VMs em uma zona alternativa.
Clique em Salvar.
gcloud
Para não permitir reparos em uma zona alternativa, use o
comando update Beta:
gcloud beta compute instance-groups managed update MIG_NAME \
--on-repair-allow-changing-zone=NO \
--region=REGION
Substitua:
MIG_NAME: o nome do MIG;REGION: a região em que o MIG está localizado.
REST
Para não permitir reparos em uma zona alternativa, use o
método regionInstanceGroupManagers.patch Beta:
PATCH https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/MIG_NAME
{
"instanceLifecyclePolicy": {
"onRepair": {
"allowChangingZone": "NO"
}
}
}
Substitua:
PROJECT_ID: o ID do projeto.REGION: a região em que o MIG está localizado.MIG_NAME: o nome do MIG;
A seguir
- Verificar a configuração de reparo em um MIG
- Verifique a zona de uma VM listando as instâncias gerenciadas.