Stabile Umgebungen einrichten

Cloud Composer 1 Cloud Composer 2

Auf dieser Seite wird beschrieben, wie Sie Cloud Composer-Umgebungen mit hoher Ausfallsicherheit einrichten.

Ausfallsicherheit für zonale Fehler in Cloud Composer

Äußerst robuste Cloud Composer-Umgebungen nutzen integrierte Redundanz- und Failover-Mechanismen, die die Anfälligkeit der Umgebung für zonale Ausfälle und Single-Point-of-Failure-Ausfälle reduzieren.

Ein zonaler Ausfall unterbricht beispielsweise Airflow-Aufgaben, die in einer bestimmten Zone ausgeführt werden. Anschließend wird eine hochresistente Umgebung wiederhergestellt, die betroffenen Komponenten in einer anderen Zone neu gestartet und die Datenbank auf eine sekundäre Zone umgestellt. Daher können die fehlgeschlagenen Airflow-Aufgaben von Airflow neu geplant und gestartet werden, während der Verlauf der DAG-Ausführungen und andere Einstellungen beibehalten werden.

Eine äußerst stabile Umgebung wird in mindestens zwei Zonen einer ausgewählten Region ausgeführt. Cloud Composer verteilt die Komponenten Ihrer Umgebung automatisch auf Zonen.

Sie können hochsichere Cloud Composer-Umgebungen für kritische Geschäftsprozesse verwenden.

Informationen zur hochverfügbaren Datenbank Ihrer Umgebung

In hochverfügbaren Cloud Composer-Umgebungen wird die Cloud SQL-Instanz, die die Datenbank Ihrer Umgebung speichert, im Hochverfügbarkeitsmodus 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 führt die Cloud SQL-Instanz Ihrer Umgebung den automatischen Datenbank-Failover auf die Standby-Instanz von Cloud SQL aus. Sie müssen in Ihrer Cloud Composer-Umgebung keine weiteren Aktionen ausführen. Sobald die primäre Zone wieder betriebsbereit ist, wechselt die Umgebung wieder zu zwei Zonen (primär und sekundär). Primäre und sekundäre Zonen können in einigen Fällen getauscht 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 Zonen verteilt sind.

In Ihrer Umgebung werden immer genau zwei Airflow-Planer, zwei Webserver und mindestens zwei (aber höchstens zehn) Trigger ausgeführt, wenn Trigger aktiviert sind. Diese Komponentenpaare werden in separaten Zonen ausgeführt. Die Mindestanzahl von Workern ist auf zwei festgelegt und der Cluster Ihrer Umgebung verteilt Worker-Instanzen auf Zonen. Bei einem zonalen Ausfall werden betroffene Worker-Instanzen in eine andere Zone verschoben.

Weitere Informationen zur Architektur von Umgebungen mit extrem hoher Ausfallsicherheit finden Sie unter Äußerst stabile Umgebungsarchitektur.

Hinweise

  • Umgebungen mit extrem hoher Ausfallsicherheit sind nur in privaten IP-Umgebungen verfügbar.

  • Umgebungen mit hoher Ausfallsicherheit werden im Vergleich zu regulären Umgebungen gegen Aufpreis angeboten.

  • Umgebungen mit extrem hoher Ausfallsicherheit sind ab Cloud Composer-Version 2.2.0 verfügbar.

  • Wenn Sie eine Standardumgebung auf eine extrem robuste Umgebung aktualisieren möchten, achten Sie darauf, dass sie die folgenden Konfigurationsanforderungen erfüllt. Wenn Ihre Umgebung diese Anforderungen nicht erfüllt, können Sie die Skalierungs- und Leistungsparameter aktualisieren.

    • Die Mindestanzahl von Airflow-Workern beträgt 2 oder mehr.
    • Die Anzahl der Airflow-Planer beträgt genau 2.
    • Wenn Sie in Ihren DAGs verzögerbare Operatoren verwenden, sind mindestens zwei Trigger erforderlich.

Eine extrem stabile Umgebung schaffen

Aktivieren Sie den Modus mit hoher Ausfallsicherheit, um eine Umgebung mit extrem hoher Ausfallsicherheit zu erstellen.

Standardumgebung auf den Modus mit hoher Ausfallsicherheit aktualisieren

Console

  1. Rufen Sie in der Google Cloud Console die Seite Umgebungen auf.

    Zur Seite Umgebungen“

  2. Klicken Sie in der Liste der Umgebungen auf den Namen Ihrer Umgebung. Die Seite Umgebungsdetails wird geöffnet.

  3. Wählen Sie den Tab Umgebungskonfiguration aus.

  4. Klicken Sie im Bereich Ausfallsmodus auf Bearbeiten.

  5. 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 Umgebung
  • LOCATION: die Region, in der sich die Umgebung befindet.

API

  1. Erstellen Sie eine API-Anfrage environments.patch.

  2. In dieser Anfrage:

    1. Geben Sie im Parameter updateMask die Maske config.resilienceMode an.

    2. Geben Sie im Anfragetext HIGH_RESILIENCE an, um in den Modus für hohe 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 den Ausfallsicherheitsmodus an. Legen Sie diesen Wert auf HIGH_RESILIENCE fest, um den Modus für hohe Ausfallsicherheit zu verwenden.

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 Umgebung
  • LOCATION: die 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"

}

Ändern Sie eine Umgebung mit hoher Ausfallsicherheit in den Standardmodus für Ausfallsicherheit

Sie können Ihre Umgebung jederzeit in den Standardmodus für Ausfallsicherheit wechseln. Dieser Vorgang:

  • Reduziert die Anzahl der Webserver in Ihrer Umgebung auf 1.
  • Schaltet den Hochverfügbarkeitsmodus der Airflow-Datenbank Ihrer Umgebung aus.
  • Die Einstellungen für die Mindestanzahl von Airflow-Workern, Planern oder Triggern werden nicht geändert.

Console

  1. Rufen Sie in der Google Cloud Console die Seite Umgebungen auf.

    Zur Seite Umgebungen“

  2. Klicken Sie in der Liste der Umgebungen auf den Namen Ihrer Umgebung. Die Seite Umgebungsdetails wird geöffnet.

  3. Wählen Sie den Tab Umgebungskonfiguration aus.

  4. Klicken Sie im Bereich Ausfallsmodus auf Bearbeiten.

  5. Wählen Sie Standardausfallsicherheit (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

  1. Erstellen Sie eine API-Anfrage environments.patch.

  2. In dieser Anfrage:

    1. Geben Sie im Parameter updateMask die Maske config.resilienceMode an.

    2. Geben Sie im Anfragetext RESILIENCE_MODE_UNSPECIFIED an, um zum standardmäßigen Ausfallsicherheitsmodus zu wechseln.

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 den Ausfallsicherheitsmodus an. Legen Sie diesen Wert auf STANDARD_RESILIENCE fest, um den Standardmodus für Ausfallsicherheit zu verwenden.

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 Umgebung
  • LOCATION: die 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 Modus für hohe Ausfallsicherheit ausgeführt wird

Console

  1. Rufen Sie in der Google Cloud Console die Seite Umgebungen auf.

    Zur Seite Umgebungen“

  2. Klicken Sie in der Liste der Umgebungen auf den Namen Ihrer Umgebung. Die Seite Umgebungsdetails wird geöffnet.

  3. Wählen Sie den Tab Umgebungskonfiguration aus.

  4. Sehen Sie sich im Abschnitt Aussagemodus den Ausfallsicherheitsmodus Ihrer Umgebung an.

gcloud

Führen Sie den folgenden Befehl der Google Cloud CLI aus, um zu prüfen, ob der Modus für hohe Ausfallsicherheit in Ihrer Umgebung aktiviert ist. Der Wert von True bedeutet, dass der Modus für hohe Ausfallsicherheit 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: die Region, in der sich die Umgebung befindet.

Nächste Schritte