Auf dieser Seite werden die Cloud Composer-Versionsverwaltung und die Unterschiede zwischen den Haupt-Cloud Composer-Versionen beschrieben.
Hauptversionen von Cloud Composer
Cloud Composer hat die folgenden Hauptversionen:
- Cloud Composer 1. Bei der manuellen Umgebungsskalierung wird die Infrastruktur in Ihren Projekten und Netzwerken bereitgestellt.
- Cloud Composer 2. In dieser Version wird der Cluster der Umgebung automatisch skaliert, um den Ressourcenanforderungen gerecht zu werden.
- Cloud Composer 3. Diese Version bietet eine vereinfachte Netzwerkeinrichtung und blendet Infrastrukturkomponenten aus, darunter den Cluster der Umgebung und die Abhängigkeiten der Umgebung von anderen Diensten.
Cloud Composer-Versionen im Vergleich
In der folgenden Tabelle sind die wichtigsten Unterschiede zwischen Cloud Composer 1, Cloud Composer 2 und Cloud Composer 3 aufgeführt.
Funktion | Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3 |
---|---|---|---|
Image-Version | composer-1.b.c-airflow-x.y.z |
composer-2.b.c-airflow-x.y.z |
composer-3-airflow-x.y.z-build.t |
Airflow-Versionen | Airflow 1.10.* und Airflow 2 | Airflow 2 | Airflow 2 |
Python-Versionen | 3.8.12 | 3.11.8 (3.11.5 und 3.8.12 in früheren Versionen) | 3.11.8 |
Cluster der Umgebung | VPC-nativer oder routenbasierter Google Kubernetes Engine-Cluster im Standardmodus | VPC-nativer Google Kubernetes Engine-Cluster im Autopilot-Modus | Der Cluster der Umgebung wird nicht in Ihrem Projekt bereitgestellt. |
Horizontale Skalierung | Kann die Anzahl der Knoten im Cluster der Umgebung anpassen. Dadurch wird die Anzahl der Airflow-Worker geändert. Kann die Anzahl der Airflow-Planer anpassen. |
Automatische Skalierung der Anzahl der Airflow-Worker nach Bedarf. Kann Ober- und Untergrenzen für die Anzahl der Worker festlegen und ändern. Kann die Anzahl der Airflow-Planer und -Trigger anpassen |
Automatische Skalierung der Anzahl der Airflow-Worker nach Bedarf. Kann Ober- und Untergrenzen für die Anzahl der Worker festlegen und ändern. Kann die Anzahl der Airflow-Planer, -Trigger und -DAG-Prozessoren anpassen |
Vertikale Skalierung | Kann Maschinentypen für Clusterknoten, den Airflow-Webserver und die Airflow-Datenbank beim Erstellen einer Umgebung festlegen. Kann Maschinentypen für den Airflow-Webserver und die Airflow-Datenbank ändern. | Kann die Arbeitslastkonfiguration festlegen und ändern: CPU-, Arbeitsspeicher- und Speicherparameter für Airflow-Worker, -Planer, -Webserver und die Umgebungsgröße. | Kann die Arbeitslastkonfiguration festlegen und ändern: CPU-, Arbeitsspeicher- und Speicherparameter für Airflow-Worker, -Planer, -Webserver, -DAG-Prozessoren und die Umgebungsgröße. |
Preismodell | Cloud Composer 1-Preismodell | Cloud Composer 2-Preismodell | Cloud Composer 3-Preismodell |
Zugriffssteuerung | Cloud Composer 1-Rollen | Cloud Composer-Rollen. Verwendet die Identitätsföderation von Arbeitslasten für GKE und erfordert zusätzliche Berechtigungen für das Cloud Composer-Dienst-Agent-Konto. | Cloud Composer-Rollen. Verwendet die Identitätsföderation von Arbeitslasten für GKE. Es sind keine zusätzlichen Berechtigungen erforderlich. |
Zugriff über die Mitarbeiteridentitätsföderation | Nicht unterstützt | Unterstützt | Unterstützt |
Hochgradig ausfallsichere Umgebungen | Nicht unterstützt | Unterstützt | Noch nicht verfügbar |
Aufbewahrungsrichtlinie für Datenbanken | Nicht unterstützt | Noch nicht verfügbar | Unterstützt |
Privates IP-Netzwerk | VPC-Peerings | Private Service Connect | Vereinfachte Netzwerkeinrichtung. Kann in einer vorhandenen Umgebung zwischen öffentlicher und privater IP geändert werden. |
VPC Service Controls | Unterstützt | Unterstützt | Unterstützt |
Airflow-Executors | Celery Executor | Celery Executor | CeleryKubernetes-Executor |
Airflow-Trigger (zurückstellbare Operatoren) | Nicht unterstützt | Unterstützt | Unterstützt |
Benutzerdefiniertes Dienstkonto für KubernetesPodOperator | Unterstützt | Unterstützt | Nicht unterstützt |
CMEK | Unterstützt | Unterstützt | Unterstützt |
Webserverzugriffssteuerungen | Unterstützt | Unterstützt | Unterstützt |
Webserver neu starten | Unterstützt | Unterstützt | Unterstützt |
Webserver-Plug-ins | Unterstützt in Airflow 1-Umgebungen mit deaktivierter DAG-Serialisierung. | Unterstützt | Unterstützt, Plug-ins können bei Bedarf deaktiviert und aktiviert werden. |
Scheduler-Plug-ins | Nicht unterstützt | Unterstützt | Nicht unterstützt |
Benutzerdefinierte PyPI-Pakete für den Scheduler | Nicht unterstützt | Unterstützt | Nicht unterstützt |
Benutzerdefinierte Plug-ins installieren | Unterstützt | Unterstützt | Unterstützt |
Wartungsvorgänge | Alle Aufgaben können betroffen sein. | Aufgaben, die weniger als 55 Minuten dauern, sind davon nicht betroffen. | Aufgaben, die weniger als 24 Stunden dauern, sind davon nicht betroffen. |
Snapshots speichern | Unterstützt für Airflow 2.x- und 1.10.15-Versionen | Unterstützt | Unterstützt |
Snapshots werden geladen | Nicht unterstützt | Unterstützt | Unterstützt |
Geplante Snapshots | Nicht unterstützt | Unterstützt | Unterstützt |
Bucket der benutzerdefinierten Umgebung | Nicht unterstützt | Unterstützt | Unterstützt |
Airflow-Aufgabenlogs nur in Cloud Logging speichern | Nicht unterstützt | Unterstützt | Unterstützt |
Einbindung von Data Lineage | Nicht unterstützt | Unterstützt | Unterstützt |
Composer Local Development CLI-Tool | Nicht unterstützt | Unterstützt | Unterstützt |
Cloud Composer-Images
Zur Ausführung von Apache Airflow erstellt Cloud Composer Docker-Images, in denen Airflow-Versionen mit anderen gängigen Binärdateien und Python-Bibliotheken gebündelt werden.
Cloud Composer-Images enthalten Airflow-Änderungen, die spezifisch für Cloud Composer und für die vorgelagerte Airflow-Codebasis nicht geeignet sind. Jedes Cloud Composer-Image enthält vorinstallierte Pakete sowie Cloud Composer-spezifische Airflow-Änderungen.
Google veröffentlicht regelmäßig neue Cloud Composer-Images:
In Cloud Composer 3 enthalten Images neue Builds unterstützter Airflow-Versionen. Sie können eine Airflow-Version und einen Build auswählen, die Sie verwenden möchten. Ihre Umgebung erhält automatisch Cloud Composer-Verbesserungen.
In Cloud Composer 2 und Cloud Composer 1 enthalten Images Cloud Composer-Verbesserungen und neue Builds der unterstützten Airflow-Versionen. Wenn Sie die Verbesserungen von Cloud Composer nutzen möchten, müssen Sie Ihre Umgebung auf eine neuere Version von Cloud Composer aktualisieren.
Unterstützte und verworfene Versionen
Composer 3
Google unterstützt einen Airflow-Build für einen bestimmten Zeitraum nach der Veröffentlichung:
0 bis 12 Monate ab dem Releasedatum: Cloud Composer 3-Umgebungen, in denen dieser Airflow-Build ausgeführt wird, werden unterstützt.
12 Monate oder mehr ab dem Releasedatum: Cloud Composer 3-Umgebungen, in denen diese Versionen ausgeführt werden, werden nicht mehr unterstützt.
Nachdem ein Airflow-Build nicht mehr unterstützt wird, werden Umgebungen, in denen dieser Airflow-Build ausgeführt wird, ebenfalls nicht mehr unterstützt und vollständig vom Nutzer verwaltet.
Umgebungen funktionieren mit unterstützten und nicht unterstützten Airflow-Builds auf folgende Weise:
Sie können Umgebungen mit allen unterstützten Airflow-Builds erstellen.
Sie können weiterhin eine Umgebung mit einem Airflow-Build verwenden, der nicht mehr unterstützt wird. Die Umgebung funktioniert weiterhin, Sie können sie weiter verwenden und auf einen unterstützten Airflow-Build aktualisieren.
In einigen Fällen ist ein Upgrade auf eine neuere Airflow-Version oder einen neueren Build die einzige verfügbare Lösung für eine Sicherheitslücke.
Composer 2
Google unterstützt Cloud Composer 2-Versionen für einen bestimmten Zeitraum nach der Veröffentlichung der Version:
0 bis 12 Monate ab dem Releasedatum: Cloud Composer 2-Umgebungen, in denen diese Versionen ausgeführt werden, werden unterstützt.
12 Monate oder mehr ab dem Releasedatum: Cloud Composer 2-Umgebungen, in denen diese Versionen ausgeführt werden, werden nicht mehr unterstützt.
Sie können Cloud Composer-Versionen nach dem Datum verwenden, nach dem sie nicht mehr unterstützt werden. Wenn Ihre Umgebung beispielsweise auf einer Cloud Composer-Version basiert, deren Supportzeitraum abgelaufen ist, funktioniert die Umgebung weiterhin und Sie können sie weiterhin verwenden. In diesem Fall empfehlen wir ein Upgrade Ihrer Umgebung auf eine unterstützte Version.
Composer 1
Bis Ende März 2023 wurden neue Cloud Composer 1-Versionen veröffentlicht. Für alle veröffentlichten Cloud Composer 1-Versionen gilt dieselbe Richtlinie zur Einstellung von Versionen wie für Cloud Composer 2. Sie werden entsprechend unterstützt.
Unterstützung für Airflow-Versionen
Airflow folgt dem semantischen Schema zur Verwaltung von Softwareversionen. Jede Airflow-Version hat eine Hauptversion, eine Nebenversion und eine Patchversion.
Composer 3
In Cloud Composer 3 werden im Laufe der Zeit neue Airflow-Versionen und -Builds verfügbar.
Ihre Umgebung kann mit allen vorherigen Airflow-Versionen und -Builds funktionieren und erhält automatisch Updates für die Infrastrukturkomponenten. Jede Version und jeder Build wird wie unter Versionsverwerfung und ‑support beschrieben unterstützt. Sie können Ihre Airflow-Version auf eine neuere Version oder einen neueren Build aktualisieren.
Composer 2
Eine Liste der Airflow-Versionen, die in jeder Cloud Composer-Version unterstützt werden, finden Sie in der Liste der Cloud Composer-Versionen.
In jedem Release unterstützt Cloud Composer 2 zwei Nebenversionen von Airflow 2.
Cloud Composer 2.4.0 unterstützt beispielsweise Airflow 2.4.* und Airflow 2.5.*.
Cloud Composer unterstützt für jede Nebenversion von Airflow 2 eine Patchversion.
Beispiel: Für Airflow 2.4.* Cloud Composer unterstützt Airflow 2.4.3.
Wenn eine neue Patchversion von Airflow 2 in Cloud Composer verfügbar ist, sind für den entsprechenden Release zwei Patchversionen von Airflow 2 für dieselbe Nebenversion von Airflow verfügbar. Die vorherige Patchversion wird dann in einer der nächsten Releases entfernt.
Cloud Composer 2.3.4 unterstützt beispielsweise sowohl Airflow 2.5.1 als auch Airflow 2.5.3.
Cloud Composer kann zwischen den Releases von Cloud Composer einige Airflow-Patchversionen überspringen. Wenn es bei einer bestimmten Patchversion von Airflow Funktions-, Qualitäts- oder Leistungsprobleme gibt, kann Cloud Composer diese Version auch überspringen.
Airflow 2.1.3 wird beispielsweise übersprungen und Airflow 2.1.4 ist verfügbar.
Eine Cloud Composer-Version mit einer stabilen Airflow-Version kann Airflow-Updates enthalten, die von einer späteren Airflow-Version zurückportiert werden.
Composer 1
Die neueste in Cloud Composer 1 unterstützte Version von Airflow ist Airflow 2.4.3.
Nur Cloud Composer 1 unterstützt Airflow 1.10.15, die neueste veröffentlichte Version von Airflow 1.
Cloud Composer-Versionsschema
Composer 3
Das Versionsverwaltungsschema von Cloud Composer 3 erfasst Airflow-Versionen und -Builds:
composer-3-airflow-x.y.z-build.t
Wobei:
composer-3
ist die Hauptversion von Cloud Composer.airflow-x.y.z.build.t
ist die Airflow-Version und der Build. Jedes nächste Release derselben Airflow-Version in Cloud Composer 3 hat eine höhere Build-Nummer. Die Build-Nummer wird von Cloud Composer und nicht vom Airflow-Open-Source-Projekt definiert.
Composer 2
Das Image-Versionsverwaltung-Schema von Cloud Composer 2 erfasst Cloud Composer- und Airflow-Versionen:
composer-2.b.c-airflow-x.y.z
Wobei:
composer-2.b.c
gibt die Neben- und Patchversion der von Cloud Composer verwalteten Anpassungen in Cloud Composer 2 an. In der Regel entsprechen Nebenversionen von Cloud Composer erheblichen Änderungen der Funktionalität im Vergleich zur vorherigen Nebenversion, z. B. wenn sich die verfügbaren Airflow-Versionen ändern. Patchversionen werden in nachfolgenden Releases aktualisiert.airflow-x.y.z
ist die Airflow-Version. Sie gibt die Haupt-, Neben- und Patchversion von Airflow an, die in einem bestimmten Cloud Composer-Image verwendet wird.
Composer 1
Das Image-Versionsverwaltung-Schema von Cloud Composer 1 erfasst Cloud Composer- und Airflow-Versionen:
composer-1.b.c-airflow-x.y.z
Wobei:
composer-1.b.c
ist die Version der von Cloud Composer verwalteten Anpassungen.airflow-x.y.z
ist die Airflow-Release.
Versionsaliasse
Versionsaliasse funktionieren so:
Cloud Composer löst den Versionsalias beim Erstellen Ihrer Umgebung in das vollständige Format auf:
- Alle Versionsaliase werden in Cloud Composer 3 zu
composer-3-airflow-x.y.z-build.t
. - Alle Versionsaliase werden in Cloud Composer 2 und Cloud Composer 1 zu
composer-a.b.c-airflow-x.y.z
.
- Alle Versionsaliase werden in Cloud Composer 3 zu
In Cloud Composer 3 wird die Airflow-Version und der Build Ihrer Umgebung nicht automatisch aktualisiert, wenn Sie einen Versionsalias wie
composer-3-airflow-x.y
verwenden. Die Umgebung bleibt bei demselben Airflow-Build und derselben Airflow-Version, bis Sie sie upgraden. Die Umgebung erhält weiterhin automatische Infrastruktur-Upgrades.In Cloud Composer 2 und Cloud Composer 1 werden keine automatischen Upgrades für eine Umgebung bereitgestellt, wenn Sie einen Versionsalias wie
composer-a-airflow-x.y.z
verwenden. Die Umgebung bleibt in derselben Cloud Composer- und Airflow-Version, bis Sie ein Upgrade durchführen.
Cloud Composer 3-Versionsaliase
Cloud Composer 3 unterstützt die folgenden Versionsaliasse:
Alias | Airflow-Version |
---|---|
composer-3-airflow-2 |
Aktuelle Version und Build von Airflow 2 |
composer-3-airflow-x.y |
Neueste Version und Build von Airflow innerhalb der Haupt- und Nebenversionen x.y |
composer-3-airflow-x.y.z |
Letzter Build der angegebenen Airflow-Version |
Cloud Composer 2-Versionsaliase
Cloud Composer 2 unterstützt die folgenden Versionsaliasse:
Alias | Cloud Composer-Version | Airflow-Version |
---|---|---|
composer-2-airflow-2 |
Neueste Version von Cloud Composer 2 | Aktuelle Version von Airflow 2 |
composer-2-airflow-x.y |
Neueste Version von Cloud Composer 2 | Neueste Airflow-Version innerhalb der Haupt- und Nebenversionen x.y |
composer-2-airflow-x.y.z |
Neueste Version von Cloud Composer 2 | Angegebene Airflow-Version |
composer-2.b.c-airflow-x.y |
Angegebene Version von Cloud Composer 2 | Neueste Airflow-Version, die in den Haupt- und Nebenversionen von x.y verfügbar ist |
Cloud Composer 1-Versionsaliase
Cloud Composer 1 unterstützt die folgenden Versionsaliasse:
Alias | Cloud Composer-Version | Airflow-Version |
---|---|---|
composer-1-airflow-2 |
Neueste Version von Cloud Composer 1 | Aktuelle Version von Airflow 2 |
composer-1-airflow-1 |
Neueste Version von Cloud Composer 1 | Aktuelle Version von Airflow 1 |
composer-1-airflow-x.y |
Neueste Version von Cloud Composer 1 | Neueste Airflow-Version innerhalb der Haupt- und Nebenversionen x.y |
composer-1-airflow-x.y.z |
Neueste Version von Cloud Composer 1 | Angegebene Airflow-Version |
composer-1.b.c-airflow-x.y |
Angegebene Version von Cloud Composer 1 | Die neueste Version von Airflow, die in den Haupt- und Nebenversionen von x.y verfügbar ist. |
Die folgenden Versionsaliasse verweisen auf Cloud Composer 2. Sie können sie weiterhin verwenden, sollten aber auf Aliase für Ihre Version von Cloud Composer umstellen.
composer-latest-airflow-x.y
ist gleichcomposer-2-airflow-x.y
.composer-latest-airflow-x.y.z
ist gleichcomposer-2-airflow-x.y.z
.
Versionsargumente in der Google Cloud CLI
Wenn Sie eine Cloud Composer-Umgebung mit der Google Cloud CLI erstellen oder aktualisieren, können Sie Cloud Composer- und Airflow-Versionen angeben:
Composer 3
Das Argument
--image-version
gibt die Airflow-Version und den Build im Formatcomposer-3-airflow-x.y.z-build.t
an. Sie können Versionsaliasse verwenden, die von der Google Cloud CLI in das vollständige Format aufgelöst werden.--airflow-version
gibt die Airflow-Version in den folgenden Formaten an:Das Format
x.y.z
ist für den neuesten Build der angegebenen Airflow-Version. Dieses Format entspricht dem Versionsaliascomposer-3-airflow-x.y.z
.Das Format
x.y
bezieht sich auf den neuesten Build von Airflow, der in den Haupt- und Nebenversionenx.y
verfügbar ist. Dieses Format entspricht dem Versionsaliascomposer-3-airflow-x.y
.x.y.z-build.t
ist die angegebene Version und der Build von Airflow. Dieses Format entsprichtcomposer-3-airflow-x.y.z-build.t
.
Composer 2
Das Argument
--image-version
gibt Cloud Composer 2- und Airflow-Versionen an:- Im Format
composer-a.b.c-airflow-x.y.z
wird eine Umgebung mit den angegebenen Versionen von Cloud Composer und Airflow erstellt. - Versionsaliase werden zuerst in das Format
composer-a.b.c-airflow-x.y.z
aufgelöst. Anschließend wird eine Umgebung mit den angegebenen Versionen von Cloud Composer 2 und Airflow erstellt.
- Im Format
--airflow-version
gibt die Airflow-Version in den folgenden Formaten an:Das Format
x.y.z
gilt für die neueste Version von Cloud Composer 2 und die angegebene Version von Airflow. Dieses Format entspricht demcomposer-2-airflow-x.y.z
-Versionsalias.Das Format
x.y
ist für die neueste Version von Cloud Composer 2 und die neueste Version von Airflow, die in den Haupt- und Nebenversionen vonx.y
verfügbar ist. Dieses Format entspricht dem Versionsaliascomposer-2-airflow-x.y
.
Composer 1
Das
--image-version
-Argument gibt Cloud Composer 1- und Airflow-Versionen an:- Im Format
composer-a.b.c-airflow-x.y.z
wird eine Umgebung mit den angegebenen Versionen von Cloud Composer und Airflow erstellt. - Versionsaliase werden zuerst in das Format
composer-a.b.c-airflow-x.y.z
aufgelöst. Anschließend wird eine Umgebung mit den angegebenen Versionen von Cloud Composer 1 und Airflow erstellt.
- Im Format
--airflow-version
gibt die Airflow-Version in den folgenden Formaten an:Das
x.y.z
-Format gilt für die neueste Version von Cloud Composer 1 und die angegebene Version von Airflow. Dieses Format entspricht demcomposer-1-airflow-x.y.z
-Versionsalias.Das Format
x.y
gilt für die neueste Version von Cloud Composer 1 und die neueste Version von Airflow, die in den Haupt- und Nebenversionen vonx.y
verfügbar ist. Dieses Format entspricht dem Versionsaliascomposer-1-airflow-x.y
.