Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3
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 verteilt Cloud Composer die Umgebungsressourcen zwischen einem Mandanten und einem Kundenprojekt zu speichern:
- 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. Das Mandantenprojekt bietet eine einheitliche Zugriffssteuerung und eine zusätzliche Ebene Datensicherheit in Ihrer Umgebung. Jeder Cloud Composer Die Umgebung hat ein eigenes Mandantenprojekt.
Umgebungskomponenten
Eine Cloud Composer-Umgebung besteht aus Umgebungskomponenten.
Eine Umgebungskomponente ist ein Element einer verwalteten Airflow-Infrastruktur, die in Google Cloud als Teil Ihrer Umgebung ausgeführt wird. Umgebung Komponenten, die entweder im Mandanten oder im Kundenprojekt von für Ihre Umgebung.
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 während Wartungsfenstern, die Sie für Ihre zu verbessern.
Bucket der Umgebung
Der Bucket der Umgebung ist ein Cloud Storage-Bucket, in dem DAGs, Plug-ins, Datenabhängigkeiten und Airflow-Logs gespeichert werden. Umgebung Bucket 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 gewährt 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 Luftstromkomponenten
Andere Airflow-Komponenten, die in Ihrer Umgebung ausgeführt werden, sind:
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 Airflow-DAG-Prozessoren werden als Teil von Planerkomponenten ausgeführt.
Airflow-Trigger überwachen alle ausgesetzten Aufgaben in Ihrer Umgebung asynchron. Wenn Sie oben die Anzahl der Trigger in Ihrer Umgebung festgelegt haben null, dann können Sie zurückstellbare Operatoren in Ihren DAGs.
Airflow-Worker führen Aufgaben aus, die von Airflow-Planern geplant wurden. Die minimale und maximale Anzahl von Workern in Ihrer Umgebung ändert sich und dynamisch je nach Anzahl der Aufgaben in der Warteschlange.
Architektur der öffentlichen IP-Umgebung
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 einer privaten IP-Umgebung
In Cloud Composer 2 wird standardmäßig Private Service Connect verwendet, sodass Ihre privaten IP-Umgebungen intern ohne VPC-Peerings kommunizieren. Es ist auch möglich, VPC-Peerings anstelle von Private Service Connect in Ihrer Umgebung. Dies ist keine Standardoption.
In der Architektur der privaten IP-Umgebung:
- 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 Private-IP-Architektur
Hochgradig resiliente Cloud Composer-Umgebungen sind Cloud Composer 2-Umgebungen, die integrierte Redundanz- und Failover-Mechanismen verwenden, um die Anfälligkeit der Umgebung für Zonenausfälle und Ausfälle aufgrund von Single Points of Failure zu verringern.
In dieser Art von privater IP-Umgebung gilt Folgendes:
- Eine Cloud SQL-Instanz Ihrer Umgebung ist für hohe Verfügbarkeit (eine regionale Instanz). Innerhalb einer regionalen Instanz besteht die Konfiguration aus einer primären Instanz und einer Standby-Instanz.
- In Ihrer Umgebung werden zwei Airflow-Planer, zwei Webserver und, falls Auslöser verwendet werden, mindestens zwei (insgesamt bis zu zehn) Auslöser ausgeführt. Diese Komponentenpaare werden in zwei separaten Zonen ausgeführt.
- Die Mindestanzahl der Worker ist auf zwei festgelegt und der Cluster Ihrer Umgebung die Worker-Instanzen auf Zonen verteilen. Bei einem Zonenausfall werden die betroffenen 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, sodass Sie Airflow- und DAG-Logs
Cloud Monitoring erfasst und nimmt Messwerte, Ereignisse und Metadaten auf von Cloud Composer bis zu Informationen durch Dashboards und Diagramme generieren
Aufgrund des Streaming-Charakters von Cloud Logging können Sie Logs, die von Airflow-Komponenten ausgegeben werden, sofort ansehen, anstatt darauf zu warten, dass Airflow-Logs im Cloud Storage-Bucket Ihrer Umgebung angezeigt werden.
Wenn Sie die Anzahl der Logs in Ihrem Google Cloud-Projekt begrenzen möchten, beenden Sie die gesamte Aufnahme von Logs. Deaktivieren Sie das Logging aber nicht.