Umgebungen skalieren

Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3

Auf dieser Seite wird beschrieben, wie Sie Cloud Composer-Umgebungen skalieren.

Weitere Seiten zur Skalierung:

Vertikal und horizontal skalieren

Optionen für die horizontale Skalierung:

  • Mindest- und Höchstzahl von Workern anpassen
  • Anzahl der Planer anpassen und Triggerer.

Optionen für die vertikale Skalierung:

  • Worker, Planer, Trigger und Webserver. Skalierungs- und Leistungsparameter.
  • Passen Sie die Umgebungsgröße an.

Ressourcenlimits

Komponente Mindestzahl Maximale Anzahl Mindest-vCPU Maximale Anzahl von vCPUs Mindestschritt für vCPU Mindestspeicher (GB) Maximaler Arbeitsspeicher (GB) Mindestschritt für Arbeitsspeicher (GB) Mindestarbeitsspeicher pro 1 vCPU (GB) Maximaler Arbeitsspeicher pro 1 vCPU (GB) Mindestspeicher (GB) Maximaler Speicher (GB) Mindestspeicherschritt (GB)
Planer 1 10 0,5 28 0,25 0,5 80 - 1 6.5 0,05 10 -
Trigger 0 10 0,5 1 0,25 0,5 80 - 1 6.5 - -
Webserver - - 0,5 28 0,25 1 80 - 1 6.5 0,05 10 -
Worker 1 100 0,5 28 0,25 0,5 80 - 1 6.5 0,05 10 -

Worker-Parameter anpassen

Sie können die Mindest- und Höchstanzahl an Workern für Ihre Umgebung festlegen. Cloud Composer skaliert Ihre Umgebung automatisch innerhalb der festgelegten Limits. Sie können diese Limits jederzeit anpassen.

Sie können die von Airflow verwendete CPU-, Arbeitsspeicher- und Speicherplatzmenge angeben in Ihrer Umgebung arbeiten. So können Sie die Leistung Ihrer Neben der horizontalen Skalierung, die durch die Verwendung mehrerer Arbeiter.

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. Rufen Sie den Tab Umgebungskonfiguration auf.

  4. Gehen Sie unter Ressourcen > Arbeitslastkonfiguration so vor: Klicken Sie auf Bearbeiten.

  5. Passen Sie im Bereich Workloads-Konfiguration die Parameter für Airflow an. Worker:

    • Geben Sie im Feld Mindestzahl an Workern die Anzahl der Airflow-Worker an, die Ihre Umgebung immer ausführen muss. Die Anzahl der die Anzahl der Worker in Ihrer Umgebung während der den normalen Betrieb der Umgebung, auch wenn eine geringere Anzahl an und Worker die Last bewältigen können.

    • Geben Sie im Feld Maximalzahl der Worker die maximale Anzahl der Airflow-Worker an, die in Ihrer Umgebung ausgeführt werden können. Die Zahl der Worker in Ihrer Umgebung überschreitet diesen Wert nie, auch wenn eine höhere Anzahl an Workern zur Verarbeitung der Last erforderlich ist.

    • Geben Sie die Anzahl in den Feldern CPU, Arbeitsspeicher und Speicher an. CPUs, Arbeitsspeicher und Speicher für Airflow-Worker. Jeder Worker verwendet die angegebene Menge an Ressourcen.

  6. Klicken Sie auf Speichern.

gcloud

Die folgenden Airflow-Worker-Parameter sind verfügbar:

  • --min-workers: die Anzahl der Airflow-Worker, die Ihre Umgebung benötigt immer ausgeführt werden. Die Anzahl der Worker in Ihrer Umgebung wird nicht unterschritten selbst wenn eine geringere Anzahl von Workern die Last bewältigen kann.
  • --max-workers: die maximale Anzahl von Airflow-Workern, die Ihr ausgeführt werden kann. Die Anzahl der Worker in Ihrer Umgebung überschreitet diesen Wert nie, auch wenn eine höhere Anzahl an Workern zur Verarbeitung der Last erforderlich ist.
  • --worker-cpu: die Anzahl der CPUs für einen Airflow-Worker.
  • --worker-memory: die Größe des Arbeitsspeichers für einen Airflow-Worker.
  • --worker-storage: der Speicherplatz für einen Airflow-Worker.

Führen Sie den folgenden Google Cloud CLI-Befehl aus:

gcloud composer environments update ENVIRONMENT_NAME \
  --location LOCATION \
  --min-workers WORKERS_MIN \
  --max-workers WORKERS_MAX \
  --worker-cpu WORKER_CPU \
  --worker-memory WORKER_MEMORY \
  --worker-storage WORKER_STORAGE

Ersetzen Sie Folgendes:

  • ENVIRONMENT_NAME: der Name der Umgebung.
  • LOCATION: Region, in der sich die Umgebung befindet.
  • WORKERS_MIN: die Mindestanzahl von Airflow-Workern.
  • WORKERS_MAX: die maximale Anzahl von Airflow-Workern
  • WORKER_CPU: die Anzahl der CPUs für einen Worker in vCPU-Einheiten.
  • WORKER_MEMORY: die Größe des Arbeitsspeichers für einen Worker.
  • WORKER_STORAGE: die Laufwerksgröße für einen Worker.

Beispiel:

gcloud composer environments update example-environment \
  --location us-central1 \
  --min-workers 2 \
  --max-workers 6 \
  --worker-cpu 1 \
  --worker-memory 2 \
  --worker-storage 2

API

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

  2. In dieser Anfrage:

    1. Geben Sie im updateMask-Parameter die Felder an, die Sie aktualisieren möchten. Um beispielsweise alle für Worker verwenden, geben Sie config.workloadsConfig.worker.cpu,config.workloadsConfig.worker.memoryGb,config.workloadsConfig.worker.storageGB,config.softwareConfig.workloadsConfig.worker.minCount,config.softwareConfig.workloadsConfig.worker.maxCount-Maske.

    2. Geben Sie im Anfragetext die neuen Worker-Parameter an.

"config": {
  "workloadsConfig": {
    "worker": {
      "minCount": WORKERS_MIN,
      "maxCount": WORKERS_MAX,
      "cpu": WORKER_CPU,
      "memoryGb": WORKER_MEMORY,
      "storageGb": WORKER_STORAGE
    }
  }
}

Ersetzen Sie Folgendes:

  • ENVIRONMENT_NAME: der Name der Umgebung.
  • LOCATION: Region, in der sich die Umgebung befindet.
  • WORKERS_MIN: die Mindestanzahl von Airflow-Workern.
  • WORKERS_MAX: die maximale Anzahl von Airflow-Workern
  • WORKER_CPU: die Anzahl der CPUs für einen Worker in vCPU-Einheiten.
  • WORKER_MEMORY: die Größe des Arbeitsspeichers für einen Worker in GB.
  • WORKER_STORAGE: die Laufwerksgröße für einen Worker in GB.

Beispiel:

// PATCH https://composer.googleapis.com/v1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.workloadsConfig.worker.minCount,
// config.workloadsConfig.worker.maxCount
// config.workloadsConfig.worker.cpu,
// config.workloadsConfig.worker.memoryGb,
// config.workloadsConfig.worker.storageGB

"config": {
  "workloadsConfig": {
    "worker": {
      "minCount": 2,
      "maxCount": 6,
      "cpu": 1,
      "memoryGb": 2,
      "storageGb": 2
    }
  }
}

Terraform

Mit den folgenden Feldern im Block workloads_config.worker wird gesteuert, Airflow-Worker-Parameter. Jeder Worker verwendet die angegebene Menge an Ressourcen.

  • worker.min_count: die Anzahl der Airflow-Worker, die Ihre Umgebung benötigt immer ausgeführt werden. Die Anzahl der Worker in Ihrer Umgebung wird nicht unterschritten auch wenn eine geringere Anzahl von Workern die Last bewältigen kann.
  • worker.max_count: die maximale Anzahl von Airflow-Workern, die Ihr ausgeführt werden kann. Die Anzahl der Worker in Ihrer Umgebung überschreitet diesen Wert nie, auch wenn eine höhere Anzahl an Workern zur Verarbeitung der Last erforderlich ist.
  • worker.cpu: die Anzahl der CPUs für einen Airflow-Worker.
  • worker.memory_gb: die Größe des Arbeitsspeichers für einen Airflow-Worker.
  • worker.storage_gb: die Menge an Speicherplatz für einen Airflow-Worker.
resource "google_composer_environment" "example" {
  provider = google-beta
  name = "ENVIRONMENT_NAME"
  region = "LOCATION"

  config {

    workloads_config {
      worker {
        min_count = WORKERS_MIN
        max_count = WORKERS_MAX
        cpu = WORKER_CPU
        memory_gb = WORKER_MEMORY
        storage_gb = WORKER_STORAGE
      }
    }

  }
}

Ersetzen Sie Folgendes:

  • ENVIRONMENT_NAME: der Name der Umgebung.
  • LOCATION: Region, in der sich die Umgebung befindet.
  • WORKERS_MIN: die Mindestanzahl von Airflow-Workern.
  • WORKERS_MAX: die maximale Anzahl von Airflow-Workern
  • WORKER_CPU: die Anzahl der CPUs für einen Worker in vCPU-Einheiten.
  • WORKER_MEMORY: die Größe des Arbeitsspeichers für einen Worker in GB.
  • WORKER_STORAGE: die Laufwerksgröße für einen Worker in GB.

Beispiel:

resource "google_composer_environment" "example" {
  provider = google-beta
  name = "example-environment"
  region = "us-central1"

  config {

    workloads_config {
      worker {
        min_count = 2
        max_count = 6
        cpu = 1
        memory_gb = 2
        storage_gb = 2
      }
    }

  }
}

Planerparameter anpassen

In Ihrer Umgebung können mehrere Airflow-Planer gleichzeitig ausgeführt werden. Mit mehreren Planern lässt sich die Last auf verschiedene Planerinstanzen verteilen, um die Leistung und Zuverlässigkeit zu verbessern.

Sie können bis zu 10 Planer in Ihrer Umgebung.

Durch die Erhöhung der Anzahl der Planer wird die Airflow-Leistung nicht immer verbessert. Wenn Sie beispielsweise nur einen Planer haben, ist die Leistung möglicherweise besser als zwei. Dies kann passieren, wenn der zusätzliche Planer nicht verwendet wird und somit Ressourcen Ihrer Umgebung verbraucht, ohne dass dies Auswirkungen auf die Gesamtleistung hat. Die tatsächliche Leistung des Planers hängt von der Anzahl der Airflow-Worker, der Anzahl der in der Umgebung ausgeführten DAGs und Aufgaben sowie der Konfiguration von Airflow und der Umgebung ab.

Wir empfehlen, mit zwei Planern zu beginnen und dann die Leistung Ihrer Umgebung zu überwachen. Wenn Sie die Anzahl der Planer ändern, können Sie Ihre Umgebung jederzeit wieder auf die ursprüngliche Anzahl von Planern skalieren.

Weitere Informationen zur Konfiguration mehrerer Planer finden Sie in der Airflow-Dokumentation.

Sie können die von Airflow verwendete CPU-, Arbeitsspeicher- und Speicherplatzmenge angeben Planer in Ihrer Umgebung. So können Sie die Leistung Ihrer Ihrer Umgebung. Zusätzlich zur horizontalen Skalierung, die durch die Verwendung mehrerer Planer.

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. Rufen Sie den Tab Umgebungskonfiguration auf.

  4. Gehen Sie unter Ressourcen > Arbeitslastkonfiguration so vor: Klicken Sie auf Bearbeiten.

  5. Passen Sie im Bereich Workloads-Konfiguration die Parameter für Airflow an. Planer:

    • Wählen Sie in der Drop-down-Liste Anzahl der Planer die Anzahl der Planer für Ihre Umgebung.

    • Geben Sie die Anzahl in den Feldern CPU, Arbeitsspeicher und Speicher an. CPUs, Arbeitsspeicher und Speicher für Airflow-Planer. Jeder Planer verwendet die angegebene Menge an Ressourcen.

  6. Klicken Sie auf Speichern.

gcloud

Die folgenden Airflow-Planerparameter sind verfügbar:

  • --scheduler-count: die Anzahl der Planer in Ihrer Umgebung.

  • --scheduler-cpu: die Anzahl der CPUs für einen Airflow-Planer.

  • --scheduler-memory: die Größe des Arbeitsspeichers für einen Airflow-Planer.

  • --scheduler-storage: der Speicherplatz für einen Airflow-Planer.

Führen Sie den folgenden Google Cloud CLI-Befehl aus:

gcloud composer environments update ENVIRONMENT_NAME \
  --location LOCATION \
  --scheduler-cpu SCHEDULER_CPU \
  --scheduler-memory SCHEDULER_MEMORY \
  --scheduler-storage SCHEDULER_STORAGE \
  --scheduler-count SCHEDULER_COUNT

Ersetzen Sie Folgendes:

  • ENVIRONMENT_NAME: der Name der Umgebung.
  • LOCATION: Region, in der sich die Umgebung befindet.

  • SCHEDULER_CPU: die Anzahl der CPUs für einen Planer in vCPU-Einheiten.

  • SCHEDULER_MEMORY: die Größe des Arbeitsspeichers für einen Planer.

  • SCHEDULER_STORAGE: Die Laufwerksgröße für einen Planer.

  • SCHEDULER_COUNT: die Anzahl der Planer.

Beispiel:

gcloud composer environments update example-environment \
  --location us-central1 \
  --scheduler-cpu 0.5 \
  --scheduler-memory 2.5 \
  --scheduler-storage 2 \
  --scheduler-count 2

API

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

  2. In dieser Anfrage:

    1. Geben Sie im Parameter updateMask an, Die Maske „config.workloadsConfig.scheduler“, um alle Planer zu aktualisieren oder nur die Anzahl der Planer. Sie können auch einzelne Planerparameter außer count, indem sie eine Maske angeben. Beispiel: config.workloadsConfig.scheduler.cpu

    2. Geben Sie im Anfragetext die neuen Planerparameter an.

"config": {
  "workloadsConfig": {
    "scheduler": {
      "cpu": SCHEDULER_CPU,
      "memoryGb": SCHEDULER_MEMORY,
      "storageGb": SCHEDULER_STORAGE,
      "count": SCHEDULER_COUNT
    }
  }
}

Ersetzen Sie Folgendes:

  • ENVIRONMENT_NAME: der Name der Umgebung.
  • LOCATION: Region, in der sich die Umgebung befindet.

  • SCHEDULER_CPU: die Anzahl der CPUs für einen Planer in vCPU-Einheiten.

  • SCHEDULER_MEMORY: die Größe des Arbeitsspeichers für einen Planer in GB.

  • SCHEDULER_STORAGE: die Laufwerksgröße für einen Planer in GB.

  • SCHEDULER_COUNT: die Anzahl der Planer.

Beispiel:

// PATCH https://composer.googleapis.com/v1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.workloadsConfig.scheduler

"config": {
  "workloadsConfig": {
    "scheduler": {
      "cpu": 0.5,
      "memoryGb": 2.5,
      "storageGb": 2,
      "count": 2
    }
  }
}

Terraform

Mit den folgenden Feldern im Block workloads_config.scheduler wird gesteuert, Airflow-Planerparameter. Jeder Planer verwendet die angegebene Menge an Ressourcen.

  • scheduler.count: die Anzahl der Planer in Ihrer Umgebung.

  • scheduler.cpu: die Anzahl der CPUs für einen Airflow-Planer.

  • scheduler.memory_gb: die Größe des Arbeitsspeichers für einen Airflow-Planer.

  • scheduler.storage_gb: der Speicherplatz für einen Planer.

resource "google_composer_environment" "example" {
  provider = google-beta
  name = "ENVIRONMENT_NAME"
  region = "LOCATION"

  config {

    workloads_config {
      scheduler {
        cpu = SCHEDULER_CPU
        memory_gb = SCHEDULER_MEMORY
        storage_gb = SCHEDULER_STORAGE
        count = SCHEDULER_COUNT
      }
    }

  }
}

Ersetzen Sie Folgendes:

  • ENVIRONMENT_NAME: der Name der Umgebung.
  • LOCATION: Region, in der sich die Umgebung befindet.

  • SCHEDULER_CPU: die Anzahl der CPUs für einen Planer in vCPU-Einheiten.

  • SCHEDULER_MEMORY: die Größe des Arbeitsspeichers für einen Planer in GB.

  • SCHEDULER_STORAGE: die Laufwerksgröße für einen Planer in GB.

  • SCHEDULER_COUNT: die Anzahl der Planer.

Beispiel:

resource "google_composer_environment" "example" {
  provider = google-beta
  name = "example-environment"
  region = "us-central1"

  config {

    workloads_config {
      scheduler {
        
        cpu = 0.5
        memory_gb = 1.875
        storage_gb = 1
        
        count = 2
      }
    }

  }
}

Triggerparameter anpassen

Sie können die Anzahl der Trigger auf null setzen, aber Sie benötigen mindestens einen Trigger Triggerer-Instanz in Ihrer Umgebung (oder mindestens zwei Umgebungen) zurückstellbare Operatoren in Ihren DAGs.

Je nach Umgebung Resilienzmodus, gibt es verschiedene mögliche Konfigurationen für die Anzahl der Trigger:

  • Standardausfallsicherheit: Sie können bis zu 10 Triggerer.
  • Hohe Ausfallsicherheit: mindestens 2 Trigger, bis maximal 10.

Selbst wenn die Anzahl der Trigger auf null gesetzt ist, wird erstellt und im Cluster Ihrer Umgebung sichtbar, aber kein tatsächlicher Triggerer ausgeführt werden.

Sie können auch die von Airflow verwendete CPU-, Arbeitsspeicher- und Speicherplatzmenge angeben Trigger in Ihrer Umgebung. So können Sie die Leistung Ihrer Ihrer Umgebung. Zusätzlich zur horizontalen Skalierung, die durch die Verwendung mehrerer Triggerer.

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. Rufen Sie den Tab Umgebungskonfiguration auf.

  4. Gehen Sie unter Ressourcen > Arbeitslastkonfiguration so vor: Klicken Sie auf Bearbeiten.

  5. Passen Sie im Bereich Workloads-Konfiguration die Parameter für Airflow an. Triggerer:

    1. Führen Sie im Abschnitt Trigger im Feld Anzahl der Trigger die folgenden Schritte aus: geben Sie die Anzahl der Trigger in Ihrer Umgebung ein.

      Wenn Sie mindestens einen Trigger für Ihre Umgebung festlegen, verwenden Sie auch die Methode die Felder CPU und Arbeitsspeicher, um die Ressourcenzuweisung zu konfigurieren für Ihre Trigger.

    2. Geben Sie unter CPU und Arbeitsspeicher den Wert an. CPUs, Arbeitsspeicher und Speicher für Airflow-Triggerer. Jeder Triggerer verwendet die angegebene Menge an Ressourcen.

  6. Klicken Sie auf Speichern.

gcloud

Die folgenden Airflow-Triggerparameter sind verfügbar:

  • --triggerer-count: die Anzahl der Trigger in Ihrer Umgebung.

    • Verwenden Sie für standardmäßige Ausfallsicherheitsumgebungen einen Wert zwischen 0 und 10.
    • In Umgebungen mit extrem hoher Ausfallsicherheit 0, oder ein Wert zwischen 2 und 10
  • --triggerer-cpu: die Anzahl der CPUs für einen Airflow-Triggerer.

  • --triggerer-memory: die Größe des Arbeitsspeichers für einen Airflow Triggerer.

Führen Sie den folgenden Google Cloud CLI-Befehl aus:

gcloud composer environments update ENVIRONMENT_NAME \
  --location LOCATION \
  --triggerer-count TRIGGERER_COUNT \
  --triggerer-cpu TRIGGERER_CPU \
  --triggerer-memory TRIGGERER_MEMORY

Ersetzen Sie Folgendes:

  • ENVIRONMENT_NAME: der Name der Umgebung.
  • LOCATION: Region, in der sich die Umgebung befindet.
  • TRIGGERER_COUNT: die Anzahl der Trigger.
  • TRIGGERER_CPU: die Anzahl der CPUs für einen Trigger in vCPU-Einheiten.
  • TRIGGERER_MEMORY: die Größe des Arbeitsspeichers für einen Triggerer.

Beispiele:

  • Skalieren Sie auf vier Triggerinstanzen:
  gcloud composer environments update example-environment \
    --location us-central1 \
    --triggerer-count 4 \
    --triggerer-cpu 1 \
    --triggerer-memory 1
  ```

- Disable triggerers by setting triggerer count to `0`. This operation
  doesn't require specifying CPU or memory for the triggerers.

```bash
  gcloud composer environments update example-environment \
    --location us-central1 \
    --triggerer-count 0
  ```

API

  1. Geben Sie im Abfrageparameter updateMask an, config.workloadsConfig.triggerer-Maske.

  2. Geben Sie im Anfragetext alle drei Parameter für Trigger an.

"config": {
  "workloadsConfig": {
    "triggerer": {
      "count": TRIGGERER_COUNT,
      "cpu": TRIGGERER_CPU,
      "memoryGb": TRIGGERER_MEMORY
    }
  }
}

Ersetzen Sie Folgendes:

  • TRIGGERER_COUNT: die Anzahl der Trigger.

    • Verwenden Sie für standardmäßige Ausfallsicherheitsumgebungen einen Wert zwischen 0 und 10.
    • In Umgebungen mit extrem hoher Ausfallsicherheit 0, oder ein Wert zwischen 2 und 10
  • TRIGGERER_CPU: die Anzahl der CPUs für einen Trigger in vCPU-Einheiten.

  • TRIGGERER_MEMORY: die Größe des Arbeitsspeichers für einen Trigger.

Beispiele:

  • Deaktivieren Sie Trigger, indem Sie die Triggeranzahl auf 0 setzen. Dieser Vorgang erfordert keine Angabe von CPU oder Speicher für die Trigger.
// PATCH https://composer.googleapis.com/v1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.workloadsConfig.triggerer
"config": {
  "workloadsConfig": {
    "triggerer": {
      "count": 0
    }
  }
}
  • Skalieren Sie auf vier Triggerinstanzen:
// PATCH https://composer.googleapis.com/v1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.workloadsConfig.triggerer
"config": {
  "workloadsConfig": {
    "triggerer": {
      "count": 4,
      "cpu": 1,
      "memoryGb": 1
    }
  }
}

Terraform

Mit den folgenden Feldern im Block workloads_config.triggerer wird gesteuert, Airflow-Triggerer-Parameter. Jeder Trigger verwendet die angegebene Menge an Ressourcen.

  • triggerer.count: die Anzahl der Trigger in Ihrer Umgebung.

    • Verwenden Sie für standardmäßige Ausfallsicherheitsumgebungen einen Wert zwischen 0 und 10.
    • In Umgebungen mit extrem hoher Ausfallsicherheit 0, oder ein Wert zwischen 2 und 10
  • triggerer.cpu: die Anzahl der CPUs für einen Airflow-Triggerer.

  • triggerer.memory_gb: die Größe des Arbeitsspeichers für einen Airflow-Triggerer.

resource "google_composer_environment" "example" {
  provider = google-beta
  name = "ENVIRONMENT_NAME"
  region = "LOCATION"

  config {

    workloads_config {
      triggerer {
        count = TRIGGERER_COUNT
        cpu = TRIGGERER_CPU
        memory_gb = TRIGGERER_MEMORY
      }
    }

  }
}

Ersetzen Sie Folgendes:

  • ENVIRONMENT_NAME: der Name der Umgebung.
  • LOCATION: Region, in der sich die Umgebung befindet.
  • TRIGGERER_COUNT: die Anzahl der Trigger.
  • TRIGGERER_CPU: die Anzahl der CPUs für einen Trigger in vCPU-Einheiten.
  • TRIGGERER_MEMORY: die Größe des Arbeitsspeichers für einen Trigger in GB.

Beispiel:

resource "google_composer_environment" "example" {
  provider = google-beta
  name = "example-environment"
  region = "us-central1"

  config {

    workloads_config {
      triggerer {
        count = 1
        cpu = 0.5
        memory_gb = 0.5
      }
    }

  }
}

Webserverparameter anpassen

Sie können die Menge an CPUs, Arbeitsspeicher und Speicherplatz angeben, die von Airflow verwendet werden Webserver in Ihrer Umgebung. Auf diese Weise können Sie die Leistung Airflow-UI, um z. B. den Bedarf einer großen Anzahl von oder eine große Anzahl verwalteter DAGs.

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. Rufen Sie den Tab Umgebungskonfiguration auf.

  4. Gehen Sie unter Ressourcen > Arbeitslastkonfiguration so vor: Klicken Sie auf Bearbeiten.

  5. Passen Sie im Bereich Workloads Configuration (Arbeitslastkonfiguration) die Parameter für die Webserver. Geben Sie in den Feldern CPU, Arbeitsspeicher und Speicher Folgendes an: Anzahl der CPUs, des Arbeitsspeichers und Speichers für den Webserver.

  6. Klicken Sie auf Speichern.

gcloud

Die folgenden Parameter des Airflow-Webservers sind verfügbar:

  • --web-server-cpu: die Anzahl der CPUs für den Airflow-Webserver.
  • --web-server-memory: die Größe des Arbeitsspeichers für das Airflow-Web Server.
  • --web-server-storage: die Menge an Speicherplatz für Airflow Webserver.

Führen Sie den folgenden Google Cloud CLI-Befehl aus:

gcloud composer environments update ENVIRONMENT_NAME \
  --location LOCATION \
  --web-server-cpu WEB_SERVER_CPU \
  --web-server-memory WEB_SERVER_MEMORY \
  --web-server-storage WEB_SERVER_STORAGE

Ersetzen Sie Folgendes:

  • ENVIRONMENT_NAME: der Name der Umgebung.
  • LOCATION: Region, in der sich die Umgebung befindet.
  • WEB_SERVER_CPU: die Anzahl der CPUs für den Webserver in vCPU-Einheiten.
  • WEB_SERVER_MEMORY: die Größe des Arbeitsspeichers für den Webserver.
  • WEB_SERVER_STORAGE: die Größe des Arbeitsspeichers für den Webserver.

Beispiel:

gcloud composer environments update example-environment \
  --location us-central1 \
  --web-server-cpu 1 \
  --web-server-memory 2.5 \
  --web-server-storage 2

API

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

  2. In dieser Anfrage:

    1. Geben Sie im Parameter updateMask an, Die config.workloadsConfig.webServer-Maske, um alle Webserver zu aktualisieren Parameter. Sie können auch einzelne Webserverparameter und eine Maske für diese Parameter angeben: config.workloadsConfig.webServer.cpu, config.workloadsConfig.webServer.memoryGb, config.workloadsConfig.webServer.storageGb

    2. Geben Sie im Anfragetext die neuen Webserverparameter an.

"config": {
  "workloadsConfig": {
    "webServer": {
      "cpu": WEB_SERVER_CPU,
      "memoryGb": WEB_SERVER_MEMORY,
      "storageGb": WEB_SERVER_STORAGE
    }
  }
}

Ersetzen Sie Folgendes:

  • ENVIRONMENT_NAME: der Name der Umgebung.
  • LOCATION: Region, in der sich die Umgebung befindet.
  • WEB_SERVER_CPU: die Anzahl der CPUs für den Webserver in vCPU-Einheiten.
  • WEB_SERVER_MEMORY: die Größe des Arbeitsspeichers für den Webserver in GB.
  • WEB_SERVER_STORAGE: die Laufwerksgröße für den Webserver in GB.

Beispiel:

// PATCH https://composer.googleapis.com/v1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.workloadsConfig.webServer.cpu,
// config.workloadsConfig.webServer.memoryGb,
// config.workloadsConfig.webServer.storageGb

"config": {
  "workloadsConfig": {
    "webServer": {
      "cpu": 0.5,
      "memoryGb": 2.5,
      "storageGb": 2
    }
  }
}

Terraform

Mit den folgenden Feldern im Block workloads_config.web_server wird gesteuert, Webserverparameter.

  • web_server.cpu: die Anzahl der CPUs für den Webserver.
  • web_server.memory_gb: die Größe des Arbeitsspeichers für den Webserver.
  • web_server.storage_gb: die Menge an Speicherplatz für den Webserver.
resource "google_composer_environment" "example" {
  provider = google-beta
  name = "ENVIRONMENT_NAME"
  region = "LOCATION"

  config {

    workloads_config {
      web_server {
        cpu = WEB_SERVER_CPU
        memory_gb = WEB_SERVER_MEMORY
        storage_gb = WEB_SERVER_STORAGE
      }
    }

  }
}

Ersetzen Sie Folgendes:

  • ENVIRONMENT_NAME: der Name der Umgebung.
  • LOCATION: Region, in der sich die Umgebung befindet.
  • WEB_SERVER_CPU: die Anzahl der CPUs für den Webserver in vCPU-Einheiten.
  • WEB_SERVER_MEMORY: die Größe des Arbeitsspeichers für den Webserver in GB.
  • WEB_SERVER_STORAGE: die Laufwerksgröße für den Webserver in GB.

Beispiel:

resource "google_composer_environment" "example" {
  provider = google-beta
  name = "example-environment"
  region = "us-central1"

  config {

    workloads_config {
      web_server {
        cpu = 0.5
        memory_gb = 1.875
        storage_gb = 1
      }
    }

  }
}

Größe der Umgebung anpassen

Mit der Umgebungsgröße steuern Sie die Leistungsparameter der verwalteten Cloud Composer-Infrastruktur, die z. B. die Airflow-Datenbank

Wählen Sie eine größere Umgebungsgröße aus, wenn Sie eine große Anzahl ausführen möchten von DAGs und Aufgaben.

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. Rufen Sie den Tab Umgebungskonfiguration auf.

  4. Gehen Sie unter Ressourcen > Arbeitslastkonfiguration so vor: Klicken Sie auf Bearbeiten.

  5. Gehen Sie unter Ressourcen > Core Infrastructure wie folgt vor: Klicken Sie auf Bearbeiten.

  6. Führen Sie im Bereich Kerninfrastruktur im Feld Umgebungsgröße die folgenden Schritte aus: geben Sie die Umgebungsgröße an.

  7. Klicken Sie auf Speichern.

gcloud

Das --environment-size-Argument steuert die Umgebungsgröße:

gcloud composer environments update ENVIRONMENT_NAME \
    --location LOCATION \
    --environment-size ENVIRONMENT_SIZE

Ersetzen Sie Folgendes:

  • ENVIRONMENT_NAME: der Name der Umgebung.
  • LOCATION: Region, in der sich die Umgebung befindet.
  • ENVIRONMENT_SIZE: small, medium oder large.

Beispiel:

gcloud composer environments update example-environment \
    --location us-central1 \
    --environment-size medium

API

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

  2. In dieser Anfrage:

    1. Geben Sie im updateMask-Parameter die config.environmentSize-Maske an.

    2. Geben Sie im Anfragetext die Größe der Umgebung an.

  "config": {
    "environmentSize": "ENVIRONMENT_SIZE"
  }

Ersetzen Sie Folgendes:

  • ENVIRONMENT_SIZE: die Umgebungsgröße, ENVIRONMENT_SIZE_SMALL ENVIRONMENT_SIZE_MEDIUM oder ENVIRONMENT_SIZE_LARGE.

Beispiel:

// PATCH https://composer.googleapis.com/v1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.environmentSize

"config": {
  "environmentSize": "ENVIRONMENT_SIZE_MEDIUM"
}

Terraform

Über das Feld environment_size im Block config wird die Umgebung gesteuert. Größe:

resource "google_composer_environment" "example" {
  provider = google-beta
  name = "ENVIRONMENT_NAME"
  region = "LOCATION"

  config {

    environment_size = "ENVIRONMENT_SIZE"

  }
}

Ersetzen Sie Folgendes:

  • ENVIRONMENT_NAME: der Name der Umgebung.
  • LOCATION: Region, in der sich die Umgebung befindet.
  • ENVIRONMENT_SIZE: die Umgebungsgröße, ENVIRONMENT_SIZE_SMALL ENVIRONMENT_SIZE_MEDIUM oder ENVIRONMENT_SIZE_LARGE.

Beispiel:

resource "google_composer_environment" "example" {
  provider = google-beta
  name = "example-environment"
  region = "us-central1"

  config {

    environment_size = "ENVIRONMENT_SIZE_SMALL"

    }
  }
}

Nächste Schritte