Esegui un DAG Apache Airflow in Cloud Composer 2

Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3

Questa guida rapida mostra come creare un ambiente Cloud Composer ed eseguire un DAG Apache Airflow in Cloud Composer 2.

Prima di iniziare

  1. Accedi al tuo account Google Cloud. Se non conosci Google Cloud, crea un account per valutare le prestazioni dei nostri prodotti in scenari reali. I nuovi clienti ricevono anche 300 $di crediti gratuiti per l'esecuzione, il test e il deployment dei carichi di lavoro.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Assicurati che la fatturazione sia attivata per il tuo progetto Google Cloud.

  4. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  5. Assicurati che la fatturazione sia attivata per il tuo progetto Google Cloud.

  6. Attiva l'API Cloud Composer.

    Abilita l'API

  7. Per ottenere le autorizzazioni necessarie per completare questa guida rapida, chiedi all'amministratore di concederti i seguenti ruoli IAM sul tuo progetto:

    Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso.

    Potresti anche riuscire a ottenere le autorizzazioni richieste tramite la ruoli o altri ruoli predefiniti ruoli.

Creazione di un ambiente

  1. Nella console Google Cloud, vai alla pagina Crea ambiente.

    Vai a Crea ambiente

  1. Se questo è il primo ambiente del progetto, una Concedi le autorizzazioni necessarie all'account di servizio di Cloud Composer .

    Aggiungi l'account dell'agente di servizio di Cloud Composer come nuovo sull'account di servizio del tuo ambiente e concedi Estensione agente di servizio API Cloud Composer v2.

    Assicurati di utilizzare l'account di servizio previsto per il tuo ambiente. e fai clic su Concedi.

  2. Nel campo Nome, inserisci example-environment.

  3. Nell'elenco a discesa Località, seleziona una regione per nell'ambiente Cloud Composer. Questa guida utilizza la regione us-central1.

  4. Per altre opzioni di configurazione dell'ambiente, utilizza i valori predefiniti forniti.

  5. Fai clic su Crea e attendi che venga creato l'ambiente.

  6. Al termine, accanto al nome dell'ambiente viene visualizzato un segno di spunta verde.

Crea un file DAG

Un DAG Airflow è una raccolta di attività organizzate che che vuoi pianificare ed eseguire. I DAG sono definiti in file Python standard.

Questa guida utilizza un esempio di DAG Airflow definito nel file quickstart.py. Il codice Python in questo file esegue le seguenti operazioni:

  1. Crea un DAG, composer_sample_dag. Questo DAG viene eseguito ogni giorno.
  2. Esegue un'attività, print_dag_run_conf. L'attività stampa l'esecuzione del DAG configurazione utilizzando l'operatore bash.

Salva una copia del file quickstart.py sul computer locale:

import datetime

from airflow import models
from airflow.operators import bash

# If you are running Airflow in more than one time zone
# see https://airflow.apache.org/docs/apache-airflow/stable/timezone.html
# for best practices
YESTERDAY = datetime.datetime.now() - datetime.timedelta(days=1)

default_args = {
    "owner": "Composer Example",
    "depends_on_past": False,
    "email": [""],
    "email_on_failure": False,
    "email_on_retry": False,
    "retries": 1,
    "retry_delay": datetime.timedelta(minutes=5),
    "start_date": YESTERDAY,
}

with models.DAG(
    "composer_quickstart",
    catchup=False,
    default_args=default_args,
    schedule_interval=datetime.timedelta(days=1),
) as dag:
    # Print the dag_run id from the Airflow logs
    print_dag_run_conf = bash.BashOperator(
        task_id="print_dag_run_conf", bash_command="echo {{ dag_run.id }}"
    )

Carica il file DAG nel bucket del tuo ambiente

Ogni ambiente Cloud Composer dispone di un associato a questo bucket. Airflow solo in pianificazioni di Cloud Composer I DAG che si trovano nella cartella /dags di questo bucket.

Per pianificare il DAG, carica quickstart.py dalla macchina locale al tuo cartella /dags dell'ambiente:

  1. Nella console Google Cloud, vai alla pagina Ambienti.

    Vai ad Ambienti

  2. Nell'elenco degli ambienti, fai clic sul nome dell'ambiente, example-environment. Si apre la pagina Dettagli ambiente.

  3. Fai clic su Apri cartella dei DAG. Si apre la pagina Dettagli bucket.

  4. Fai clic su Carica file e seleziona la tua copia di quickstart.py.

  5. Per caricare il file, fai clic su Apri.

Visualizza il DAG

Dopo aver caricato il file DAG, Airflow fa quanto segue:

  1. Analizza il file DAG che hai caricato. Potrebbero essere necessari alcuni minuti i DAG per renderli disponibili per Airflow.
  2. Aggiunge il DAG all'elenco dei DAG disponibili.
  3. Esegue il DAG in base alla pianificazione fornita nel file DAG.

Verifica che il DAG venga elaborato senza errori e che sia disponibile in Airflow e lo visualizzi nella UI dei DAG. La UI di DAG è l'interfaccia di Cloud Composer per la visualizzazione Informazioni sui DAG nella console Google Cloud. Cloud Composer offre inoltre accesso alla UI di Airflow, che è un ambiente web di Airflow nativo a riga di comando.

  1. Attendi circa cinque minuti per concedere ad Airflow il tempo di elaborare il file DAG caricato in precedenza e per completare la prima esecuzione del DAG (come spiegato più avanti).

  2. Nella console Google Cloud, vai alla pagina Ambienti.

    Vai ad Ambienti

  3. Nell'elenco degli ambienti, fai clic sul nome dell'ambiente, example-environment. Si apre la pagina Dettagli ambiente.

  4. Vai alla scheda DAG.

  5. Controlla che sia presente il DAG composer_quickstart nell'elenco dei DAG.

    L'elenco dei DAG visualizza il DAG Composer_quickstart con
    informazioni aggiuntive come stato e pianificazione
    Figura 1. L'elenco dei DAG mostra DAG Composer_quickstart (fai clic per ingrandire)

Visualizza dettagli esecuzione DAG

Una singola esecuzione di un DAG è chiamata esecuzione di DAG. Airflow immediatamente esegue un'esecuzione di DAG per il DAG di esempio perché la data di inizio nel file DAG è impostato su ieri. In questo modo, Airflow raggiunge i DAG specificati programmazione.

Il DAG di esempio contiene un'attività, print_dag_run_conf, che esegue echo nella console. Questo comando restituisce metadati sul DAG (Identificatore numerico dell'esecuzione di DAG).

  1. Nella scheda DAG, fai clic su composer_quickstart. La scheda Esecuzioni per Si apre il DAG.

  2. Nell'elenco delle esecuzioni di DAG, fai clic sulla prima voce.

    L'elenco delle esecuzioni di DAG mostra la recente esecuzione del DAG (la relativa data di esecuzione)
    e lo stato)
    Figura 2. L'elenco delle esecuzioni di DAG per DAG Composer_quickstart (fai clic per ingrandire)
  3. Vengono visualizzati i dettagli dell'esecuzione del DAG, che contengono i dettagli delle informazioni delle attività del DAG di esempio.

    L'elenco delle attività con una voce Print_dag_run_conf, il suo inizio
    ora, ora di fine e durata
    Figura 3. L'elenco di attività eseguite in l'esecuzione del DAG (fai clic per ingrandire)
  4. La sezione Log per l'esecuzione di DAG elenca i log per tutte le attività nell'esecuzione del DAG. Puoi visualizzare l'output del comando echo nei log.

    Voci di log dell'attività, una delle quali è Output e l'altra elenca
    un identificatore
    Figura 4. Log dell'attività Print_dag_run_conf (fai clic per ingrandire)

Esegui la pulizia

Per evitare che al tuo account Google Cloud vengano addebitati costi per le risorse utilizzate in questa pagina, segui questi passaggi.

Elimina le risorse utilizzate in questo tutorial:

  1. Elimina l'ambiente Cloud Composer:

    1. Nella console Google Cloud, vai alla pagina Ambienti.

      Vai ad Ambienti

    2. Seleziona example-environment e fai clic su Elimina.

    3. Attendi fino a quando l'ambiente non viene eliminato.

  2. Elimina il bucket dell'ambiente. Eliminazione di Cloud Composer di rete non elimina il proprio bucket.

    1. Nella console Google Cloud, vai a Storage > Pagina Browser.

      Vai ad Spazio di archiviazione > Browser

    2. Seleziona il bucket dell'ambiente e fai clic su Elimina. Ad esempio, questo il bucket può essere denominato us-central1-example-environ-c1616fe8-bucket.

  3. Elimina il disco permanente dalla coda Redis del tuo ambiente. L'eliminazione del L'ambiente Cloud Composer non elimina il disco permanente.

    1. Nella console Google Cloud, vai a Compute Engine > Dischi.

      Vai a dischi

    2. Seleziona il disco permanente della coda Redis dell'ambiente e fai clic su Elimina.

      Ad esempio, questo disco può essere denominato pvc-02bc4842-2312-4347-8519-d87bdcd31115. Dischi per Cloud Composer 2 ha sempre il tipo Balanced persistent disk di 2 GB.

Passaggi successivi