Cloud Composer 1 est en mode post-maintenance. Google ne publie aucune autre mise à jour de Cloud Composer 1, y compris les nouvelles versions d'Airflow, les corrections de bugs et les mises à jour de sécurité. Nous vous recommandons de planifier la migration vers Cloud Composer 2.
Ce guide de démarrage rapide explique comment créer un environnement Cloud Composer
et exécuter un DAG Apache Airflow dans Cloud Composer 1.
Si vous ne connaissez pas Airflow, consultez la
Tutoriel sur les concepts Airflow dans Apache Airflow
pour en savoir plus sur les concepts, les objets et
leur utilisation.
Connectez-vous à votre compte Google Cloud. Si vous débutez sur Google Cloud, créez un compte pour évaluer les performances de nos produits en conditions réelles. Les nouveaux clients bénéficient également de 300 $ de crédits gratuits pour exécuter, tester et déployer des charges de travail.
Pour obtenir les autorisations nécessaires pour suivre ce guide de démarrage rapide, demandez à votre administrateur de vous accorder les rôles IAM suivants sur votre projet :
Pour afficher, créez et gérez l'environnement Cloud Composer:
<ph type="x-smartling-placeholder">
Dans la liste déroulante Emplacement, sélectionnez une région pour l'environnement Cloud Composer. Ce guide utilise la région us-central1.
Pour les autres options de configuration de l'environnement, utilisez les valeurs par défaut fournies.
Cliquez sur Créer et attendez que l'environnement soit créé.
Une fois l'opération terminée, une coche verte s'affiche à côté du nom de l'environnement.
Créer un fichier DAG
Un DAG Airflow est un ensemble de tâches organisées
que vous voulez planifier et exécuter. Les DAG sont définis dans des fichiers Python standards.
Ce guide utilise un exemple de DAG Airflow défini dans le fichier quickstart.py.
Le code Python de ce fichier effectue les opérations suivantes:
Il crée un DAG, composer_sample_dag, Ce DAG s'exécute tous les jours.
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.
Enregistrez une copie du fichier quickstart.py sur votre ordinateur local:
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 }}"
)
Importer le fichier DAG dans le bucket de votre environnement
Chaque environnement Cloud Composer dispose d'un bucket Cloud Storage
au bucket qui lui est associé. Planifications Airflow dans Cloud Composer uniquement
DAG situés dans le dossier /dags de ce bucket.
Pour planifier votre DAG, importez quickstart.py depuis votre ordinateur local vers votre
dossier /dags de l'environnement:
Dans la console Google Cloud, accédez à la page Environnements.
Dans la liste des environnements, cliquez sur le nom de votre environnement,
example-environment La page Détails de l'environnement s'ouvre.
Cliquez sur Ouvrir le dossier des DAG. La page Informations sur le bucket s'ouvre.
Cliquez sur Importer des fichiers, puis sélectionnez votre copie de quickstart.py.
Pour importer le fichier, cliquez sur Ouvrir.
Afficher le DAG
Une fois le fichier DAG importé, Airflow effectue les opérations suivantes:
Analyse le fichier DAG que vous avez importé. L'opération peut prendre quelques minutes
DAG à mettre à la disposition d'Airflow
Ajoute le DAG à la liste des DAG disponibles.
Exécute le DAG selon la planification que vous avez indiquée dans le fichier DAG.
Pour vérifier que votre DAG est traité sans erreur et qu'il est disponible dans Airflow, procédez comme suit :
dans l'UI du DAG. L'UI du DAG est l'interface Cloud Composer permettant d'afficher
Informations sur le DAG dans la console Google Cloud Cloud Composer fournit aussi
un accès à l'interface utilisateur Airflow, qui est une interface Web Airflow native ;
de commande.
Attendez environ cinq minutes pour laisser à Airflow le temps de traiter le fichier DAG
que vous avez importé précédemment, et pour terminer la première exécution du DAG
(expliqué plus tard).
Dans la console Google Cloud, accédez à la page Environnements.
Dans la liste des environnements, cliquez sur le nom de votre environnement,
example-environment La page Détails de l'environnement s'ouvre.
Accédez à l'onglet DAG.
Vérifier que le DAG composer_quickstart est présent
dans la liste des DAG.
<ph type="x-smartling-placeholder"></ph>
Figure 1 : La liste des DAG affiche
DAG composer_quickstart (cliquez pour agrandir)
Afficher les détails de l'exécution du DAG
Une seule exécution d'un DAG est appelée exécution DAG. Airflow immédiatement
exécute une exécution du DAG pour l'exemple de DAG, car la date de début du fichier DAG est
défini sur hier. De cette façon, Airflow rattrape les
programmation.
L'exemple de DAG contient une tâche, print_dag_run_conf, qui exécute le modèle de DAG echo
dans la console. Cette commande génère des méta-informations sur le DAG
(identifiant numérique de l'exécution du DAG).
Dans l'onglet DAG, cliquez sur composer_quickstart. L'onglet Exécutions de la
Le DAG s'ouvre.
Dans la liste des exécutions du DAG, cliquez sur la première entrée.
<ph type="x-smartling-placeholder"></ph>
Figure 2 : La liste des exécutions de DAG pour
DAG composer_quickstart (cliquez pour agrandir)
Les détails de l'exécution du DAG s'affichent. Il contient des informations sur les individus
de l'exemple de DAG.
<ph type="x-smartling-placeholder"></ph>
Figure 3 : La liste des tâches
qui ont été exécutées dans
Exécution du DAG (cliquez pour agrandir)
La section Journaux de l'exécution du DAG répertorie les journaux de toutes les tâches associées à l'exécution du DAG.
Vous pouvez voir le résultat de la commande echo dans les journaux.
<ph type="x-smartling-placeholder"></ph>
Figure 4 : Journaux de la tâche print_dag_run_conf
(cliquez pour agrandir)
Effectuer un nettoyage
Pour éviter que les ressources utilisées sur cette page soient facturées sur votre compte Google Cloud, procédez comme suit :
Supprimez les ressources utilisées dans ce tutoriel:
Supprimez l'environnement Cloud Composer.
Dans la console Google Cloud, accédez à la page Environnements.
Sélectionnez le bucket de l'environnement, puis cliquez sur Supprimer. Par exemple, ce bucket peut être nommé us-central1-example-environ-c1616fe8-bucket.
Supprimez le disque persistant de la file d'attente Redis de votre environnement. La suppression de l'environnement Cloud Composer ne supprime pas son disque persistant.
Dans la console Google Cloud, accédez à
Compute Engine > Disques :
Sélectionnez le disque persistant de la file d'attente Redis de l'environnement, puis cliquez sur Supprimer.
Par exemple, ce disque peut être nommé
gke-us-central1-exampl-pvc-b12055b6-c92c-43ff-9de9-10f2cc6fc0ee
Les disques pour Cloud Composer 1 disposent toujours du Standard persistent disk
et la taille de 2 Go.
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2024/07/18 (UTC).
[{
"type": "thumb-down",
"id": "hardToUnderstand",
"label":"Hard to understand"
},{
"type": "thumb-down",
"id": "incorrectInformationOrSampleCode",
"label":"Incorrect information or sample code"
},{
"type": "thumb-down",
"id": "missingTheInformationSamplesINeed",
"label":"Missing the information/samples I need"
},{
"type": "thumb-down",
"id": "translationIssue",
"label":"Problème de traduction"
},{
"type": "thumb-down",
"id": "otherDown",
"label":"Autre"
}]
[{
"type": "thumb-up",
"id": "easyToUnderstand",
"label":"Facile à comprendre"
},{
"type": "thumb-up",
"id": "solvedMyProblem",
"label":"J'ai pu résoudre mon problème"
},{
"type": "thumb-up",
"id": "otherUp",
"label":"Autre"
}]