Para testar se o grupo de instâncias gerenciadas (MIG, na sigla em inglês) regional está superprovisionado o suficiente e pode resistir a uma interrupção de zona, use o exemplo a seguir para simular uma falha de zona.
Antes de começar
- Para usar os exemplos de linha de comando deste guia, instale a Google Cloud CLI.
-
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 Trusted Cloud by S3NS .
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:
gcloud
-
Instale a Google Cloud CLI e faça login CLI gcloud com sua identidade federada. Depois de fazer login, inicialize a Google Cloud CLI executando o seguinte comando:
gcloud init
- Set a default region and zone.
REST
Para usar as amostras da API REST nesta página em um ambiente de desenvolvimento local, use as credenciais fornecidas para a CLI gcloud.
Instale a Google Cloud CLI e faça login CLI gcloud com sua identidade federada. Depois de fazer login, inicialize a Google Cloud CLI executando o seguinte comando:
gcloud init
Para mais informações, consulte Autenticar para usar REST na documentação de autenticação do Trusted Cloud .
Usar um script para simular uma interrupção de zona
Neste script, o Apache é interrompido e iniciado como o cenário padrão. Caso isso não se aplique ao aplicativo, substitua os comandos que interrompem e iniciam o Apache pelo seu próprio cenário de falha e recuperação.
Implante e execute esse script continuamente em todas as VMs do grupo. Para fazer isso, adicione o script ao modelo da instância ou inclua esse script a uma imagem personalizada e use essa imagem no modelo.
Simule uma falha de zona definindo estes dois campos de metadados do projeto:
failed_zone
: define a zona em que simular a falha (limite a falha a apenas uma zona);failed_instance_names
: escolha as VMs que ficarão off-line por nome (para limitar a falha apenas a nomes de VM que contenham essa string).
É possível definir esses metadados usando a CLI gcloud. Por exemplo, o comando a seguir define a interrupção da zona como a zona
europe-west1-b
e afeta as VMs que têm nomes que começam combase-instance-name
:gcloud compute project-info add-metadata --metadata failed_zone='europe-west1-b',failed_instance_names='base-instance-name-'
Depois de simular a falha, execute a recuperação removendo as chaves de metadados:
gcloud compute project-info remove-metadata --keys failed_zone,failed_instance_names
Aqui estão algumas ideias de cenários de falha que podem ser executados com esse script:
- Interrompa seu aplicativo completamente para ver como o MIG responde.
- Faça com que suas VMs retornem como "não íntegras" nas verificações de integridade de balanceamento de carga.
- Modifique o iptables para bloquear parte do tráfego de e para a VM.
- Encerre as VMs. Por padrão, ele será recriado pelo MIG regional logo após, mas a nova encarnação será encerrada imediatamente assim que o script for executado e enquanto os valores de metadados forem definidos. Isso acarreta um loop de falha.
A seguir
- Aprenda a criar aplicativos da web escaláveis e resilientes.
- Saiba mais sobre recuperação de desastres no 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-08-19 UTC.
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Não contém as informações de que eu preciso","missingTheInformationINeed","thumb-down"],["Muito complicado / etapas demais","tooComplicatedTooManySteps","thumb-down"],["Desatualizado","outOfDate","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Problema com as amostras / o código","samplesCodeIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 2025-08-19 UTC."],[[["\u003cp\u003eThis guide explains how to simulate a zonal failure to test if a regional managed instance group (MIG) is overprovisioned enough to handle outages.\u003c/p\u003e\n"],["\u003cp\u003eThe simulation involves using a script that can be deployed in each VM within the group to stop and start a service, such as Apache, to mimic failure and recovery scenarios.\u003c/p\u003e\n"],["\u003cp\u003eTo simulate a zone outage, two project metadata fields need to be set: \u003ccode\u003efailed_zone\u003c/code\u003e, specifying the zone to target, and \u003ccode\u003efailed_instance_names\u003c/code\u003e, which identifies the VMs to affect.\u003c/p\u003e\n"],["\u003cp\u003eYou can use the \u003ccode\u003egcloud\u003c/code\u003e CLI to set the metadata values for the simulated outage and then remove them to recover from the simulated failure.\u003c/p\u003e\n"],["\u003cp\u003eThe provided failure script can be used to test various failure scenarios, including stopping the application, causing VMs to return as "unhealthy," modifying iptables, and shutting down VMs.\u003c/p\u003e\n"]]],[],null,[]] -