Para testar se o seu grupo de instâncias gerido (MIG) regional tem aprovisionamento excessivo suficiente e consegue sobreviver a uma indisponibilidade de zona, pode usar o exemplo seguinte para simular uma falha zonal.
Antes de começar
- Se quiser usar os exemplos de linhas de comando neste guia, instale a CLI do Google Cloud.
-
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:
gcloud
-
Instale a CLI Google Cloud. Após a instalação, inicialize a CLI gcloud executando o seguinte comando:
gcloud init
Se 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.
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. Após a instalação, inicialize a CLI gcloud executando o seguinte comando:
gcloud init
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.
Use um script para simular uma indisponibilidade de zona
Este script para e inicia o Apache como o cenário predefinido. Se isto não se aplicar à sua aplicação, substitua os comandos que param e iniciam o Apache pelo seu próprio cenário de falha e recuperação.
Implemente e execute este script continuamente em todas as VMs do grupo. Pode fazê-lo adicionando o script ao modelo de instância ou incluindo o script numa imagem personalizada e usando a imagem no modelo de instância.
Simule uma falha de zona definindo estes dois campos de metadados do projeto:
failed_zone
: define a zona onde quer simular a indisponibilidade (limite a falha a apenas uma zona).failed_instance_names
: escolha as VMs a desativar por nome (para limitar a falha apenas aos nomes de VMs que contenham esta string).
Pode definir estes metadados através da CLI gcloud. Por exemplo, o seguinte comando define a indisponibilidade da zona para a zona
europe-west1-b
e afeta as VMs cujos nomes começam porbase-instance-name
:gcloud compute project-info add-metadata --metadata failed_zone='europe-west1-b',failed_instance_names='base-instance-name-'
Depois de terminar a simulação da indisponibilidade, recupere da falha removendo as chaves de metadados:
gcloud compute project-info remove-metadata --keys failed_zone,failed_instance_names
Seguem-se algumas ideias de cenários de falha que pode executar com este script:
- Pare completamente a sua aplicação para ver como o MIG responde.
- Faça com que as suas VMs sejam devolvidas como "não íntegras" nas verificações de funcionamento do balanceamento de carga.
- Modifique o iptables para bloquear parte do tráfego de e para a VM.
- Encerre as VMs. Por predefinição, é recriado pelo MIG regional pouco depois, mas a nova instância desliga-se imediatamente assim que o script é executado e desde que os valores dos metadados estejam definidos. Esta ação resulta num ciclo de falhas de sistema.
O que se segue?
- Saiba como criar aplicações Web escaláveis e resilientes.
- Saiba mais sobre a recuperação de desastres na Google Cloud Platform.
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-09-19 UTC.
-