Apache Airflow-DAG in Cloud Composer 2 ausführen
Cloud Composer 1 Cloud Composer 2
In dieser Kurzanleitung erfahren Sie, wie Sie eine Cloud Composer-Umgebung erstellen und einen Apache Airflow-DAG in Cloud Composer 2 ausführen.
Wenn Sie mit Airflow noch nicht vertraut sind, lesen Sie in der Dokumentation zu Apache Airflow in der Anleitung zu Airflow-Konzepten weitere Informationen zu Konzepten und Objekten von Airflow und deren Verwendung.
Wenn Sie stattdessen die Google Cloud CLI verwenden möchten, lesen Sie Apache Airflow-DAG in Cloud Composer (Google Cloud CLI) ausführen.
Informationen zum Erstellen einer Umgebung mit Terraform finden Sie unter Umgebungen erstellen (Terraform).
Hinweise
- Melden Sie sich bei Ihrem Google Cloud-Konto an. Wenn Sie mit Google Cloud noch nicht vertraut sind, erstellen Sie ein Konto, um die Leistungsfähigkeit unserer Produkte in der Praxis sehen und bewerten zu können. Neukunden erhalten außerdem ein Guthaben von 300 $, um Arbeitslasten auszuführen, zu testen und bereitzustellen.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Die Abrechnung für das Google Cloud-Projekt muss aktiviert sein.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Die Abrechnung für das Google Cloud-Projekt muss aktiviert sein.
-
Cloud Composer API aktivieren.
-
Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen für Ihr Projekt zu gewähren, damit Sie die Berechtigungen erhalten, die Sie für diese Kurzanleitung benötigen:
-
So rufen Sie das Erstellen und Verwalten der Cloud Composer-Umgebung auf:
-
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 verwalten.
Möglicherweise können Sie die erforderlichen Berechtigungen auch über benutzerdefinierte Rollen oder andere vordefinierte Rollen erhalten.
-
So rufen Sie das Erstellen und Verwalten der Cloud Composer-Umgebung auf:
Umgebung erstellen
Rufen Sie in der Google Cloud Console die Seite Umgebung erstellen auf.
Zur Seite „Umgebung erstellen“
Wenn dies die erste Umgebung in Ihrem Projekt ist, wird der Abschnitt Cloud Composer-Dienstkonto die erforderlichen Berechtigungen erteilen angezeigt.
Sie fügen dem Dienstkonto Ihrer Umgebung das Konto des Cloud Composer-Dienst-Agents als neues Hauptkonto hinzu und weisen ihm die Rolle Dienst-Agent-Erweiterung für die Cloud Composer v2 API zu.
Bestätigen Sie, dass Sie das gewünschte Dienstkonto für Ihre Umgebung verwenden, und klicken Sie auf Erteilen.
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 ist.
Wenn der Vorgang abgeschlossen ist, wird neben dem Namen der Umgebung ein grünes Häkchen angezeigt.
DAG-Datei erstellen
Ein Airflow-DAG ist eine Sammlung organisierter Aufgaben, die Sie planen und ausführen möchten. DAGs werden in Standard-Python-Dateien definiert.
In dieser Anleitung wird ein Beispiel für einen Airflow-DAG verwendet, der in der Datei quickstart.py
definiert ist.
Der Python-Code in dieser Datei führt Folgendes aus:
- Erstellt den DAG
composer_sample_dag
. Dieser DAG wird täglich ausgeführt. - Führt die Aufgabe
print_dag_run_conf
aus. Die Aufgabe gibt die Konfiguration der DAG-Ausführung mit dem bash-Operator 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 in diesem Bucket im Ordner /dags
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 der 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 folgende Schritte aus:
- Parst die von Ihnen hochgeladene DAG-Datei. Es kann einige Minuten dauern, bis der DAG für Airflow verfügbar ist.
- Fügt den 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 in der DAG-UI, ob der DAG fehlerfrei verarbeitet wird und in Airflow verfügbar ist. Die DAG-UI ist die Cloud Composer-Schnittstelle 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, bis Airflow Zeit hat, die zuvor hochgeladene DAG-Datei zu verarbeiten und die erste DAG-Ausführung abzuschließen (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 der 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_Schnellstart angezeigt (zum Vergrößern klicken).
Details zur DAG-Ausführung ansehen
Die 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 das gestrige Datum festgelegt ist. Auf diese Weise schließt Airflow den Zeitplan des angegebenen DAG an.
Der Beispiel-DAG enthält die Aufgabe print_dag_run_conf
, die den Befehl echo
in der Console ausführt. Mit diesem Befehl werden Metainformationen zum DAG ausgegeben (numerische Kennung der DAG-Ausführung).
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 den DAG composer_Schnellstart (zum Vergrößern anklicken) Es werden Details der DAG-Ausführung mit den Informationen zu den einzelnen Aufgaben des Beispiel-DAG angezeigt.
Abbildung 3: Die Liste der Aufgaben, die bei der DAG-Ausführung 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 der Aufgabe „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.
Rufen Sie in der Google Cloud Console die Seite Speicher > Browser auf.
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.
Löschen Sie den nichtflüchtigen Speicher der Redis-Warteschlange Ihrer Umgebung. Durch das Löschen der Cloud Composer-Umgebung wird der nichtflüchtige Speicher nicht gelöscht.
Rufen Sie in der Google Cloud Console Compute Engine > Laufwerke auf.
Wählen Sie den nichtflüchtigen Speicher der Redis-Warteschlange der Umgebung aus und klicken Sie auf Löschen.
Dieses Laufwerk kann beispielsweise den Namen
pvc-02bc4842-2312-4347-8519-d87bdcd31115
haben. Laufwerke für Cloud Composer 2 haben immer den TypBalanced persistent disk
und eine Größe von 2 GB.
Nächste Schritte