Auf dieser Seite werden Ausschlussfenster in Fault Injection Testing beschrieben und wie Sie sie verwenden können, um Ihre Anwendungen und Dienste während kritischer Geschäftsabläufe zu schützen.
Mit Ausschlussfenstern haben Sie mehr Kontrolle über Zeitpläne für Resilienztests. Ein Ausschlussfenster ist ein von Ihnen definierter Zeitraum, in dem keine neuen Fault-Injection-Tests gestartet werden können. Mit dieser Funktion können Sie Ihre Anwendungen und Dienste bei kritischen Ereignissen schützen, z. B.:
- Spitzenzeiten oder Verkaufsveranstaltungen mit hohem Volumen
- Größere Systemmigrationen oder ‑upgrades
- Kritische Wartungsfenster
Wenn ein Ausschlussfenster aktiv ist, blockiert Fault Injection Testing alle Versuche, neue Tests im definierten Umfang zu starten. Alle Tests, die bereits vor der Aktivierung des Ausschlussfensters ausgeführt wurden, können bis zum Abschluss fortgesetzt werden.
Funktionsweise von Ausschlussfenstern
Umfang und Targeting
Wenn Sie ein Ausschlussfenster konfigurieren, wählen Sie eine bestimmte Cloud-Region aus. Nach der Aktivierung verhindert das Ausschlussfenster, dass neue Tests nur in dieser bestimmten Region gestartet werden, unabhängig von der verwendeten Testvorlage.
Aktivierung und Dauer
Wenn Sie ein Ausschlussfenster erstellen, werden die Parameter definiert, es wird aber nicht sofort aktiviert. Sie müssen das Fenster explizit starten, damit es aktiv wird.
Ein aktives Ausschlussfenster beendet die Blockierung von Tests auf eine von zwei Arten:
- Automatischer Ablauf:Jedes Ausschlussfenster wird mit einer Dauer konfiguriert. Nach der Aktivierung wird das Fenster automatisch deaktiviert, wenn diese Dauer abgelaufen ist. Das System berechnet die Endzeit (Startzeit + Dauer) und beendet die Blockierung neuer Tests, sobald die aktuelle Zeit diese Endzeit überschreitet.
- Manuelle Beendigung:Sie können ein aktives Ausschlussfenster manuell beenden, bevor die geplante Dauer abläuft. Das ist nützlich, wenn der kritische Zeitraum früher als erwartet endet und Sie die Tests sofort fortsetzen möchten.
Ausschlussfenster in der Google Cloud Console verwalten
Bevor Sie fortfahren, benötigen Sie die Rolle roles/faulttesting.operator.
Ausschlussfenster erstellen und konfigurieren
- Rufen Sie in der Google Cloud Console die Seite Ausschluss fenster von Fault Injection Testing auf.
- Klicken Sie auf Ausschlussfenster erstellen.
- Geben Sie die Cloud-Region, die Dauer und optional eine Beschreibung an.
- Klicken Sie auf Erstellen.
Ausschlussfenster manuell steuern
Sie können die Aktionen Starten und Beenden für jedes konfigurierte Ausschlussfenster direkt in der Google Cloud Console manuell auslösen.
Ausschlussfenster automatisch aktivieren
Möglicherweise möchten Sie sich beispielsweise an einem geplanten Wartungsfenster oder einem wiederkehrenden Ereignis orientieren. So automatisieren Sie die Aktivierung eines Ausschlussfensters:
- Kopieren Sie nach dem Erstellen eines Ausschlussfensters die HTTPS-URL für den RPC
StartExclusionWindow, der in der Benutzeroberfläche angezeigt wird. - Richten Sie mit einem Planungsdienst wie Cloud Scheduler einen Job ein, der zur gewünschten Zeit eine Anfrage an diese URL sendet.
Ausschlussfenster mit der Google Cloud CLI verwalten
Sie können Ausschlussfensterressourcen mit den gcloud alpha fault-testing
exclusion-windows Befehlen verwalten.
Ausschlussfenster erstellen
Verwenden Sie den Befehl create, um ein Ausschlussfenster zu erstellen. Geben Sie die Fenster-ID, die Zielregion und die Dauer an:
gcloud alpha fault-testing exclusion-windows create EXCLUSION_WINDOW_ID \
--location=REGION \
--duration=DURATION \
[--description="DESCRIPTION"]
Ersetzen Sie Folgendes:
EXCLUSION_WINDOW_ID: Eine eindeutige ID für das Fenster, z. B.black-friday-freeze.REGION: Die Google Cloud Region, in der dieses Fenster gilt, z. B.us-central1.DURATION: Die aktive Dauer in Sekunden, z. B.86400sfür 24 Stunden.DESCRIPTION: (Optional) Eine Beschreibung des Zwecks des Fensters.
Beispiel:
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"
Ausschlussfenster löschen
Verwenden Sie den Befehl delete, um eine Ausschlussfensterdefinition zu löschen:
gcloud alpha fault-testing exclusion-windows delete EXCLUSION_WINDOW_ID \
--location=REGION
Ausschlussfenster starten
Verwenden Sie den Befehl start, um ein konfiguriertes Ausschlussfenster zu aktivieren:
gcloud alpha fault-testing exclusion-windows start EXCLUSION_WINDOW_ID \
--location=REGION
Ausschlussfenster beenden
Verwenden Sie den Befehl stop, um ein aktives Ausschlussfenster vorzeitig manuell zu deaktivieren:
gcloud alpha fault-testing exclusion-windows stop EXCLUSION_WINDOW_ID \
--location=REGION
Best Practices
Beachten Sie beim Erstellen eines Ausschlussfensters Folgendes:
- Testüberschneidungen einplanen. Starten Sie Ihre Ausschlussfenster etwas früher, bevor der kritische Zeitraum beginnt. Da laufende Tests abgeschlossen werden dürfen, wird durch das frühe Starten des Fensters sichergestellt, dass alle Fehler behoben sind, bevor der kritische Zeitraum beginnt.
- Beschreibende IDs verwenden. Verwenden Sie eindeutige, aussagekräftige IDs (z. B.
black-friday-freezeodersystem-migration-us-east1), um Zweck und Umfang des Fensters zu identifizieren. - Dauer an Ereignistyp anpassen. Passen Sie die Dauer des Fensters an die erwartete Länge des kritischen Ereignisses an. Für größere Feiertagsverkäufe wird eine Dauer von mehreren Tagen empfohlen, z. B.
259200sfür 3 Tage. - Automatisierung nutzen. Verwenden Sie Cloud Scheduler, um die Aktivierung von Ausschlussfenstern für wiederkehrende Ereignisse oder geplante Wartungsarbeiten zu automatisieren. So reduzieren Sie den manuellen Aufwand und das Risiko von Versäumnissen.
- Flexibel bleiben. Mit dem Befehl
stopkönnen Sie ein Fenster vorzeitig beenden, wenn ein kritischer Zeitraum früher als erwartet endet. So können Sie die Resilienztests sofort fortsetzen.