Umgebungen skalieren

Cloud Composer 1 Cloud Composer 2

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

Informationen zur Funktionsweise der Umgebungsskalierung finden Sie unter Umgebungsskalierung.

Vertikal und horizontal skalieren

In Cloud Composer 1 definieren Sie keine bestimmten CPU- und Arbeitsspeicherressourcen für Cloud Composer- und Airflow-Komponenten wie Worker und Planer. Stattdessen geben Sie die Anzahl und den Typ der Maschinen für Knoten im Cluster Ihrer Umgebung an.

Optionen für die horizontale Skalierung:

Optionen für die vertikale Skalierung:

Anzahl der Knoten anpassen

Sie können die Anzahl der Knoten in Ihrer Umgebung ändern.

Diese Anzahl entspricht der Anzahl der Airflow-Worker in Ihrer Umgebung. Neben der Ausführung von Airflow-Workern führen Ihre Umgebungsknoten auch Airflow-Planer und andere Umgebungskomponenten aus.

Console

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

    Zur Seite „Umgebungen“

  2. Wählen Sie Ihre Umgebung aus.

  3. Rufen Sie den Tab Umgebungskonfiguration auf.

  4. Klicken Sie im Element Worker-Knoten > Knotenzahl auf Bearbeiten.

  5. Geben Sie im Dialogfeld Konfiguration der Worker-Knoten im Feld Knotenzahl die Anzahl der Knoten in Ihrer Umgebung an.

  6. Klicken Sie auf Speichern.

gcloud

Das Argument --node-count steuert die Anzahl der Knoten in Ihrer Umgebung:

gcloud composer environments update ENVIRONMENT_NAME \
    --location LOCATION \
    --zone NODE_ZONE \
    --node-count NODE_COUNT

Ersetzen Sie:

  • ENVIRONMENT_NAME durch den Namen der Umgebung.
  • LOCATION durch die Region, in der sich die Umgebung befindet.
  • NODE_COUNT durch die Anzahl der Knoten. Die Mindestanzahl von Knoten ist 3.
  • NODE_ZONE durch die Compute Engine-Zone für Ihre Umgebungs-VMs.

Beispiel:

gcloud composer environments update example-environment \
    --location us-central1 \
    --zone us-central1-a \
    --node-count 6

API

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

  2. In dieser Anfrage gilt:

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

    2. Geben Sie im Anfragetext die Anzahl der Knoten für Ihre Umgebung an.

  "config": {
    "nodeCount": NODE_COUNT
  }

Ersetzen Sie:

  • NODE_COUNT durch die Anzahl der Knoten. Die Mindestanzahl von Knoten ist 3.

Beispiel:

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

"config": {
  "nodeCount": 6
}

Terraform

Das node_count-Feld im node_config-Block gibt die Anzahl der Knoten in Ihrer Umgebung an:

resource "google_composer_environment" "example" {

  config {
    node_config {
      node_count = NODE_COUNT
    }
}

Ersetzen Sie:

  • NODE_COUNT durch die Anzahl der Knoten.

Beispiel:

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

  config {

    node_config {
      node_count = 4
    }

}

Anzahl der Planer 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 eine Anzahl von Planern bis zur Anzahl der Knoten in Ihrer Umgebung angeben.

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.

Console

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

    Zur Seite „Umgebungen“

  2. Wählen Sie Ihre Umgebung aus.

  3. Rufen Sie den Tab Umgebungskonfiguration auf.

  4. Klicken Sie im Element Ressourcen > Anzahl der Planer auf Bearbeiten.

  5. Geben Sie im Dialogfeld Planerkonfiguration im Feld Anzahl der Planer die Anzahl der Planer für Ihre Umgebung an.

  6. Klicken Sie auf Speichern.

gcloud

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

gcloud composer environments update ENVIRONMENT_NAME \
  --location LOCATION \
  --scheduler-count SCHEDULER_COUNT

Ersetzen Sie:

  • ENVIRONMENT_NAME durch den Namen der Umgebung.
  • LOCATION durch die Region, in der sich die Umgebung befindet.
  • SCHEDULER_COUNT durch die Anzahl der Planer.

Beispiel:

gcloud composer environments update example-environment \
  --location us-central1 \
  --scheduler-count 2

API

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

  2. In dieser Anfrage gilt:

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

    2. Geben Sie im Anfragetext die Anzahl der Knoten für Ihre Umgebung an.

{
  "config": {
    "softwareConfig": {
      "schedulerCount": SCHEDULER_COUNT
    }
}

Ersetzen Sie:

  • SCHEDULER_COUNT durch die Anzahl der Planer.

Beispiel:

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

{
  "config": {
    "softwareConfig": {
      "schedulerCount": 2
    }
}

Terraform

Das Feld scheduler_count im Block software_config gibt die Anzahl der Planer in Ihrer Umgebung an:

Dieses Feld ist nur in Cloud Composer 1-Umgebungen verfügbar, die Airflow 2 verwenden.

resource "google_composer_environment" "example" {

  config {
    software_config {
      scheduler_count = SCHEDULER_COUNT
    }
  }
}

Ersetzen Sie:

  • SCHEDULER_COUNT durch die Anzahl der Planer.

Beispiel:

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

  config {
    software_config {
      scheduler_count = 2
    }
  }
}

Maschinentyp der Cloud SQL-Instanz anpassen

Sie können den Maschinentyp der Cloud SQL-Instanz ändern, in der die Airflow-Datenbank Ihrer Umgebung gespeichert ist.

Console

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

    Zur Seite „Umgebungen“

  2. Wählen Sie Ihre Umgebung aus.

  3. Rufen Sie den Tab Umgebungskonfiguration auf.

  4. Klicken Sie im Element Ressourcen > Cloud SQL-Maschinentyp auf Bearbeiten.

  5. Wählen Sie im Dialogfeld Cloud SQL-Konfiguration in der Drop-down-Liste Cloud SQL-Maschinentyp den Maschinentyp für die Cloud SQL-Instanz Ihrer Umgebung aus.

  6. Klicken Sie auf Speichern.

gcloud

Die --cloud-sql-machine-type-Argumente steuern den Maschinentyp der Cloud SQL-Instanz in Ihrer Umgebung.

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

gcloud composer environments update ENVIRONMENT_NAME \
  --location LOCATION \
  --cloud-sql-machine-type SQL_MACHINE_TYPE

Ersetzen Sie:

  • ENVIRONMENT_NAME durch den Namen der Umgebung.
  • LOCATION durch die Region, in der sich die Umgebung befindet.
  • SQL_MACHINE_TYPE durch den Maschinentyp der Cloud SQL-Instanz.

Beispiel:

gcloud composer environments update example-environment \
  --location us-central1 \
  --cloud-sql-machine-type db-n1-standard-2

API

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

  2. In dieser Anfrage gilt:

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

    2. Geben Sie im Anfragetext den Maschinentyp für die Cloud SQL-Instanz an.

{
  "config": {
    "databaseConfig": {
      "machineType": "SQL_MACHINE_TYPE"
    }
  }
}

Ersetzen Sie:

Beispiel:

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

{
  "config": {
    "databaseConfig": {
      "machineType": "db-n1-standard-2"
    }
  }
}

Terraform

Das Feld machine_type im Block database_config gibt den Maschinentyp für die Cloud SQL-Instanz an.

resource "google_composer_environment" "example" {

  config {
    database_config {
      machine_type = "SQL_MACHINE_TYPE"
    }
  }
}

Ersetzen Sie:

Beispiel:

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

  config {
    database_config {
      machine_type = "db-n1-standard-2"
    }
}

Maschinentyp des Webservers anpassen

Sie können den Maschinentyp für den Airflow-Webserver Ihrer Umgebung ändern.

Console

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

    Zur Seite „Umgebungen“

  2. Wählen Sie Ihre Umgebung aus.

  3. Rufen Sie den Tab Umgebungskonfiguration auf.

  4. Klicken Sie im Element Ressourcen > Webserver-Maschinentyp auf Bearbeiten.

  5. Wählen Sie im Dialogfeld Webserverkonfiguration in der Drop-down-Liste Webservermaschinentyp den Maschinentyp für den Airflow-Webserver aus.

  6. Klicken Sie auf Speichern.

gcloud

Mit den Argumenten --web-server-machine-type wird der Maschinentyp der Airflow-Webserverinstanz in Ihrer Umgebung gesteuert.

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

gcloud composer environments update ENVIRONMENT_NAME \
  --location LOCATION \
  --web-server-machine-type WS_MACHINE_TYPE

Ersetzen Sie:

  • ENVIRONMENT_NAME durch den Namen der Umgebung.
  • LOCATION durch die Region, in der sich die Umgebung befindet.
  • WS_MACHINE_TYPE durch den Maschinentyp für die Airflow-Webserverinstanz.

Beispiel:

gcloud composer environments update example-environment \
  --location us-central1 \
  --web-server-machine-type composer-n1-webserver-2

API

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

  2. In dieser Anfrage gilt:

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

    2. Geben Sie im Anfragetext den Maschinentyp für den Webserver an.

{
  "config": {
    "webServerConfig": {
      "machineType": "WS_MACHINE_TYPE"
    }
  }
}

Ersetzen Sie:

Beispiel:

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

{
  "config": {
    "webServerConfig": {
      "machineType": "composer-n1-webserver-2"
    }
  }
}

Terraform

Das Feld machine_type im Block web_server_config gibt den Maschinentyp für die Airflow-Webserverinstanz an.

resource "google_composer_environment" "example" {

  config {
    web_server_config {
      machine_type = "WS_MACHINE_TYPE"
    }
  }
}

Ersetzen Sie:

Beispiel:

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

  config {
    web_server_config {
      machine_type = "composer-n1-webserver-2"
    }
}

Nächste Schritte