Para probar que tu grupo de instancias administrado (MIG) regional esté aprovisionado en exceso de manera suficiente y pueda sobrevivir a una interrupción de zona, puedes usar el siguiente ejemplo con el objetivo de simular una falla zonal.
Antes de comenzar
- Si deseas usar los ejemplos de la línea de comandos de esta guía, instala Google Cloud CLI.
-
Si aún no lo hiciste, configura la autenticación.
La autenticación verifica tu identidad para acceder a los servicios y las APIs de Cloud de Confiance by S3NS . Para ejecutar código o muestras desde un entorno de desarrollo local, puedes autenticarte en Compute Engine seleccionando una de las siguientes opciones:
Selecciona la pestaña que corresponda a la forma en que planeas usar las muestras de esta página:
gcloud
-
Instala Google Cloud CLI y, luego, accede a gcloud CLI con tu identidad federada. Después de acceder, inicializa Google Cloud CLI con el siguiente comando:
gcloud init
-
- Configura una región y una zona predeterminadas.
REST
Para usar las muestras de la API de REST incluidas en esta página en un entorno de desarrollo local, debes usar las credenciales que proporciones a la gcloud CLI.
Instala Google Cloud CLI y, luego, accede a gcloud CLI con tu identidad federada.
Para obtener más información, consulta Autentícate para usar REST en la documentación de autenticación de Cloud de Confiance .
Usa una secuencia de comandos para simular una interrupción zonal
Esta secuencia de comandos detiene e inicia Apache como el escenario predeterminado. Si esto no se aplica a tu aplicación, reemplaza los comandos que detienen y, luego, inician Apache con tu propia situación de falla y recuperación.
Implementa y ejecuta esta secuencia de comandos de forma continua en cada VM del grupo. Puedes hacer esto mediante la adición de la secuencia de comandos a la plantilla de instancias, o bien a través de la inclusión de una imagen personalizada y su uso en la plantilla de instancias.
Simula una falla de zona mediante la configuración de los siguientes dos campos de metadatos del proyecto:
failed_zone: Establece la zona en la que deseas simular la interrupción (limita la falla a una sola zona).failed_instance_names: Elige las VM que se dejarán sin conexión por nombre (para limitar la falla solo a los nombres de VM que contengan esta string).
Puedes configurar estos metadatos con gcloud CLI. Por ejemplo, con el siguiente comando, se establece la interrupción de la zona
europe-west1-by se ven afectadas las VM cuyos nombres comienzan conbase-instance-name:gcloud compute project-info add-metadata --metadata failed_zone='europe-west1-b',failed_instance_names='base-instance-name-'
Una vez que hayas terminado de simular la interrupción, recupérate de la falla mediante la eliminación de las siguientes claves de metadatos:
gcloud compute project-info remove-metadata --keys failed_zone,failed_instance_names
Aquí hay algunas ideas para situaciones de falla que puedes ejecutar con esta secuencia de comandos:
- Detén tu aplicación por completo para ver cómo responde el MIG.
- Haz que tus VM se muestren como “en mal estado” en las verificaciones de estado de balanceo de cargas.
- Modifica iptables para bloquear parte del tráfico hacia y desde la VM.
- Apaga las VM. De forma predeterminada, el MIG regional lo volverá a crear poco después, pero la nueva encarnación se cerrará de inmediato en cuanto se ejecute la secuencia de comandos y siempre que se establezcan los valores de metadatos. Esto dará como resultado un bucle de fallas.
¿Qué sigue?
- Aprende a crear aplicaciones web escalables y resistentes.
- Obtén información sobre la recuperación ante desastres en Google Cloud Platform.