Esegui un DAG Apache Airflow in Cloud Composer 1

Cloud Composer 1 | Cloud Composer 2

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

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 ruoli IAM seguenti sul tuo progetto:

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

    Potresti anche essere in grado di ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.

Creazione di un ambiente

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

    Vai a Crea ambiente

  2. Nel campo Nome, inserisci example-environment.

  3. Nell'elenco a discesa Località, seleziona una regione per l'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 finché l'ambiente non viene creato.

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

Crea un file DAG

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

Questa guida utilizza un DAG Airflow di esempio 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 la configurazione dell'esecuzione di DAG utilizzando l'operatore bash.

Salva una copia del file quickstart.py sulla tua macchina 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

A ogni ambiente Cloud Composer è associato un bucket Cloud Storage. Airflow in Cloud Composer pianifica solo i DAG che si trovano nella cartella /dags di questo bucket.

Per pianificare il DAG, carica quickstart.py dalla macchina locale nella cartella /dags del tuo ambiente:

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

    Vai a Ambienti

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

  3. Fai clic su Apri cartella DAG. Viene visualizzata 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 effettua le seguenti operazioni:

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

Controlla che il DAG venga elaborato senza errori e che sia disponibile in Airflow visualizzandolo nella UI dei DAG. La UI DAG è l'interfaccia di Cloud Composer per la visualizzazione delle informazioni DAG nella console Google Cloud. Cloud Composer fornisce anche l'accesso alla UI di Airflow, che è un'interfaccia web nativa di Airflow.

  1. Attendi circa cinque minuti per concedere a Airflow il tempo di elaborare il file DAG caricato in precedenza e di completare la prima esecuzione di DAG (spiegata in seguito).

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

    Vai a Ambienti

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

  4. Vai alla scheda DAG.

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

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

Visualizza dettagli esecuzione di DAG

Una singola esecuzione di un DAG è chiamata esecuzione di DAG. Airflow esegue immediatamente un'esecuzione di DAG per il DAG di esempio perché la data di inizio nel file DAG è impostata su ieri. In questo modo, Airflow raggiunge la pianificazione del DAG specificata.

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

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

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

    L'elenco delle esecuzioni di DAG mostra l'esecuzione recente di DAG (data e stato di esecuzione)
    Figura 2. L'elenco di esecuzioni di DAG per il DAG Composerr_quickstart (fai clic per ingrandire)
  3. Vengono visualizzati i dettagli delle esecuzioni di DAG, che illustrano in dettaglio le informazioni sulle singole attività del DAG di esempio.

    L'elenco di attività con una voce print_dag_run_conf, relativa ora di inizio, ora di fine e durata
    Figura 3. L'elenco di attività eseguite nell'esecuzione di DAG (fai clic per ingrandire)
  4. La sezione Log per l'esecuzione di DAG elenca i log di tutte le attività nell'esecuzione di 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 relativi alle 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 a Ambienti

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

    3. Attendi che l'ambiente venga eliminato.

  2. Eliminare il bucket del tuo ambiente. L'eliminazione dell'ambiente Cloud Composer non elimina il relativo bucket.

    1. Nella console Google Cloud, vai alla pagina Storage > Browser.

      Vai a Spazio di archiviazione > Browser

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

  3. Elimina il disco permanente della coda Redis del tuo ambiente. L'eliminazione dell'ambiente Cloud Composer non elimina il relativo 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 gke-us-central1-exampl-pvc-b12055b6-c92c-43ff-9de9-10f2cc6fc0ee. I dischi per Cloud Composer 1 hanno sempre il tipo Standard persistent disk e la dimensione di 2 GB.

Passaggi successivi