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 3-Umgebungen haben eine einzelne Konfiguration, die nicht vom Netzwerktyp abhängt:
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. 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 in Google Cloud als Teil Ihrer Umgebung ausgeführt wird. Umgebungskomponenten werden entweder im Mandanten- oder im Kundenprojekt Ihrer Umgebung ausgeführt.
Bucket der Umgebung
Bucket der Umgebung ist ein Cloud Storage-Bucket zum Speichern von DAGs, Plug-ins, Datenabhängigkeiten und Airflow-Logs. Der Bucket der Umgebung befindet sich im Kundenprojekt.
Wenn Sie Ihre DAG-Dateien in den Ordner /dags
in Ihrem
des Buckets der Umgebung synchronisiert Cloud Composer die DAGs mit Airflow-Komponenten Ihrer Umgebung.
Airflow-Webserver
Der Airflow-Webserver führt die Airflow-UI Ihrer Umgebung aus.
Cloud Composer bietet nutzerabhängig Zugriff auf die Benutzeroberfläche Identitäten und IAM-Richtlinienbindungen für Nutzer definiert.
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-Definitionsdateien, planen DAG-Ausführungen basierend auf dem Zeitplanintervall erstellt und Aufgaben zur Ausführung in die Warteschlange gestellt Airflow-Worker
Airflow-Trigger überwachen alle ausgesetzten Aufgaben 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-DAG-Prozessoren verarbeiten DAG-Dateien und wandeln sie in DAG-Objekte um. In Cloud Composer 3 werden DAG-Prozessoren als separate Umgebungskomponenten ausgeführt.
Airflow-Worker führen Aufgaben aus, die von Airflow geplant wurden Planer. Die minimale und maximale Anzahl an Workern in Ihrer Umgebung ändert sich dynamisch, je nach Anzahl der Aufgaben in der Warteschlange.
Architektur der Cloud Composer 3-Umgebung
In Cloud Composer 3-Umgebungen:
- Das Mandantenprojekt hostet eine Cloud SQL-Instanz mit der Airflow-Datenbank.
- Alle Airflow-Ressourcen werden im Mandantenprojekt ausgeführt.
- Im Kundenprojekt wird der Bucket der Umgebung gehostet.
- Mit einem benutzerdefinierten VPC-Netzwerkanhang im Kundenprojekt können die Umgebung an ein benutzerdefiniertes VPC-Netzwerk anhängen. Sie können einen vorhandenen Anhang verwenden oder Cloud Composer kann ihn bei Bedarf automatisch erstellen. Es ist auch möglich, eine Umgebung von einem VPC-Netzwerk zu trennen.
- Die Google Cloud Console, das Monitoring und die Logging-Funktionen im Kundenprojekt bieten Möglichkeiten, die Umgebung, DAGs und DAG-Ausführungen zu verwalten und auf die Messwerte und Protokolle der Umgebung zuzugreifen. Sie können auch die Airflow-Benutzeroberfläche, die Google Cloud CLI, die Cloud Composer API und Terraform für dieselben Zwecke verwenden.
Einbindung in Cloud Logging und Cloud Monitoring
Cloud Composer kann in Cloud Logging und Cloud Monitoring Ihres Google Cloud-Projekts eingebunden werden, sodass Sie eine zentrale Stelle für die Anzeige von Airflow- und DAG-Logs haben.
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 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, beenden Sie die gesamte Aufnahme von Logs. Deaktivieren Sie das Logging aber nicht.