Cloud Composer 3 | Cloud Composer 2 | Cloud Composer 1
Auf dieser Seite wird beschrieben, 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 können Sie jeweils nur einen Aktualisierungsvorgang starten. Sie müssen warten, bis ein Aktualisierungsvorgang abgeschlossen ist, bevor Sie einen weiteren Umgebungsvorgang starten.
Auswirkungen von Aktualisierungen auf laufende Airflow-Aufgaben
Wenn Sie einen Aktualisierungsvorgang ausführen, müssen Airflow-Planer und ‑Worker in Ihrer Umgebung möglicherweise neu gestartet werden. In diesem Fall werden alle derzeit ausgeführten Aufgaben beendet. Nach Abschluss des Aktualisierungsvorgangs plant Airflow diese Aufgaben für einen Wiederholungsversuch ein, je nachdem, wie Sie Wiederholungsversuche für Ihre DAGs konfigurieren.
Die folgenden Änderungen führen zum Beenden von Airflow-Aufgaben:
- Upgrade Ihrer 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 Speicher von Airflow-Workern ändern.
Die maximale Anzahl von Airflow-Workern reduzieren, wenn der neue Wert niedriger als die Anzahl der derzeit ausgeführten Worker ist. Beispiel: In einer Umgebung werden derzeit drei Worker ausgeführt und die maximale Anzahl wird auf zwei reduziert.
Die folgenden Änderungen führen nicht zum Beenden von Airflow-Aufgaben:
- DAG erstellen, aktualisieren oder löschen (kein Aktualisierungsvorgang).
- DAGs pausieren oder die Pausierung aufheben (kein Aktualisierungsvorgang).
- Airflow-Variablen ändern (kein Aktualisierungsvorgang).
- Airflow-Verbindungen ändern (kein Aktualisierungsvorgang).
- Einbindung in Knowledge Catalog-Datenherkunft aktivieren oder deaktivieren.
- Umgebungsgröße ändern.
- Anzahl der Planer ändern.
- CPU, Arbeitsspeicher oder Speicher von Airflow-Planern ändern.
- Anzahl der Trigger ändern.
- CPU, Arbeitsspeicher oder Speicher von Airflow-Triggern ändern.
- CPU, Arbeitsspeicher oder Speicher von Airflow-Webservern ändern.
- Die Mindestanzahl von Workern erhöhen oder verringern.
- Die maximale Anzahl von Airflow-Workern reduzieren. 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 vor terraform apply den Befehl terraform plan aus, um zu prüfen, ob Terraform eine neue Umgebung erstellt, anstatt sie zu aktualisieren.
Hinweis
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 haben, die über ausreichende Berechtigungen zum Ausführen von Aktualisierungsvorgängen verfügt.
Der Befehl
gcloud composer environments updatewird beendet, wenn der Vorgang abgeschlossen ist. Mit dem Flag--asynckönnen Sie vermeiden, dass Sie warten müssen, bis der Vorgang abgeschlossen ist.
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
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_NAMEdurch den Namen der Umgebung.LOCATIONdurch die Region, in der sich die Umgebung befindet.
API
Erstellen Sie eine environments.get-API-Anfrage.
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_NAMEdurch den Namen der Ressource Ihrer Umgebung.
Änderungen durch Aktualisierung 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.
Bei einem Aktualisierungsvorgang werden beispielsweise zusätzliche PyPI-Module installiert oder entfernt, eine neue Airflow- oder Cloud Composer-Umgebungsvariable neu definiert oder definiert oder einige Airflow-bezogene Parameter geändert.
Eine solche Situation kann auftreten, 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 empfiehlt es sich, den Vorgang zu wiederholen.
Dauer von Aktualisierungs- oder Upgradevorgängen
Die Dauer von Aktualisierungs- und Upgradevorgängen wird durch die folgenden Faktoren beeinflusst:
Bei den meisten Aktualisierungs- oder Upgradevorgängen müssen Airflow-Komponenten wie Airflow-Planer, ‑Worker und ‑Webserver neu gestartet werden. Nach dem Neustart einer Komponente muss sie initialisiert werden. Während der Initialisierung laden Airflow-Planer und ‑Worker die Inhalte der Ordner
/dagsund/pluginsaus dem Bucket der Umgebung herunter. Der Vorgang zum Synchronisieren von Dateien mit Airflow-Planern und ‑Workern erfolgt nicht sofort und hängt von der Gesamtgröße und Anzahl aller Objekte in diesen Ordnern ab.Wir empfehlen, nur DAG- und Plug-in-Dateien in den Ordnern
/dagsbzw./pluginszu speichern und alle anderen Dateien zu entfernen. Zu viele Daten in den Ordnern/dagsund/pluginskönnen die Initialisierung von Airflow-Komponenten verlangsamen und in bestimmten Fällen unmöglich machen.Wir empfehlen, weniger als 30 MB Daten in den Ordnern
/dagsund/pluginszu speichern und die Größe von 100 MB auf keinen Fall zu überschreiten. Weitere Informationen finden Sie unter Umgang mit einer großen Anzahl von DAGs und Plug-insDie Größe der Airflow-Datenbank kann die Dauer von Upgradevorgängen erheblich verlängern. Wir empfehlen, die Größe der Airflow-Datenbank Ihrer Umgebung zu verwalten, indem Sie eine Aufbewahrungsrichtlinie für die Datenbank konfigurieren.