Umgebungsarchitektur

Cloud Composer 3 | Cloud Composer 2 | Cloud Composer 1

Auf dieser Seite wird die Architektur von Cloud Composer-Umgebungen beschrieben.

Konfigurationen der Umgebungsarchitektur

Cloud Composer 2-Umgebungen können die folgenden Architekturkonfigurationen haben:

Kunden- und Mandantenprojekte

Beim Erstellen einer Umgebung werden die Umgebungsressourcen von Cloud Composer auf ein Mandanten- und ein Kundenprojekt verteilt:

  • Das Kundenprojekt ist ein Google Cloud -Projekt, in dem Sie Ihre Umgebungen erstellen. Sie können in einem Kundenprojekt mehrere Umgebungen erstellen.

  • Das Mandantenprojekt ist ein von Google verwaltetes Mandantenprojekt und gehört zur Organisation Google.com. Das Mandantenprojekt bietet eine einheitliche Zugriffssteuerung und eine zusätzliche Datensicherheitsebene für Ihre Umgebung. Jede Cloud Composer-Umgebung hat ein eigenes Mandantenprojekt.

Umgebungskomponenten

Eine Cloud Composer-Umgebung besteht aus Umgebungskomponenten.

Eine Umgebungskomponente ist ein Element einer verwalteten Airflow-Infrastruktur, die auf Google Cloudals Teil Ihrer Umgebung ausgeführt wird. Umgebungskomponenten werden entweder im Mandanten- oder im Kundenprojekt Ihrer Umgebung ausgeführt.

Cluster der Umgebung

Cluster der Umgebung ist ein VPC-nativer Google Kubernetes Engine-Cluster Ihrer Umgebung im Autopilot-Modus:

Standardmäßig aktiviert Cloud Composer automatische Knotenupgrades und automatische Knotenreparaturen, um den Cluster Ihrer Umgebung vor Sicherheitslücken zu schützen. Diese Vorgänge erfolgen während Wartungsfenstern, die Sie für Ihre Umgebung angeben.

Bucket der Umgebung

Der Bucket der Umgebung ist ein Cloud Storage-Bucket, in dem DAGs, Plug-ins, Datenabhängigkeiten und Airflow-Logs gespeichert werden. Der Bucket der Umgebung befindet sich im Kundenprojekt.

Wenn Sie Ihre DAG-Dateien in den Ordner /dags Ihres Buckets hochladen, synchronisiert Cloud Composer die DAGs mit den Airflow-Komponenten Ihrer Umgebung.

Airflow-Webserver

Der Airflow-Webserver führt die Airflow-UI Ihrer Umgebung aus.

Cloud Composer bietet Zugriff auf die Benutzeroberfläche basierend auf Nutzeridentitäten und IAM-Richtlinienbindungen, die für Nutzer definiert sind.

Airflow-Datenbank

Eine Airflow-Datenbank ist eine Cloud SQL-Instanz, die im Mandantenprojekt Ihrer Umgebung ausgeführt wird. Sie hostet die Airflow-Metadatendatenbank.

Zum Schutz vertraulicher Verbindungs- und Workflowinformationen lässt Cloud Composer den Datenbankzugriff nur auf das Dienstkonto Ihrer Umgebung zu.

Andere Airflow-Komponenten

Weitere Airflow-Komponenten, die in Ihrer Umgebung ausgeführt werden:

  • Airflow-Planer parsen DAG-Dateien, planen DAG-Ausführungen anhand des Zeitplanintervalls und stellen Aufgaben zur Ausführung durch Airflow-Worker in die Warteschlange. In Cloud Composer 2 werden Airflow-DAG-Prozessoren als Teil von Planerkomponenten ausgeführt.

  • Airflow-Triggerer überwachen alle ausgesetzten Tasks in Ihrer Umgebung asynchron. Wenn Sie die Anzahl der Trigger in Ihrer Umgebung auf einen Wert über null festlegen, können Sie zurückstellbare Operatoren in Ihren DAGs verwenden.

  • Airflow-Worker führen Aufgaben aus, die von Airflow-Planern geplant werden. Die Mindest- und Höchstanzahl an Workern in Ihrer Umgebung ändert sich dynamisch, je nach Anzahl der Aufgaben in der Warteschlange.

Architektur der öffentlichen IP-Umgebung

Ressourcen der öffentlichen IP-Cloud Composer-Umgebung im Mandantenprojekt und im Kundenprojekt
Abbildung 1. Architektur einer öffentlichen IP-Umgebung (zum Vergrößern klicken)

In einer öffentlichen IP-Umgebungsarchitektur für Cloud Composer 2:

  • Im Mandantenprojekt werden eine Cloud SQL-Instanz und ein Cloud SQL-Speicher gehostet.
  • Das Kundenprojekt hostet alle anderen Komponenten der Umgebung.
  • Airflow-Planer und -Worker im Kundenprojekt kommunizieren über eine Cloud SQL-Proxy-Instanz im Kundenprojekt mit der Airflow-Datenbank.

Architektur der Private-IP-Umgebung

Ressourcen der Cloud Composer-Umgebung mit privater IP-Adresse und PSC im Mandantenprojekt und im Kundenprojekt (zum Vergrößern klicken)
Abbildung 2. Private IP-Cloud Composer-Umgebungsressourcen im Mandantenprojekt und im Kundenprojekt (zum Vergrößern klicken)

Standardmäßig verwendet Cloud Composer 2 Private Service Connect, sodass Ihre privaten IP-Umgebungen intern ohne VPC-Peerings kommunizieren. Es ist auch möglich, in Ihrer Umgebung VPC-Peerings anstelle von Private Service Connect zu verwenden. Dies ist keine Standardoption.

In der Architektur für private IP-Umgebungen:

  • Im Mandantenprojekt werden eine Cloud SQL-Instanz und ein Cloud SQL-Speicher gehostet.
  • Das Kundenprojekt hostet alle anderen Komponenten der Umgebung.
  • Airflow-Planer und -Worker stellen über den konfigurierten PSC-Endpunkt eine Verbindung zur Airflow-Datenbank her.

Hochgradig resiliente Architektur für private IP-Adressen

Hochgradig resiliente Ressourcen der privaten IP-Umgebung im Mandantenprojekt und im Kundenprojekt (zum Vergrößern klicken)
Abbildung 3. Hochgradig resiliente Ressourcen der privaten IP-Cloud Composer-Umgebung im Mandantenprojekt und im Kundenprojekt (zum Vergrößern klicken)

Hoch resiliente (hochverfügbare) Cloud Composer-Umgebungen sind multizonale Umgebungen, die integrierte Redundanz- und Failover-Mechanismen verwenden, die die Anfälligkeit der Umgebung für zonale Ausfälle und Ausfälle durch Single Points of Failure verringern.

In dieser Art von Umgebung mit privater IP:

  • Eine Cloud SQL-Komponente Ihrer Umgebung hat eine primäre Instanz und eine Standby-Instanz, die auf Zonen verteilt sind.
  • In Ihrer Umgebung werden zwei Airflow-Planer, zwei Webserver und, falls Triggerer verwendet werden, mindestens zwei (bis zu zehn insgesamt) Triggerer ausgeführt. Diese Komponentenpaare werden in zwei separaten Zonen ausgeführt.
  • Die Mindestanzahl der Worker ist auf zwei festgelegt und der Cluster Ihrer Umgebung verteilt Worker-Instanzen auf Zonen. Bei einem Zonenausfall werden betroffene Worker-Instanzen in einer anderen Zone neu geplant.

Einbindung in Cloud Logging und Cloud Monitoring

Cloud Composer kann in Cloud Logging und Cloud Monitoring Ihres Google Cloud Projekts integriert werden, sodass Sie eine zentrale Stelle für die Anzeige von Airflow- und DAG-Logs haben.

Cloud Monitoring sammelt und erfasst Messwerte, Ereignisse und Metadaten aus Cloud Composer, mit denen sich mithilfe von Dashboards und Diagrammen aussagekräftige Informationen generieren lassen.

Aufgrund des Streaming-Charakters von Cloud Logging können Sie alle Logs, die von Airflow-Komponenten gesendet werden, sofort aufrufen. Sie müssen also nicht warten, bis Airflow-Logs im Cloud Storage-Bucket Ihrer Umgebung angezeigt werden.

Wenn Sie die Anzahl der Logs in Ihrem Google Cloud -Projekt begrenzen möchten, können Sie die gesamte Aufnahme von Logs beenden. Deaktivieren Sie das Logging aber nicht.

Nächste Schritte