En esta página, se describen las ventanas de exclusión en Fault Injection Testing y cómo usarlas para proteger tus aplicaciones y servicios durante las operaciones comerciales críticas.
Las ventanas de exclusión mejoran tu control sobre los programas de pruebas de resiliencia. Una ventana de exclusión es un período que defines durante el cual no se pueden iniciar experimentos nuevos de inyección de errores. Esta función te ayuda a proteger tus aplicaciones y servicios durante eventos críticos, como los siguientes:
- Horas de tráfico máximo o eventos de ventas de gran volumen
- Migraciones o actualizaciones importantes del sistema
- Ventanas de mantenimiento críticas
Mientras una ventana de exclusión está activa, Fault Injection Testing bloquea cualquier intento de iniciar experimentos nuevos dentro del alcance definido. Se permite que continúen todos los experimentos que ya se estaban ejecutando antes de que se activara la ventana de exclusión hasta que se completen.
Cómo funcionan las ventanas de exclusión
Alcance y segmentación
Cuando configuras una ventana de exclusión, seleccionas una región específica de Cloud. Una vez activada, la ventana de exclusión impide que se inicien experimentos nuevos solo dentro de esa región designada, independientemente de la plantilla de experimento que se use.
Activación y duración
La creación de una ventana de exclusión define sus parámetros, pero no la activa de inmediato. Debes iniciar la ventana de forma explícita para que se active.
Una ventana de exclusión activa deja de bloquear experimentos de una de las siguientes maneras:
- Vencimiento automático: Cada ventana de exclusión se configura con una duración. Una vez activada, la ventana se desactiva automáticamente después de que transcurre esta duración. El sistema calcula la hora de finalización (hora de inicio + duración) y deja de bloquear experimentos nuevos una vez que la hora actual pasa esta hora de finalización.
- Detención manual: Puedes detener de forma manual una ventana de exclusión activa antes de que venza su duración programada. Esto es útil si el período crítico finaliza antes de lo previsto y deseas reanudar las pruebas de inmediato.
Administra ventanas de exclusión en la Google Cloud consola
Antes de continuar, debes tener el rol roles/faulttesting.operator.
Crea y configura una ventana de exclusión
- En la Google Cloud consola, navega a la página Ventanas de exclusión de Fault Injection Testing.
- Haz clic en Crear ventana de exclusión.
- Especifica la región de Cloud, la duración y una descripción opcional.
- Haz clic en Crear.
Controla de forma manual una ventana de exclusión
Puedes activar de forma manual las acciones Iniciar y Detener para cualquier ventana de exclusión configurada directamente desde la Google Cloud consola.
Activa automáticamente una ventana de exclusión
Por ejemplo, es posible que desees alinearte con un período de mantenimiento programado o un evento recurrente. Para automatizar la activación de una ventana de exclusión, haz lo siguiente:
- Después de crear una ventana de exclusión, copia la URL HTTPS para la RPC
StartExclusionWindowque se muestra en la IU. - Usa un servicio de programación como Cloud Scheduler para configurar un trabajo que envíe una solicitud a esta URL a la hora que elijas.
Administra ventanas de exclusión con Google Cloud CLI
Puedes administrar los recursos de la ventana de exclusión con los comandos gcloud alpha fault-testing
exclusion-windows.
Crea una ventana de exclusión
Para crear una ventana de exclusión, usa el comando create. Especifica el ID de la ventana, la región de destino y la duración:
gcloud alpha fault-testing exclusion-windows create EXCLUSION_WINDOW_ID \
--location=REGION \
--duration=DURATION \
[--description="DESCRIPTION"]
Reemplaza lo siguiente:
EXCLUSION_WINDOW_ID: Es un identificador único para la ventana (por ejemplo,black-friday-freeze).REGION: La Google Cloud región en la que se aplica esta ventana (por ejemplo,us-central1).DURATION: Es la duración activa, especificada en segundos (por ejemplo,86400sdurante 24 horas).DESCRIPTION: Es una descripción del propósito de la ventana (opcional).
Ejemplo:
gcloud alpha fault-testing exclusion-windows create black-friday-freeze \
--location=us-east1 \
--duration=259200s \
--description="Exclusion window for Black Friday to Cyber Monday sales period"
Borra una ventana de exclusión
Para borrar una definición de ventana de exclusión, usa el comando delete:
gcloud alpha fault-testing exclusion-windows delete EXCLUSION_WINDOW_ID \
--location=REGION
Inicia una ventana de exclusión
Para activar una ventana de exclusión configurada, usa el comando start:
gcloud alpha fault-testing exclusion-windows start EXCLUSION_WINDOW_ID \
--location=REGION
Detén una ventana de exclusión
Para desactivar de forma manual una ventana de exclusión activa antes de tiempo, usa el comando stop:
gcloud alpha fault-testing exclusion-windows stop EXCLUSION_WINDOW_ID \
--location=REGION
Prácticas recomendadas
Cuando crees una ventana de exclusión, ten en cuenta lo siguiente:
- Planifica la superposición de experimentos. Inicia las ventanas de exclusión un poco antes de que comience tu período comercial crítico. Como se permite que finalicen los experimentos en ejecución, iniciar la ventana antes garantiza que se borren todas las fallas antes de que comience el período crítico.
- Usa identificadores descriptivos. Usa IDs claros y significativos (por ejemplo,
black-friday-freezeosystem-migration-us-east1) para identificar el propósito y el alcance de la ventana. - Alinea la duración con el tipo de evento. Haz coincidir la duración de la ventana con la duración esperada del evento crítico. Para las principales ventas de días festivos, se recomienda una duración de varios días (por ejemplo,
259200sdurante 3 días). - Aprovecha la automatización. Usa Cloud Scheduler para automatizar la activación de ventanas de exclusión para eventos recurrentes o mantenimiento planificado para reducir el esfuerzo manual y el riesgo de omisión.
- Mantiene la flexibilidad. Recuerda que puedes usar el comando
stoppara finalizar una ventana antes de tiempo si un período crítico finaliza antes de lo previsto, lo que te permite reanudar las pruebas de resiliencia de inmediato.