Apache Airflow-DAG in Cloud Composer 3 ausführen
Cloud Composer 3 | Cloud Composer 2 | Cloud Composer 1
In dieser Kurzanleitung erfahren Sie, wie Sie eine Cloud Composer-Umgebung erstellen und einen Apache Airflow-DAG in Cloud Composer 3 ausführen.
Wenn Sie neu bei Airflow sind, finden Sie in der Apache Airflow-Dokumentation im Airflow-Konzepte-Tutorial weitere Informationen zu Airflow-Konzepten, -Objekten und deren Verwendung.
Wenn Sie stattdessen die Google Cloud CLI verwenden möchten, lesen Sie den Abschnitt Apache Airflow-DAG in Cloud Composer ausführen (Google Cloud CLI).
Wenn Sie eine Umgebung mit Terraform erstellen möchten, lesen Sie den Abschnitt Umgebungen erstellen (Terraform).
Hinweise
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Cloud Composer API.
-
Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen für Ihr Projekt zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Ausführen dieser Kurzanleitung benötigen:
-
So erstellen und verwalten Sie die Cloud Composer-Umgebung:
-
Administrator für Umgebung und Storage-Objekte (
roles/composer.environmentAndStorageObjectAdmin
) -
Dienstkontonutzer (
roles/iam.serviceAccountUser
)
-
Administrator für Umgebung und Storage-Objekte (
-
So rufen Sie Logs auf:
Loganzeige (
roles/logging.viewer
)
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.
Sie können die erforderlichen Berechtigungen auch über benutzerdefinierte Rollen oder andere vordefinierte Rollen erhalten.
-
So erstellen und verwalten Sie die Cloud Composer-Umgebung:
Dienstkonto für eine Umgebung erstellen
Wenn Sie eine Umgebung erstellen, geben Sie ein Dienstkonto an. Dieses Dienstkonto wird als Dienstkonto der Umgebung bezeichnet. Ihre Umgebung verwendet dieses Dienstkonto für die meisten Vorgänge.
Das Dienstkonto für Ihre Umgebung ist kein Nutzerkonto. Ein Dienstkonto ist ein spezieller Kontotyp, der nicht von einer Person, sondern von einer Anwendung oder einer VM-Instanz verwendet wird.
So erstellen Sie ein Dienstkonto für Ihre Umgebung:
Erstellen Sie ein neues Dienstkonto, wie in der Dokumentation zu Identity and Access Management beschrieben.
Weisen Sie ihm eine Rolle zu, wie in der Dokumentation zu Identity and Access Management beschrieben. Die erforderliche Rolle ist Composer-Worker (
composer.worker
).
Umgebung erstellen
Rufen Sie in der Google Cloud Console die Seite Umgebung erstellen auf.
Geben Sie im Feld Name
example-environment
ein.Wählen Sie in der Drop-down-Liste Standort eine Region für die Cloud Composer-Umgebung aus. In diesem Leitfaden wird die Region
us-central1
verwendet.Übernehmen Sie für die anderen Optionen der Umgebungskonfiguration die angegebenen Standardeinstellungen.
Klicken Sie auf Erstellen und warten Sie, bis die Umgebung erstellt wurde.
Danach wird neben dem Umgebungsnamen ein grünes Häkchen angezeigt.
DAG-Datei erstellen
Ein Airflow-DAG ist eine Sammlung strukturierter Aufgaben, die Sie planen und ausführen möchten. DAGs werden in Standard-Python-Dateien definiert.
In dieser Anleitung wird ein Beispiel-Airflow-DAG verwendet, der in der Datei quickstart.py
definiert ist.
Der Python-Code in dieser Datei führt folgende Aktionen aus:
- Erstellt einen DAG,
composer_sample_dag
. Dieser DAG wird jeden Tag ausgeführt. - Die Aufgabe
print_dag_run_conf
wird ausgeführt. Sie gibt mithilfe des bash-Operators die Konfiguration der DAG-Ausführung aus.
Speichern Sie eine Kopie der Datei quickstart.py
auf Ihrem lokalen Computer:
DAG-Datei in den Bucket Ihrer Umgebung hochladen
Jeder Cloud Composer-Umgebung ist ein Cloud Storage-Bucket zugeordnet. Airflow in Cloud Composer plant nur DAGs, die sich im Ordner /dags
in diesem Bucket befinden.
Zum Planen Ihres DAG laden Sie quickstart.py
von Ihrem lokalen Computer in den Ordner /dags
Ihrer Umgebung hoch:
Rufen Sie in der Google Cloud -Console die Seite Umgebungen auf.
Klicken Sie in der Liste der Umgebungen auf den Namen Ihrer Umgebung,
example-environment
. Die Seite Umgebungsdetails wird geöffnet.Klicken Sie auf DAGs-Ordner öffnen. Die Seite Bucket-Details wird geöffnet.
Klicken Sie auf Dateien hochladen und wählen Sie dann Ihre Kopie von
quickstart.py
aus.Klicken Sie zum Hochladen der Datei auf Öffnen.
DAG ansehen
Nachdem Sie die DAG-Datei hochgeladen haben, führt Airflow die folgenden Schritte aus:
- Parst die von Ihnen hochgeladene DAG-Datei. Es kann einige Minuten dauern, bis der DAG in Airflow verfügbar ist.
- Fügt die DAG der Liste der verfügbaren DAGs hinzu.
- Führt den DAG gemäß dem Zeitplan aus, den Sie in der DAG-Datei angegeben haben.
Prüfen Sie, ob Ihr DAG fehlerfrei verarbeitet wurde und in Airflow verfügbar ist, indem Sie ihn in der DAG-Benutzeroberfläche aufrufen. Die DAG-Benutzeroberfläche ist die Cloud Composer-Oberfläche zum Ansehen von DAG-Informationen in der Google Cloud Console. Cloud Composer bietet auch Zugriff auf die Airflow-UI, eine native Airflow-Weboberfläche.
Warten Sie etwa fünf Minuten, damit Airflow die DAG-Datei verarbeiten kann, die Sie zuvor hochgeladen haben, und der erste DAG-Lauf abgeschlossen werden kann (wird später erläutert).
Rufen Sie in der Google Cloud -Console die Seite Umgebungen auf.
Klicken Sie in der Liste der Umgebungen auf den Namen Ihrer Umgebung,
example-environment
. Die Seite Umgebungsdetails wird geöffnet.Rufen Sie den Tab DAGs auf.
Prüfen Sie, ob der DAG
composer_quickstart
in der Liste der DAGs vorhanden ist.Abbildung 1. In der Liste der DAGs wird der DAG „composer_quickstart“ angezeigt (zum Vergrößern klicken).
Details zur DAG-Ausführung ansehen
Eine einzelne Ausführung eines DAG wird als DAG-Ausführung bezeichnet. Airflow führt sofort eine DAG-Ausführung für den Beispiel-DAG aus, da das Startdatum in der DAG-Datei auf „yesterday“ (gestern) festgelegt ist. So holt Airflow den Zeitplan des angegebenen DAG auf.
Der Beispiel-DAG enthält eine Aufgabe, print_dag_run_conf
, die den Befehl echo
in der Konsole ausführt. Mit diesem Befehl werden Metainformationen zum DAG ausgegeben (numerische ID des DAG-Laufs).
Klicken Sie auf dem Tab DAGs auf
composer_quickstart
. Der Tab Ausführungen für den DAG wird geöffnet.Klicken Sie in der Liste der DAG-Ausführungen auf den ersten Eintrag.
Abbildung 2. Liste der DAG-Ausführungen für die DAG „composer_quickstart“ (zum Vergrößern klicken) Es werden Details zum DAG-Lauf angezeigt, die Informationen zu einzelnen Aufgaben des Beispiel-DAG enthalten.
Abbildung 3. Liste der Aufgaben, die im DAG-Lauf ausgeführt wurden (zum Vergrößern klicken) Im Abschnitt Logs für DAG-Ausführung werden Logs für alle Aufgaben in der DAG-Ausführung aufgeführt. Die Ausgabe des Befehls
echo
finden Sie in den Logs.Abbildung 4. Logs des Tasks „print_dag_run_conf“ (zum Vergrößern klicken)
Bereinigen
Mit den folgenden Schritten vermeiden Sie, dass Ihrem Google Cloud -Konto die auf dieser Seite verwendeten Ressourcen in Rechnung gestellt werden:
Löschen Sie die in dieser Anleitung verwendeten Ressourcen:
Löschen Sie die Cloud Composer-Umgebung.
Rufen Sie in der Google Cloud -Console die Seite Umgebungen auf.
Wählen Sie
example-environment
aus und klicken Sie auf Löschen.Warten Sie, bis die Umgebung gelöscht ist.
Löschen Sie den Bucket Ihrer Umgebung. Durch das Löschen der Cloud Composer-Umgebung wird dessen Bucket nicht gelöscht.
Wechseln Sie in der Google Cloud Console zur Seite Speicher > Browser.
Wählen Sie den Bucket der Umgebung aus und klicken Sie auf Löschen. Dieser Bucket kann beispielsweise
us-central1-example-environ-c1616fe8-bucket
heißen.
Nächste Schritte