Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3
Auf dieser Seite wird beschrieben, wie Sie hochgradig resiliente Cloud Composer-Umgebungen einrichten.
Ausfallsicherheit bei zonalen Fehlern in Cloud Composer
Äußerst robuste Cloud Composer-Umgebungen verwenden integrierte Redundanz und Failover-Mechanismen, die die Anfälligkeit der Umgebung für zonale und Single-Point-of-Failure-Ausfällen.
Beispielsweise werden durch einen zonalen Ausfall Airflow-Aufgaben unterbrochen, die in einem bestimmten . Danach stellt sich eine äußerst robuste Umgebung wieder her, in einer anderen Zone betroffen sind und die Datenbank auf eine andere sekundäre Zone. So können die fehlgeschlagenen Airflow-Aufgaben von Airflow neu geplant und neu gestartet werden, während gleichzeitig der Verlauf der DAG-Ausführungen und andere Einstellungen beibehalten werden.
Eine hochgradig resiliente Umgebung erstreckt sich über mindestens zwei Zonen einer ausgewählten Region. Cloud Composer die Komponenten Ihrer App automatisch zwischen den Zonen.
Sie können hochgradig resiliente Cloud Composer-Umgebungen für kritische Geschäftsprozesse verwenden.
Informationen zur hochverfügbaren Datenbank Ihrer Umgebung
In hoch verfügbaren Cloud Composer-Umgebungen wird die Cloud SQL-Instanz, in der die Datenbank Ihrer Umgebung gespeichert ist, im Modus für hohe Verfügbarkeit ausgeführt. Eine Cloud SQL-Instanz, die für Hochverfügbarkeit konfiguriert ist, wird auch als regionale Instanz bezeichnet und befindet sich in einer primären und sekundären Zone innerhalb der konfigurierten Region. Innerhalb einer regionalen Instanz besteht die Konfiguration aus einer primären Instanz und einer Standby-Instanz.
Bei einem Ausfall wird die Cloud SQL-Instanz Ihrer Umgebung automatisches Failover der Datenbank auf die Standby-Cloud SQL Instanz. Sie müssen keine weiteren Aktionen in der Cloud Composer-Umgebung. Sobald die primäre Zone wieder funktioniert, wechselt die Umgebung wieder zu zwei Zonen (primär und sekundär). In einigen Fällen können die primäre und die sekundäre Zone vertauscht werden. Die Cloud SQL-Instanz im Hochverfügbarkeitsmodus verwendet nach einem Failover dieselbe IP-Adresse.
Hochverfügbare Airflow-Komponenten
In hochverfügbaren Cloud Composer-Umgebungen werden Airflow-Komponenten ausgeführt, die auf mehrere Zonen verteilt sind.
In Ihrer Umgebung werden immer genau zwei Airflow-Scheduler, zwei Webserver und mindestens zwei (aber nicht mehr als zehn) Trigger ausgeführt, wenn Trigger aktiviert sind. Diese Paare mit werden die Komponenten in separaten Zonen ausgeführt. Die Mindestanzahl der Worker ist auf zwei festgelegt und der Cluster Ihrer Umgebung verteilt Workerinstanzen auf Zonen. Bei einem Zonenausfall werden die betroffenen Worker-Instanzen in einer anderen Zone neu geplant.
Weitere Informationen zur Architektur hochverfügbarer Umgebungen finden Sie unter Architektur hochverfügbarer Umgebungen.
Hinweise
Hochverfügbare Umgebungen sind nur in privaten IP-Umgebungen verfügbar.
Hochverfügbare Umgebungen werden im Vergleich zu regulären Umgebungen zu einem Aufpreis angeboten.
Umgebungen mit hoher Ausfallsicherheit sind in Cloud Composer verfügbar Version 2.2.0 und höher.
Wenn Sie eine Standardumgebung auf eine äußerst robuste Umgebung aktualisieren möchten, die folgenden Konfigurationsanforderungen erfüllt. Wenn diese Anforderungen nicht erfüllt, können Sie die Skalierungs- und Leistungsparameter aktualisieren.
- Die Mindestanzahl an Airflow-Workern beträgt 2.
- Die Anzahl der Airflow-Planer beträgt genau 2.
- Wenn Sie zurückstellbare Operatoren in Ihren DAGs verwenden, dann mindestens 2 Trigger.
Eine äußerst robuste Umgebung schaffen
Wenn Sie eine äußerst resiliente Umgebung erstellen möchten, aktivieren Sie beim Erstellen der Umgebung den Modus für hohe Resilienz.
Standardumgebung auf Modus mit hoher Ausfallsicherheit aktualisieren
Console
Rufen Sie in der Google Cloud Console die Seite Umgebungen auf.
Klicken Sie in der Liste der Umgebungen auf den Namen Ihrer Umgebung. Die Seite Umgebungsdetails wird geöffnet.
Wählen Sie den Tab Umgebungskonfiguration aus.
Klicken Sie im Abschnitt Stabilitätsmodus auf Bearbeiten.
Wählen Sie Hohe Ausfallsicherheit aus und klicken Sie auf Speichern.
gcloud
gcloud composer environments update ENVIRONMENT_NAME \
--location LOCATION \
--enable-high-resilience
Ersetzen Sie Folgendes:
ENVIRONMENT_NAME
: der Name Ihrer UmgebungLOCATION
: Region, in der sich die Umgebung befindet.
API
Erstellen Sie eine API-Anfrage
environments.patch
.In dieser Anfrage:
Geben Sie im
updateMask
-Parameter dieconfig.resilienceMode
-Maske an.Geben Sie im Anfragetext
HIGH_RESILIENCE
an, um in den Modus mit hoher Ausfallsicherheit zu wechseln.
Beispiel:
// PATCH https://composer.googleapis.com/v1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.resilienceMode
{
"config": {
"resilience_mode": { "HIGH_RESILIENCE" }
}
}
Terraform
Das Feld resilience_mode
im config
-Block gibt die Ausfallsicherheit an
. Wenn Sie den Modus für hohe Ausfallsicherheit verwenden möchten, legen Sie diesen Wert auf HIGH_RESILIENCE
fest.
resource "google_composer_environment" "example" {
provider = google-beta
name = "ENVIRONMENT_NAME"
region = "LOCATION"
config {
resilience_mode = "HIGH_RESILIENCE"
}
}
Ersetzen Sie Folgendes:
ENVIRONMENT_NAME
: der Name Ihrer UmgebungLOCATION
: Region, in der sich die Umgebung befindet.
Beispiel:
resource "google_composer_environment" "example" {
provider = google-beta
name = "example-environment"
region = "us-central1"
config {
resilience_mode = "HIGH_RESILIENCE"
}
Eine hochgradig resiliente Umgebung in den Standardausfallsicherheitsmodus ändern
Sie können Ihre Umgebung jederzeit in den standardmäßigen Ausfallsicherheitsmodus ändern. Dieses Vorgang:
- Die Anzahl der Webserver in Ihrer Umgebung wird auf 1 reduziert.
- Deaktiviert den Modus für hohe Verfügbarkeit Ihres der Airflow-Datenbank der Umgebung.
Die Einstellungen für die Mindestanzahl von Airflow-Workern werden nicht geändert. Planer oder Trigger.
Console
Rufen Sie in der Google Cloud Console die Seite Umgebungen auf.
Klicken Sie in der Liste der Umgebungen auf den Namen Ihrer Umgebung. Die Seite Umgebungsdetails wird geöffnet.
Wählen Sie den Tab Umgebungskonfiguration aus.
Klicken Sie im Abschnitt Ausfallsicherheitsmodus auf Bearbeiten.
Wählen Sie Standardmäßige Ausfallsicherheit (Standard) aus und klicken Sie auf Speichern.
gcloud
gcloud composer environments update ENVIRONMENT_NAME \
--location LOCATION \
--disable-high-resilience
Ersetzen Sie Folgendes:
ENVIRONMENT_NAME
: der Name Ihrer Cloud Composer-Umgebung.LOCATION
: die Region, in der sich die Umgebung befindet.
API
Erstellen Sie eine API-Anfrage
environments.patch
.In dieser Anfrage:
Geben Sie im
updateMask
-Parameter dieconfig.resilienceMode
-Maske an.Geben Sie im Anfragetext
RESILIENCE_MODE_UNSPECIFIED
zum Wechseln an. Standard-Resilienzmodus.
Beispiel:
// PATCH https://composer.googleapis.com/v1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.resilienceMode
{
"config": {
"resilience_mode": { "RESILIENCE_MODE_UNSPECIFIED" }
}
}
Terraform
Das Feld resilience_mode
im config
-Block gibt die Ausfallsicherheit an
. Wenn Sie den Standardausfallsicherheitsmodus verwenden möchten, legen Sie diesen Wert auf STANDARD_RESILIENCE
fest.
resource "google_composer_environment" "example" {
provider = google-beta
name = "ENVIRONMENT_NAME"
region = "LOCATION"
config {
resilience_mode = "STANDARD_RESILIENCE"
}
}
Ersetzen Sie Folgendes:
ENVIRONMENT_NAME
: der Name Ihrer UmgebungLOCATION
: Region, in der sich die Umgebung befindet.
Beispiel:
resource "google_composer_environment" "example" {
provider = google-beta
name = "example-environment"
region = "us-central1"
config {
resilience_mode = "STANDARD_RESILIENCE"
}
Prüfen, ob Ihre Umgebung im Hochausfallsicherheitsmodus ausgeführt wird
Console
Rufen Sie in der Google Cloud Console die Seite Umgebungen auf.
Klicken Sie in der Liste der Umgebungen auf den Namen Ihrer Umgebung. Die Seite Umgebungsdetails wird geöffnet.
Wählen Sie den Tab Umgebungskonfiguration aus.
Im Abschnitt Ausfallsicherheitsmodus sehen Sie den Ausfallsicherheitsmodus Ihrer Umgebung.
gcloud
Führen Sie den folgenden Google Cloud CLI-Befehl aus, um zu prüfen, ob der Modus mit hoher Ausfallsicherheit in Ihrer Umgebung aktiviert ist. Der Wert von True
bedeutet, dass
in Ihrer Umgebung aktiviert ist.
gcloud composer environments describe ENVIRONMENT_NAME \
--location LOCATION \
--format="value(config.resilienceMode)"
Ersetzen Sie Folgendes:
ENVIRONMENT_NAME
: der Name Ihrer Cloud Composer-Umgebung.LOCATION
: Region, in der sich die Umgebung befindet.
Nächste Schritte
- Führen Sie Failover-Tests für Ihre hochgradig resiliente Umgebung durch.
- Notfallwiederherstellung mit Umgebungs-Snapshots