Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3
Auf dieser Seite wird beschrieben, wie Sie Ihre Umgebung auf eine neue Cloud Composer- oder Airflow-Version aktualisieren.
Upgradevorgänge
Sie können ein Upgrade für die Cloud Composer-Version, die Airflow-Version oder beide gleichzeitig.
Wenn Sie die Version von Airflow oder Cloud Composer ändern, die in Ihrer Umgebung verwendet wird, gilt Folgendes:
Cloud Composer stellt die Komponenten der Umgebung noch einmal bereit mit neuen Versionen von Cloud Composer-Images
Cloud Composer wendet Airflow-Konfigurationsänderungen wie benutzerdefinierte PyPI-Pakete oder Überschreibungen von Airflow-Konfigurationsoptionen an, sofern diese vor dem Upgrade in Ihrer Umgebung vorhanden waren.
Cloud Composer aktualisiert die Airflow-
airflow_db
-Verbindung, damit sie auf die neue Cloud SQL-Datenbank verweist.
Durch das Upgrade ändert sich nichts daran, wie Sie die Verbindung zu den Ressourcen in Ihrem Umgebung, z. B. die URL des Buckets Ihrer Umgebung oder Airflow-Web Server.
Einschränkungen von Upgradevorgängen
Für Upgrades gelten die folgenden Einschränkungen:
- Ein Downgrade auf eine frühere Cloud Composer- oder Airflow-Version ist nicht möglich.
In der Google Cloud Console können Sie nur auf die neueste unterstützte Versionen von Cloud Composer.
Mit der Google Cloud CLI, der API oder Terraform können Sie eine Umgebung auf die neuesten unterstützten Versionen, drei vorherige Versionen von Cloud Composer, die letzte Patchversion der vorherigen Minorversion und auf Versionen mit erweiterter Upgradezeitachse aktualisieren. Es ist nicht ein Upgrade auf andere Cloud Composer-Versionen möglich ist, auch wenn werden weiterhin unterstützt und können verwendet werden, um eine neue Umgebung zu erstellen.
Die Version, auf die Sie upgraden, muss die aktuelle Python-Version Ihrer Umgebung unterstützen.
Die Kontingentlimits der Compute Engine API können Upgrades verhindern. Gehen Sie in der Google Cloud Console zur Seite IAM und Verwaltung. > Seite Kontingente und Systemlimits und prüfen Sie, ob das Das Compute Engine API-Kontingent für die CPU wird nicht überschritten. Wenn der Parameter Kontingentgrenzwert wird bald erreicht, Fordern Sie vor dem Beantragen einer Kontingenterweiterung an mit dem Upgrade-Vorgang fortfahren.
Es ist nicht möglich, ein direktes Upgrade auf eine andere Hauptversion von Cloud Composer oder Airflow durchzuführen. Manuelle Übertragung DAGs und Konfiguration zwischen Umgebungen. Weitere Informationen finden Sie unter:
Sie können Ihre Umgebung nicht aktualisieren, wenn die Airflow-Datenbank mehr als 16 GB Daten. Während eines Upgrades wird eine Warnung angezeigt, wird angezeigt, wenn die Airflow-Datenbankgröße mehr als 16 GB ist. Führen Sie in diesem Fall die Datenbankwartung durch, um die Datenbankgröße zu reduzieren.
Wenn Sie den XCom-Mechanismus zum Übertragen von Dateien verwenden, achten Sie darauf, dass Sie ihn gemäß den Airflow-Richtlinien verwenden. Die Übertragung großer Dateien oder einer großen Anzahl von Dateien mit XCom wirkt sich auf Die Leistung der Airflow-Datenbank und kann zu Fehlern beim Laden führen oder ein Upgrade Ihrer Umgebung durchführen. Für die Übertragung großer Datenmengen können Sie Alternativen wie Cloud Storage verwenden.
Hinweise
Wir empfehlen, einen neuen Snapshot des um die Umgebung neu erstellen zu können, falls das erforderlich ist.
Ihr Konto muss eine Rolle haben, die ein Umgebungsupgrade auslösen kann Geschäftsabläufe. Darüber hinaus muss das Dienstkonto der Umgebung eine Rolle, die über die erforderlichen Berechtigungen zum Ausführen von Upgradevorgängen verfügt. Weitere Informationen finden Sie unter Zugriffssteuerung.
Prüfen, ob die Umgebung auf dem neuesten Stand ist
Cloud Composer zeigt Warnungen an, wenn das Image Ihrer Umgebung das Ende der vollständigen Unterstützung erreicht hat. Sie können diese Warnungen verwenden, um Ihre Umgebung immer unterstützt zu halten.
Cloud Composer verfolgt die Cloud Composer-Image-Version auf der Ihre Umgebung basiert. Wenn sich das Enddatum des Supports nähert, wird in der Liste der Umgebungen und auf der Seite Umgebungsdetails eine Warnung angezeigt.
So prüfen Sie, ob Ihre Umgebung auf dem neuesten Stand ist:
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.
Rufen Sie den Tab Umgebungskonfiguration auf.
Im Feld Image-Version wird eine der folgenden Meldungen angezeigt:
Aktuelle verfügbare Version Ihr Umgebungs-Image wird vollständig unterstützt.
Neue Version verfügbar Ihr Umgebungs-Image wird vollständig unterstützt und Sie können ein Upgrade auf eine neuere Version ausführen.
Unterstützung für diese Image-Version endet in... Ihr Umgebungs-Image nähert sich dem Ende des vollständigen Supportzeitraums.
Diese Version wird ab dem nicht mehr unterstützt Ihre Umgebung hat den vollständigen Supportzeitraum überschritten.
gcloud
Diese Funktion ist nicht über die Google Cloud CLI verfügbar. Sie können stattdessen Verfügbare Upgrades aufrufen auswählen. Dort werden neue Versionen angezeigt, die verfügbar sind.
API
Diese Funktion ist nicht über die API verfügbar. Sie können stattdessen Verfügbare Upgrades aufrufen auswählen. Dort werden neue Versionen angezeigt, die verfügbar sind.
Verfügbare Upgrades ansehen
So lassen Sie eine Liste der Cloud Composer-Versionen anzeigen, auf die Sie ein Upgrade durchführen können:
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.
Rufen Sie den Tab Umgebungskonfiguration auf und klicken Sie auf Upgrade für Image-Version durchführen.
Klicken Sie auf den Cloud Composer, um die Liste der verfügbaren Versionen aufzurufen. Drop-down-Menü Image-Version.
gcloud
gcloud composer environments list-upgrades \
ENVIRONMENT_NAME \
--location LOCATION
Ersetzen Sie:
ENVIRONMENT_NAME
durch den Namen der Umgebung.LOCATION
durch die Region, in der sich die Umgebung befindet.
Beispiel:
gcloud composer environments list-upgrades example-environment \
--location us-central1
API
Sie können sich die verfügbaren Versionen für einen Standort ansehen. Erstellen Sie dazu eine
imageVersions.list
API-Anfrage.
Beispiel:
// GET https://composer.googleapis.com/v1/projects/example-project/
// locations/us-central1/imageVersions
Vor dem Upgrade auf PyPI-Paketkonflikte prüfen
Sie können prüfen, ob in Ihrer Umgebung installierte PyPI-Pakete mit vorinstallierten Paketen im neuen Cloud Composer-Image in Konflikt stehen.
Eine erfolgreiche Prüfung bedeutet, dass keine Konflikte bei PyPI-Paketabhängigkeiten zwischen der aktuellen und der angegebenen Version bestehen. Eine ist möglicherweise aus anderen Gründen trotzdem nicht erfolgreich.
Console
So führen Sie eine Upgradeprüfung für Ihre Umgebung aus:
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.
Wechseln Sie zum Tab Umgebungskonfiguration, suchen Sie den Eintrag Image-Version und klicken Sie auf Upgrade.
Wählen Sie im Dialogfeld Umgebungsversionsupgrade in der Drop-down-Liste Neue Version eine Cloud Composer-Version aus, auf die Sie upgraden möchten.
Klicken Sie im Abschnitt Kompatibilität von PyPI-Paketen auf Nach Konflikten suchen.
Warten Sie, bis die Prüfung abgeschlossen ist. Wenn PyPI-Paketabhängigkeitskonflikte auftreten, enthalten die angezeigten Fehlermeldungen Details zu in Konflikt stehenden Paketen und Paketversionen.
gcloud
Führen Sie den Befehl
environments check-upgrade
mit dem Befehl
Cloud Composer-Image-Version.
auf das Sie umstellen möchten.
gcloud composer environments check-upgrade \
ENVIRONMENT_NAME \
--location LOCATION \
--image-version VERSION
Ersetzen Sie:
ENVIRONMENT_NAME
durch den Namen der Umgebung.LOCATION
durch die Region, in der sich die Umgebung befindet.VERSION
mit die neue Cloud Composer-Image-Version auf die Sie umstellen möchten, in dercomposer-a.b.c-airflow-x.y.z
Format. Sie können auch alle Versionsaliate verwenden.
Beispiel:
gcloud composer environments check-upgrade example-environment \
--location us-central1 \
--image-version composer-1.20.12-airflow-1.10.15
Beispielausgabe:
Waiting for [projects/example-project/locations/us-central1/environments/
example-environment] to be checked for PyPI package conflicts when upgrading
to composer-1.20.12-airflow-1.10.15. Operation [projects/example-project/locations/
us-central1/operations/04d0e8b2-...]...done.
...
Response:
'@type': type.googleapis.com/
google.cloud.orchestration.airflow.service.v1.CheckUpgradeResponse
buildLogUri: https://console.cloud.google.com/cloud-build/builds/79738aa7-...
containsPypiModulesConflict: CONFLICT
pypiConflictBuildLogExtract: |-
The Cloud Build image build failed: Build failed; check build logs for
details. Full log can be found at https://console.cloud.google.com/
cloud-build/builds/79738aa7-...
Error details: tensorboard 2.2.2 has requirement
setuptools>=41.0.0, but you have setuptools 40.3.0.
Alternativ können Sie eine Upgradeprüfung asynchron ausführen. Verwenden Sie das Argument --async
, um einen asynchronen Aufruf auszuführen, und prüfen Sie dann das Ergebnis mit dem Befehl gcloud composer operations describe
.
API
Erstellen Sie eine environments.checkUpgrade
-API-Anfrage.
Geben Sie im Feld imageVersion
die Image-Version an:
{
"imageVersion": "VERSION"
}
Ersetzen Sie VERSION
durch die neue Version, auf die Sie das Upgrade ausführen möchten, im composer-a.b.c-airflow-x.y.z
-Format.
Umgebung upgraden
So führen Sie ein Upgrade Ihrer Umgebung durch: auf eine neuere Version von Cloud Composer oder Airflow:
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.
Rufen Sie den Tab Umgebungskonfiguration auf.
Suchen Sie das Element Image-Version und klicken Sie auf Upgrade.
Wählen Sie im Drop-down-Menü Image-Version die Cloud Composer-Version aus, auf die Sie ein Upgrade ausführen möchten.
Klicken Sie auf Upgrade.
gcloud
gcloud composer environments update \
ENVIRONMENT_NAME \
--location LOCATION \
--image-version VERSION
Ersetzen Sie:
ENVIRONMENT_NAME
durch den Namen der Umgebung.LOCATION
durch die Region, in der sich die Umgebung befindet.VERSION
durch die neue Cloud Composer-Image-Version, auf die Sie ein Upgrade durchführen möchten, imcomposer-a.b.c-airflow-x.y.z
-Format. Sie können auch alle Versionsaliasse.
Beispiel:
gcloud composer environments update
example-environment \
--location us-central1 \
--image-version composer-1.20.12-airflow-1.10.15
API
Erstellen Sie eine API-Anfrage
environments.patch
.In dieser Anfrage:
Geben Sie im Parameter
updateMask
config.softwareConfig.imageVersion
-Maske.Geben Sie im Anfragetext im Feld
imageVersion
eine neue auf die Sie upgraden möchten.
Beispiel:
// PATCH https://composer.googleapis.com/v1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.softwareConfig.imageVersion
{
"config": {
"softwareConfig": {
"imageVersion": "composer-1.20.12-airflow-1.10.15"
}
}
}
Terraform
Das Feld image_version
im Block config.software_config
steuert das Cloud Composer-Image Ihrer Umgebung. Geben Sie in diesem Feld ein neues Cloud Composer-Image an.
resource "google_composer_environment" "example" {
provider = google-beta
name = "ENVIRONMENT_NAME"
region = "LOCATION"
config {
software_config {
image_version = "VERSION"
}
}
}
Ersetzen Sie:
ENVIRONMENT_NAME
durch den Namen der Umgebung.LOCATION
durch die Region, in der sich die Umgebung befindet. die neue Cloud Composer-Image-Version auf die Sie umstellen möchten, in dercomposer-a.b.c-airflow-x.y.z
Format. Sie können auch alle Versionsaliate verwenden.
Beispiel:
resource "google_composer_environment" "example" {
provider = google-beta
name = "example-environment"
region = "us-central1"
config {
software_config {
image_version = "composer-1.20.12-airflow-1.10.15"
}
}
}