Guide de démarrage rapide

Cette page explique comment créer un environnement Cloud Composer dans Google Cloud Console et exécuter un DAG Apache Airflow simple (également appelé "workflow").

Avant de commencer

  1. Connectez-vous à votre compte Google.

    Si vous n'en possédez pas déjà un, vous devez en créer un.

  2. Dans Google Cloud Console, sur la page de sélection du projet, sélectionnez ou créez un projet Google Cloud.

    Accéder à la page de sélection du projet

  3. Assurez-vous que la facturation est activée pour votre projet Cloud. Découvrez comment vérifier que la facturation est activée pour votre projet.

  4. Activez l'API Cloud Composer.

    Activer l'API

Créer un environnement

Console

  1. Dans Cloud Console, accédez à la page "Créer un environnement".

    Ouvrir la page "Créer un environnement"

  2. Dans le champ Nom, saisissez example-environment.

  3. Dans la liste déroulante Emplacement, sélectionnez une région pour l'environnement Cloud Composer. Pour plus d'informations sur la sélection d'une région, consultez la page Régions disponibles.

  4. Pour les autres options de configuration de l'environnement, utilisez les valeurs par défaut fournies.

  5. Pour créer l'environnement, cliquez sur Créer.

  6. Attendez la fin de la création de l'environnement. Lorsque vous avez terminé, une coche verte s'affiche à gauche du nom de l'environnement.

gcloud

gcloud composer environments create example-environment \
    --location LOCATION

Remplacez LOCATION par la région Compute Engine où se trouve l'environnement. Assurez-vous que l'emplacement spécifié est bien celui où Cloud Composer est disponible.

Terraform

Pour configurer cet environnement à l'aide de Terraform, ajoutez le bloc de ressources suivant à votre configuration Terraform, puis exécutez terraform apply.

resource "google_composer_environment" "composer-quickstart" {
    name   = "example-environment"
    region = "LOCATION"
}

Remplacez LOCATION par la région Compute Engine où se trouve l'environnement. Assurez-vous que l'emplacement spécifié est bien celui où Cloud Composer est disponible.

Afficher les détails de l'environnement

Une fois la création de l'environnement terminée, vous pouvez afficher les informations de déploiement de votre environnement, telles que la version de Cloud Composer, l'URL de l'interface Web Airflow et le dossier des DAG dans Cloud Storage.

Pour afficher les informations de déploiement, procédez comme suit :

  1. Dans Cloud Console, accédez à la page "Environnements".

    Ouvrir la page "Environnements"

  2. Pour afficher la page "Détails de l'environnement", cliquez sur example-environment.

Créer un DAG

Un DAG Airflow est un ensemble de tâches organisées que vous souhaitez programmer et exécuter. Les DAG sont définis dans des fichiers Python standards.

Le code Python dans quickstart.py effectue les opérations suivantes :

  1. Il crée un DAG, composer_sample_dag, lequel s'exécute une fois par jour.
  2. Il exécute une tâche, print_dag_run_conf, qui imprime la configuration de l'exécution du DAG à l'aide de l'opérateur bash.

Pour créer un DAG, créez une copie du fichier quickstart.py sur votre machine locale.

import datetime

import airflow
from airflow.operators import bash_operator

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 airflow.DAG(
        'composer_sample_dag',
        '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_operator.BashOperator(
        task_id='print_dag_run_conf', bash_command='echo {{ dag_run.id }}')

Importation du DAG dans Cloud Storage

Cloud Composer ne programme que les DAG qui se trouvent dans le dossier des DAG du bucket Cloud Storage de l'environnement.

Pour programmer votre DAG, déplacez quickstart.py de votre machine locale vers le dossier des DAG de votre environnement :

  1. Dans Cloud Console, accédez à la page "Environnements".

    Ouvrir la page "Environnements"

  2. Pour ouvrir le dossier /dags, cliquez sur le lien Dossier des graphes orientés acycliques pour example-environment.

  3. Sur la page "Informations sur le bucket", cliquez sur Importer des fichiers, puis sélectionnez votre copie locale de quickstart.py.

  4. Pour importer le fichier, cliquez sur Ouvrir.

    Une fois que vous avez importé votre DAG, Cloud Composer l'ajoute à Airflow et le programme immédiatement. L'affichage du DAG dans l'interface Web Airflow peut prendre quelques minutes.

Afficher le DAG dans l'interface Web Airflow

Chaque environnement Cloud Composer possède un serveur Web qui exécute l'interface Web Airflow et que vous pouvez utiliser pour gérer les DAG.

Pour afficher le DAG dans l'interface Web Airflow, procédez comme suit :

  1. Dans Cloud Console, accédez à la page "Environnements".

    Ouvrir la page "Environnements"

  2. Pour ouvrir l'interface Web Airflow, cliquez sur le lien Airflow pour example-environment. L'interface s'ouvre dans une nouvelle fenêtre de navigateur.

  3. Dans la barre d'outils Airflow, cliquez sur DAG.

  4. Pour ouvrir la page de détails des DAG, cliquez sur composer_sample_dag.

    La page du DAG présente l'arborescence, soit une représentation graphique des tâches et des dépendances du workflow.

Afficher les détails de l'instance de tâche dans les journaux Airflow

Le DAG que vous avez programmé inclut la tâche print_dag_run_conf. La tâche imprime la configuration de l'exécution du DAG, que vous pouvez consulter dans les journaux Airflow de l'instance de tâche.

Pour afficher les détails de l'instance de tâche, procédez comme suit :

  1. Dans l'arborescence du DAG figurant dans l'interface Web Airflow, cliquez sur Graph View (Vue graphique).

    Si vous passez la souris sur le graphique de la tâche print_dag_run_conf, son état s'affiche. Notez que la bordure entourant la tâche indique également son état (bordure vert clair = en cours d'exécution).

  2. Cliquez sur la tâche print_dag_run_conf.

    Le menu contextuel de l'instance de tâche s'affiche. Dans ce menu, vous pouvez obtenir des métadonnées et effectuer certaines actions.

  3. Dans le menu contextuel de l'instance de tâche, cliquez sur View Log (Afficher le journal).

  4. Dans le journal, recherchez Running: ['bash' pour voir le résultat de l'opérateur bash.

Nettoyer

Pour éviter que les ressources utilisées dans ce guide démarrage rapide soient facturées sur votre compte Google Cloud, procédez comme suit :

  1. Dans Cloud Console, accédez à la page Gérer les ressources.

    Accéder à la page Gérer les ressources

  2. Si le projet que vous envisagez de supprimer est associé à une organisation, sélectionnez-la dans la liste des organisations en haut de la page.
  3. Dans la liste des projets, sélectionnez le projet que vous souhaitez supprimer, puis cliquez sur Supprimer .
  4. Dans la boîte de dialogue, saisissez l'ID du projet, puis cliquez sur Arrêter pour supprimer le projet.

Vous pouvez également supprimer les ressources utilisées dans ce tutoriel :

  1. Supprimez l'environnement Cloud Composer.
  2. Supprimez le bucket Cloud Storage pour l'environnement Cloud Composer. La suppression de l'environnement Cloud Composer ne supprime pas son bucket.
  3. Supprimez les sujets Pub/Sub pour l'environnement Cloud Composer (composer-agent et composer-backend)). La suppression de l'environnement Cloud Composer ne supprime pas ces sujets.

Étapes suivantes