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.

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 Zahl entspricht der Anzahl der Airflow-Worker in Ihrer Umgebung. Auf Ihren Umgebungsknoten werden nicht nur Airflow-Worker ausgeführt, sondern auch Airflow-Planer und andere Umgebungskomponenten.

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 unter Worker-Knoten > Knotenanzahl auf Bearbeiten.

  5. Geben Sie im Dialogfeld Konfiguration der Worker-Knoten im Feld Anzahl der Knoten 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 \
    --node-count NODE_COUNT

Ersetzen Sie:

  • ENVIRONMENT_NAME durch den Namen der Umgebung.
  • LOCATION durch die Compute Engine-Region, in der sich die Umgebung befindet.
  • NODE_COUNT durch die Anzahl der Knoten. Die Mindestanzahl an Knoten beträgt 3.

Beispiel:

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

API

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

  2. In dieser Anfrage:

    1. Geben Sie im Parameter updateMask die Maske config.nodeCount 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 an Knoten beträgt 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 Feld node_count im Block node_config 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

Ihre Umgebung kann mehrere Airflow-Planer gleichzeitig ausführen. Verwenden Sie mehrere Planer, um die Last auf mehrere Planerinstanzen zu 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.

Eine Erhöhung der Anzahl von Planern verbessert nicht immer die Airflow-Leistung. Wenn Sie beispielsweise nur einen Planer haben, ist eine bessere Leistung möglich als zwei. Dies kann passieren, wenn der zusätzliche Planer nicht verwendet wird und dadurch Ressourcen Ihrer Umgebung verbraucht, ohne zu dessen Gesamtleistung beizutragen. 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 von 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 die Umgebung jederzeit auf die ursprüngliche Anzahl der Planer herunterskalieren.

Weitere Informationen zum Konfigurieren 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 unter Ressourcen > Anzahl der Planer auf Bearbeiten.

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

  6. Klicken Sie auf Speichern.

gcloud

Führen Sie folgenden Befehl gcloud composer aus:

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

Ersetzen Sie:

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

Beispiel:

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

API

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

  2. In dieser Anfrage:

    1. Geben Sie im Parameter updateMask die Maske config.softwareConfig.schedulerCount 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 wird.

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 unter 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 Argumente --cloud-sql-machine-type steuern den Maschinentyp der Cloud SQL-Instanz in Ihrer Umgebung.

Führen Sie folgenden Befehl gcloud composer aus:

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

Ersetzen Sie:

Beispiel:

gcloud composer 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:

    1. Geben Sie im Parameter updateMask die Maske config.databaseConfig.machineType 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"
    }
}

Webserver-Maschinentyp 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 unter Ressourcen > Webservertyp auf Bearbeiten.

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

  6. Klicken Sie auf Speichern.

gcloud

Die --web-server-machine-type-Argumente steuern den Maschinentyp der Airflow-Webserverinstanz in Ihrer Umgebung.

Führen Sie folgenden Befehl gcloud composer aus:

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

Ersetzen Sie:

Beispiel:

gcloud composer 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:

    1. Geben Sie im Parameter updateMask die Maske config.webServerConfig.machineType 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