Cloud Composer 3 | Cloud Composer 2 | Cloud Composer 1
Auf dieser Seite wird erläutert, wie eine Umgebung aktualisiert werden kann.
Aktualisierungsvorgänge
Wenn Sie Parameter Ihrer Umgebung ändern, z. B. neue Skalierungs- und Leistungsparameter angeben oder benutzerdefinierte PyPI-Pakete installieren, wird Ihre Umgebung aktualisiert.
Nach Abschluss dieses Vorgangs sind die Änderungen in Ihrer Umgebung verfügbar.
Für eine einzelne Cloud Composer-Umgebung kann jeweils nur ein Aktualisierungsvorgang gestartet werden. Sie müssen warten, bis ein Aktualisierungsvorgang abgeschlossen ist, bevor Sie einen weiteren Umgebungsvorgang starten.
Auswirkungen von Updates auf laufende Airflow-Aufgaben
Wenn Sie einen Updatevorgang ausführen, müssen die Airflow-Planer und ‑Worker in Ihrer Umgebung möglicherweise neu gestartet werden. In diesem Fall werden alle derzeit laufenden Aufgaben beendet. Nach Abschluss des Aktualisierungsvorgangs plant Airflow je nach Konfiguration der Wiederholungen für Ihre DAGs einen erneuten Versuch für diese Aufgaben.
Die folgenden Änderungen führen zur Beendigung von Airflow-Aufgaben:
- Upgrade der Umgebung auf eine neue Version
- Benutzerdefinierte PyPI-Pakete hinzufügen, ändern oder löschen
- Cloud Composer-Umgebungsvariablen ändern
- Überschreibungen von Airflow-Konfigurationsoptionen hinzufügen oder entfernen oder ihre Werte ändern
- CPU, Arbeitsspeicher oder Speicherplatz von Airflow-Workern ändern
- Die maximale Anzahl von Airflow-Workern wird reduziert, wenn der neue Wert niedriger als die Anzahl der aktuell ausgeführten Worker ist. Beispiel: In einer Umgebung werden derzeit drei Worker ausgeführt und die maximale Anzahl wird auf zwei reduziert.
- Ausfallsicherheitsmodus der Umgebung ändern
Die folgenden Änderungen führen nicht zur Beendigung von Airflow-Aufgaben:
- Erstellen, Aktualisieren oder Löschen einer DAG (kein Aktualisierungsvorgang)
- DAGs anhalten oder pausieren (kein Aktualisierungsvorgang)
- Ändern von Airflow-Variablen (kein Aktualisierungsvorgang)
- Airflow-Verbindungen ändern (kein Aktualisierungsvorgang)
- Aktivieren oder Deaktivieren der Einbindung von Dataplex Data Lineage
- Größe der Umgebung ändern
- Anzahl der Planer ändern
- CPU, Arbeitsspeicher oder Speicherplatz der Airflow-Planer ändern
- Anzahl der Trigger ändern
- CPU, Arbeitsspeicher oder Speicherplatz von Airflow-Triggern ändern
- CPU, Arbeitsspeicher oder Speicher des Airflow-Webservers ändern
- Mindestanzahl der Worker erhöhen oder verringern
- Reduzieren Sie die maximale Anzahl von Airflow-Workern. Beispiel: In einer Umgebung werden derzeit zwei Worker ausgeführt und die maximale Anzahl wird auf drei reduziert.
- Wartungsfenster ändern
- Einstellungen für geplante Snapshots ändern
- Umgebungslabels ändern
Mit Terraform aktualisieren
Führen Sie terraform plan
vor terraform apply
aus, um zu prüfen, ob Terraform eine neue Umgebung erstellt, anstatt sie zu aktualisieren.
Hinweise
Prüfen Sie, ob Ihr Konto, das Dienstkonto Ihrer Umgebung und das Cloud Composer-Dienst-Agent-Konto in Ihrem Projekt die erforderlichen Berechtigungen haben:
Ihr Konto muss eine Rolle haben, die Umgebungsaktualisierungsvorgänge auslösen kann.
Das Dienstkonto Ihrer Umgebung muss eine Rolle mit ausreichenden Berechtigungen zum Ausführen von Aktualisierungsvorgängen haben.
Der Befehl
gcloud composer environments update
wird beendet, wenn der Vorgang abgeschlossen ist. Mit dem Flag--async
können Sie vermeiden, dass Sie auf den Abschluss des Vorgangs warten müssen.
Umgebungen aktualisieren
Weitere Informationen zum Aktualisieren Ihrer Umgebung finden Sie auf anderen Dokumentationsseiten zu bestimmten Aktualisierungsvorgängen. Beispiel:
- Airflow-Konfigurationsoptionen überschreiben
- Umgebungsvariablen festlegen
- Python-Abhängigkeiten installieren
- Umgebungen skalieren
- Autorisierte Netzwerke konfigurieren
Umgebungsdetails ansehen
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.
gcloud
Führen Sie folgenden Befehl gcloud
aus:
gcloud composer environments describe ENVIRONMENT_NAME \
--location LOCATION
Ersetzen Sie:
ENVIRONMENT_NAME
durch den Namen der Umgebung.LOCATION
durch die Region, in der sich die Umgebung befindet.
API
Erstellen Sie eine API-Anfrage environments.get
.
Beispiel:
GET https://composer.googleapis.com/v1/projects/example-project/
locations/us-central1/environments/example-environment
Terraform
Führen Sie den Befehl terraform state show
für die Ressource Ihrer Umgebung aus.
Der Name der Terraform-Ressource Ihrer Umgebung kann sich vom Namen Ihrer Umgebung unterscheiden.
terraform state show google_composer_environment.RESOURCE_NAME
Ersetzen Sie:
RESOURCE_NAME
durch den Namen der Ressource Ihrer Umgebung.
Änderungen durch Updates rückgängig machen
In seltenen Fällen kann ein Aktualisierungsvorgang unterbrochen werden (z. B. aufgrund eines Zeitlimits) und die angeforderten Änderungen werden möglicherweise nicht in allen Umgebungskomponenten (z. B. dem Airflow-Webserver) rückgängig gemacht.
Ein Update kann beispielsweise das Installieren oder Entfernen zusätzlicher PyPI-Module, das Neudefinieren oder Definieren einer neuen Airflow- oder Cloud Composer-Umgebungsvariablen oder das Ändern einiger Airflow-bezogener Parameter umfassen.
Dies kann passieren, wenn ein Aktualisierungsvorgang ausgelöst wird, während andere Vorgänge ausgeführt werden, z. B. die automatische Skalierung des Cloud Composer-Clusters oder ein Wartungsvorgang.
In diesem Fall empfehlen wir, den Vorgang zu wiederholen.
Dauer von Aktualisierungs- oder Upgrade-Vorgängen
Die meisten Aktualisierungs- oder Upgradevorgänge erfordern einen Neustart von Airflow-Komponenten wie Airflow-Planern, ‑Workern und ‑Webservern.
Nach dem Neustart einer Komponente muss sie initialisiert werden. Während der Initialisierung laden Airflow-Planer und -Worker den Inhalt der Ordner /dags
und /plugins
aus dem Bucket der Umgebung herunter. Die Synchronisierung von Dateien mit Airflow-Planern und ‑Workern erfolgt nicht sofort und hängt von der Gesamtgröße und der Anzahl aller Objekte in diesen Ordnern ab.
Wir empfehlen, nur DAG- und Plug-in-Dateien in den Ordnern /dags
und /plugins
zu speichern und alle anderen Dateien zu entfernen. Zu viele Daten in den Ordnern /dags
und /plugins
können die Initialisierung von Airflow-Komponenten verlangsamen und in bestimmten Fällen sogar verhindern.
Wir empfehlen, in den Ordnern /dags
und /plugins
weniger als 30 MB an Daten zu speichern und die Datengröße auf keinen Fall auf 100 MB zu erhöhen.
Weitere Informationen finden Sie unter:
Upgrade für den Maschinentyp für GKE-Knoten durchführen
Sie können den Maschinentyp für den GKE-Cluster Ihrer Umgebung manuell aktualisieren, indem Sie den vorhandenen default-pool
löschen und einen neuen default-pool
mit dem gewünschten Maschinentyp erstellen.
Wir empfehlen Ihnen, beim Erstellen einer Umgebung einen geeigneten Maschinentyp für die Art von Computing anzugeben, die in Ihrer Cloud Composer-Umgebung ausgeführt wird.
Wenn Sie Jobs ausführen, die ressourcenintensive Berechnungen ausführen, sollten Sie GKE-Operatoren verwenden.
Nach einem Upgrade ist der vorherige Maschinentyp weiterhin in den Details Ihrer Umgebung aufgeführt. Auf der Seite „Umgebungsdetails“ wird beispielsweise nicht der neue Maschinentyp angezeigt.
Console
So aktualisieren Sie den Maschinentyp:
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.
So rufen Sie Informationen zum Standardknotenpool ab:
Rufen Sie den Tab Umgebungskonfiguration auf.
Klicken Sie auf den Link Clusterdetails aufrufen.
Klicken Sie auf der Seite Cluster im Abschnitt Knoten auf default-pool.
Notieren Sie sich auf der Seite „Knotenpooldetails“ alle Informationen zu default-pool. Sie verwenden diese Informationen, um einen neuen Standardknotenpool für Ihre Umgebung zu erstellen.
So löschen Sie den default-pool:
Klicken Sie auf der Seite Knotenpooldetails auf den Zurückpfeil, um zur Seite Cluster für Ihre Umgebung zurückzukehren.
Klicken Sie im Abschnitt Knotenpools auf das Papierkorbsymbol für default-pool. Klicken Sie dann auf Löschen, um den Vorgang zu bestätigen.
So erstellen Sie den neuen default-pool:
Klicken Sie auf der Seite Cluster auf Knotenpool hinzufügen.
Geben Sie als Name
default-pool
ein. Sie müssen den Namendefault-pool
verwenden, damit Workflows in Ihrer Umgebung in diesem Pool ausgeführt werden können.Geben Sie die Einstellungen für Größe und Knoten ein.
(Nur für Compute Engine-Standarddienstkonten) Wählen Sie die Option Uneingeschränkten Zugriff auf alle Cloud APIs zulassen als Zugriffsbereich aus.
Klicken Sie auf Speichern.
Wenn Sie feststellen, dass die Arbeitslasten ungleich verteilt sind, skalieren Sie das Deployment von Airflow-Worker auf null und dann wieder hoch.