Este documento descreve como permitir que um grupo de instâncias geridas (GIG) regional repare uma instância de máquina virtual (VM) numa zona alternativa quando o GIG não consegue reparar a VM na respetiva zona original. Para saber mais sobre reparações num MIG, consulte o artigo Acerca da reparação de VMs para alta disponibilidade.
Quando cria um GIG regional, seleciona uma ou mais zonas onde o GIG distribui as respetivas VMs. Por predefinição, se uma VM no MIG falhar, o MIG tenta reparar essa VM na respetiva zona original. Opcionalmente, pode permitir que o GIG repare essa VM numa das outras zonas selecionadas, o que é útil nos casos em que o GIG não consegue reparar a VM na respetiva zona original. O GIG escolhe a zona alternativa com base na capacidade e na quota disponíveis.
Limitações
Quando configura um GIG regional para reparar uma VM numa zona alternativa, aplicam-se as seguintes limitações:
Tem de ativar a opção Atualizar após reparação.
Os MIGs regionais com a seguinte configuração não são suportados:
MIGs com
EVENouANY_SINGLE_ZONEformas de distribuição alvo.MIGs com configuração com estado.
Antes de começar
-
Se ainda não o tiver feito, configure a autenticação.
A autenticação valida a sua identidade para aceder a Google Cloud serviços e APIs. Para executar código ou exemplos a partir de um ambiente de desenvolvimento local, pode autenticar-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
-
Instale a CLI Google Cloud. Após a instalação, inicialize a CLI gcloud executando o seguinte comando:
gcloud initSe estiver a usar um fornecedor de identidade (IdP) externo, primeiro tem de iniciar sessão na CLI gcloud com a sua identidade federada.
- Set a default region and zone.
Terraform
Para usar os exemplos do Terraform nesta página num ambiente de desenvolvimento local, instale e inicialize a CLI gcloud e, em seguida, configure as credenciais predefinidas da aplicação com as suas credenciais de utilizador.
Instale a CLI Google Cloud.
Se estiver a usar um fornecedor de identidade (IdP) externo, primeiro tem de iniciar sessão na CLI gcloud com a sua identidade federada.
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.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
Para mais informações, consulte Set up authentication for a local development environment.
REST
Para usar os exemplos da API REST nesta página num ambiente de desenvolvimento local, usa as credenciais que fornece à CLI gcloud.
Instale a CLI Google Cloud.
Se estiver a usar um fornecedor de identidade (IdP) externo, primeiro tem de iniciar sessão na CLI gcloud com a sua identidade federada.
Para mais informações, consulte o artigo Autenticar para usar REST na Google Cloud documentação de autenticação.
Permita reparações numa zona alternativa
Para permitir que um MIG repare uma VM numa zona alternativa, selecione uma das seguintes opções:
Consola
Na Google Cloud consola, aceda à página Grupos de instâncias.
Se já tiver um MIG, faça o seguinte:
- Clique no nome do MIG.
- Clique em Edit.
Se ainda não tiver um MIG, faça o seguinte:
- Clique em Criar grupo de instâncias.
- Introduza um Nome.
- Selecione um modelo de instância.
- Na secção Localização, selecione Várias zonas e, de seguida, selecione uma região e zonas.
No menu pendente Forma de distribuição do alvo, selecione Equilibrado ou Qualquer.
Se selecionar Equilibrado, na caixa de diálogo apresentada, clique em Desativar redistribuição de instâncias.
Se quiser selecionar Qualquer, primeiro tem de eliminar a configuração de ajuste automático de escala. Para eliminar o ajuste automático, no menu pendente Modo de ajuste automático, clique em Eliminar configuração do ajuste automático.
Na secção Ciclo de vida da instância de VM, certifique-se de que os seguintes campos estão definidos da seguinte forma:
A lista Ação predefinida em caso de falha está definida como Reparar instância.
A opção Atualizações durante a reparação da instância de VM está definida como Atualizar a configuração da instância.
Na secção Alterar zona durante a reparação da instância de VM, selecione a caixa de verificação Permitir a reparação de VMs numa zona alternativa.
Para as outras definições, pode usar os valores predefinidos ou modificar os campos.
Quando terminar, clique em Guardar para um GMI existente ou em Criar para um novo GMI.
gcloud
Para configurar um GIG existente para reparar a VM numa zona alternativa, use o comando beta
update:gcloud beta compute instance-groups managed update MIG_NAME \ --on-repair-allow-changing-zone=YES \ --force-update-on-repair \ --region=REGIONPara criar um GIG que possa reparar a VM numa 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-repairSubstitua o seguinte:
MIG_NAME: o nome do MIG.INSTANCE_TEMPLATE_URL: o URL do modelo de instância que quer usar para criar VMs 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 alvo do MIG.ZONES: a lista de zonas numa região onde quer criar as VMs no MIG.SHAPE: a forma da distribuição alvo. Este valor pode serbalancedouany.REGION: a região onde o MIG está localizado.
Terraform
Se ainda não criou um modelo de instância, que especifica o tipo de máquina, a imagem do disco de arranque, a rede e outras propriedades da VM que quer para cada VM no MIG, crie um modelo de instância.
Para criar um GIG que possa reparar VMs numa zona alternativa, use o recurso
google_compute_region_instance_group_manager.Para saber como aplicar ou remover uma configuração do Terraform, consulte os comandos básicos do Terraform.
REST
Para configurar um GIG existente para reparar a VM numa 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 numa 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 o seguinte:
PROJECT_ID: o seu ID do projeto.REGION: a região onde o MIG está localizado.MIG_NAME: o nome do MIG.INSTANCE_TEMPLATE_URL: o URL do modelo de instância que quer usar para criar VMs 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 alvo do MIG.SHAPE: a forma da distribuição alvo. Este valor pode serBALANCEDouANY.
Não permita reparações numa zona alternativa
Se configurou um MIG para reparar a VM numa zona alternativa, pode restaurar a predefinição em que o MIG repara a VM na zona original.
Para não permitir reparações numa zona alternativa, selecione uma das seguintes opções:
Consola
Na Google Cloud consola, aceda à página Grupos de instâncias.
Clique no nome do MIG.
Clique em Edit.
Aceda à secção Ciclo de vida da instância de VM.
Na secção Alterar zona durante a reparação da instância de VM, desmarque a caixa de verificação Permitir a reparação de VMs numa zona alternativa.
Clique em Guardar.
gcloud
Para não permitir reparações numa zona alternativa, use o comando beta
update:gcloud beta compute instance-groups managed update MIG_NAME \ --on-repair-allow-changing-zone=NO \ --region=REGIONSubstitua o seguinte:
MIG_NAME: o nome do MIG.REGION: a região onde o MIG está localizado.
REST
Para não permitir reparações numa 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": "NO" } } }Substitua o seguinte:
PROJECT_ID: o seu ID do projeto.REGION: a região onde o MIG está localizado.MIG_NAME: o nome do MIG.
O que se segue?
- Verifique a configuração da reparação num MIG
- Verifique a zona de uma VM listando as instâncias geridas
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-12-04 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-12-04 UTC."],[],[]] -