Runner-Umgebungen erstellen

Auf dieser Seite wird der Prozess zum Erstellen von Runner-Umgebungen beschrieben, in denen Ihre Orchestrierungspipelines ausgeführt werden.

Runner-Umgebungen

Jede Bereitstellungsumgebung muss eine Runner-Umgebung haben. Managed Airflow ist die Orchestrierungs-Engine, die Ihre Pipelines nach der Bereitstellung ausführt. Eine Runner-Umgebung ist eine Managed Airflow-Umgebung, die Sie Ihrer Bereitstellungsumgebung zugewiesen haben.

Hinweis

  • Derzeit ist Managed Service for Apache Airflow der einzige verfügbare Runner für Orchestration Pipelines in Google Cloud . Es gelten alle Managed Airflow Kontingente und ‑Systemlimits. Weitere Informationen zu den Kosten einer Runner-Umgebung finden Sie unter Managed Airflow-Preise.

  • Orchestration Pipelines können in Managed Airflow-Runner-Umgebungen (Gen 3) und (Gen 2) ausgeführt werden. In Managed Airflow (Gen 3) können Sie sowohl Airflow 3 als auch Airflow 2 verwenden.

  • Das Paket „Orchestration Pipelines“ ist in Managed Airflow ab den folgenden Versionen vorinstalliert:

    • composer-3-airflow-3.1.7-build.5
    • composer-3-airflow-2.11.1-build.1, composer-3-airflow-2.10.5-build.34 und composer-3-airflow-2.9.3-build.54
    • composer-2.16.11-airflow-2.11.1, composer-2.16.11-airflow-2.10.5

    Wenn Sie eine ältere Version von Managed Airflow verwenden, können Sie das orchestration-pipelines Paket manuell von PyPI installieren.

  • Die Erstellung einer Managed Airflow-Umgebung dauert ungefähr 25 Minuten.

  • Sie können Managed Airflow-Umgebungen in Google Cloud der Console, der gcloud CLI und Terraform erstellen. In dieser Anleitung werden nur gcloud CLI-Befehle verwendet. Eine Anleitung und Beispiele für andere Ansätze finden Sie in der Managed Airflow-Dokumentation unter Umgebungen erstellen.

  • Mit der in dieser Anleitung bereitgestellten Standardkonfiguration wird eine Managed Airflow-Umgebung mit öffentlicher IP-Adresse erstellt. Managed Airflow bietet viele weitere Optionen für die Netzwerk- und Sicherheitskonfiguration. Weitere Informationen zu verschiedenen Möglichkeiten zum Einrichten einer Runner-Umgebung finden Sie in der Managed Airflow-Dokumentation unter Umgebungen erstellen.

Erforderliche IAM-Rollen prüfen

Bitten Sie Ihren Administrator, Ihnen die folgenden Rollen zuzuweisen, um die Berechtigungen zu erhalten, die zum Erstellen von Runner-Umgebungen in Ihrem Projekt erforderlich sind:

  • Die Rolle Administrator für Umgebung und Storage-Objekte (composer.environmentAndStorageObjectAdmin) und Dienstkontonutzer (iam.serviceAccountUser) zum Erstellen und Verwalten von Umgebungen in Managed Service for Apache Airflow und zum Verwalten von Objekten in Buckets, die mit diesen Umgebungen verknüpft sind. Weitere Informationen zu diesen Nutzerrollen finden Sie in der Managed Service for Apache Airflow-Dokumentation unter Rollen zuweisen.

Cloud Composer API und APIs für Aktionen aktivieren

  1. Aktivieren Sie die Cloud Composer API. Eine vollständige Liste der von Managed Airflow verwendeten Dienste finden Sie unter Von Managed Airflow benötigte Dienste.
  2. Aktivieren Sie APIs für Google Cloud Dienste, die Sie verwenden möchten , z. B. die Dataproc API.

Neues Dienstkonto für die Runner-Umgebung erstellen und IAM-Rollen zuweisen

Das Dienstkonto der Runner-Umgebung wird verwendet, um eine neue Managed Service for Apache Airflow-Umgebung zu erstellen und alle Orchestrierungspipelines auszuführen, die Sie darin bereitstellen.

Bitten Sie Ihren Administrator, Folgendes zu tun:

  1. Erstellen Sie ein neues Dienstkonto, wie in der Dokumentation zu Identity and Access Management beschrieben.

  2. Weisen Sie ihm die Rolle Composer-Worker (composer.worker) zu. Diese Rolle bietet in den meisten Fällen die erforderlichen Berechtigungen.

    Wenn Sie auf andere Ressourcen in Ihrem Google Cloud Projekt zugreifen möchten, gewähren Sie diesem Dienstkonto zusätzliche Berechtigungen für den Zugriff auf diese Ressourcen. Fügen Sie diesem Dienstkonto nur dann zusätzliche Berechtigungen hinzu, wenn dies für den Betrieb Ihrer Orchestrierungspipeline erforderlich ist.

  3. Wenn Sie eine Managed Airflow-Umgebung (Gen 2) verwenden möchten, folgen Sie der Anleitung unter Erforderliche Berechtigungen für das Managed Airflow-Dienstkonto gewähren um zusätzliche Berechtigungen zu gewähren.

  4. Gewähren Sie die Berechtigungen, die für Ihre Pipeline erforderlich sind. Alle Orchestrierungsaufgaben in einer Pipeline werden vom Dienstkonto dieser Runner-Umgebung ausgeführt. Daher müssen Sie alle erforderlichen Berechtigungen für dieses Dienstkonto manuell gewähren.

    Wenn Ihre Pipeline beispielsweise eine Aktion verwendet, die in einem ephemeren Managed Service for Apache Spark-Cluster ausgeführt wird, muss das Dienstkonto der Runner-Umgebung Berechtigungen zum Erstellen und Löschen eines Managed Service for Apache Spark-Clusters sowie zum Auslösen und Verwalten von Managed Service for Apache Spark-Jobs haben. Außerdem muss die Dataproc API aktiviert sein.

Managed Service for Apache Airflow-Umgebung erstellen

Erstellen Sie eine Managed Service for Apache Airflow-Umgebung und berücksichtigen Sie dabei Folgendes:

  • Umgebungsname: beliebiger Name. Sie verwenden diesen Namen später, um Ihre Pipelines [bereitzustellen][op-deploy]. Beispiel: example-runner.
  • Image-Version: Version von Managed Service for Apache Airflow und Airflow, die verwendet werden soll. In der gcloud CLI können Sie einen Alias verwenden, der auf die Standardversion verweist, z. B. composer-3-airflow-3 oder composer-2-airflow-2.
  • Standort: beliebiger Standort. Beispiel: us-central1.
  • Dienstkonto: Dienstkonto, das Sie erstellt haben für diese Umgebung.

Beispiel für einen gcloud CLI-Befehl:

gcloud composer environments create example-runner \
  --location us-central1 \
  --image-version composer-3-airflow-3 \
  --service-account "example-account@example-project.iam.gserviceaccount.com"

Beispiel für eine empfohlene Arbeitslastkonfiguration für die Vorschau (Sie können sie später jederzeit skalieren):

gcloud composer environments create example-runner \
  --location us-central1 \
  --image-version composer-3-airflow-3 \
  --service-account "example-account@example-project.iam.gserviceaccount.com" \
  --scheduler-cpu 2 \
  --scheduler-memory 8GB \
  --dag-processor-cpu 4 \
  --dag-processor-memory 8GB \
  --worker-cpu 4 \
  --worker-memory 8GB

Die Erstellung einer Managed Airflow-Umgebung dauert ungefähr 25 Minuten.

(Optional) Paket „Orchestration Pipelines“ von PyPI installieren

Orchestration Pipelines hängt vom orchestration-pipelines PyPI-Paket ab. Standardmäßig ist dieses Paket bereits in Ihrer Runner-Umgebung vorinstalliert.

Wenn Sie eine ältere Version von Managed Airflow verwenden, in der dieses Paket nicht vorinstalliert ist, oder eine andere Version des Pakets installieren möchten, können Sie dieses Paket von PyPI installieren.

Beispiel:

gcloud composer environments update example-runner \
    --location us-central1 \
    --update-pypi-package "orchestration-pipelines>=0.11.1"

Weitere Informationen zum Installieren von PyPI-Paketen in Ihrer Runner-Umgebung und Beispiele für die Installation in der Google Cloud Console und in Terraform finden Sie in der Managed Service for Apache Airflow Dokumentation unterPython-Abhängigkeiten installieren.

Nächste Schritte

  • Fügen Sie die Runner-Umgebung der [Bereitstellungskonfiguration][op-deploy] hinzu.