Architecture des environnements

Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3

Cette page décrit l'architecture des environnements Cloud Composer.

Configurations d'architecture des environnements

Les environnements Cloud Composer 3 comportent une configuration unique qui ne dépend pas du type de mise en réseau:

Projets clients et locataires

Lorsque vous créez un environnement, Cloud Composer répartit les ressources de l'environnement entre un projet locataire et un projet client:

  • Le projet client est un projet Google Cloud dans lequel vous créez vos environnements. Vous pouvez créer plusieurs environnements dans un même projet client.

Un projet locataire est un projet locataire géré par Google. Le projet locataire fournit un contrôle des accès unifié et une couche supplémentaire de sécurité des données à votre environnement. Chaque environnement Cloud Composer possède son propre projet locataire.

Composants d'environnement

Un environnement Cloud Composer est constitué de composants d'environnement.

Un composant d'environnement est un élément d'une infrastructure Airflow gérée qui s'exécute sur Google Cloud dans votre environnement. Les composants d'environnement s'exécutent dans le locataire ou dans le projet client de votre environnement.

Bucket de l'environnement

Le bucket de l'environnement est un bucket Cloud Storage qui stocke les DAG, les plug-ins, les dépendances de données et les journaux Airflow. Le bucket de l'environnement se trouve dans le projet client.

Lorsque vous importez vos fichiers DAG dans le dossier /dags du bucket de votre environnement, Cloud Composer synchronise les DAG avec les composants Airflow de votre environnement.

Serveur Web Airflow

Le serveur Web Airflow exécute l'interface utilisateur Airflow de votre environnement.

Cloud Composer permet d'accéder à l'interface en fonction des identités des utilisateurs et des liaisons de stratégie IAM définies pour les utilisateurs.

Base de données Airflow

La base de données Airflow est une instance Cloud SQL qui s'exécute dans le projet locataire de votre environnement. Elle héberge la base de données de métadonnées Airflow.

Pour protéger les informations sensibles de connexion et de workflows, Cloud Composer n'autorise l'accès à la base de données qu'au compte de service de votre environnement.

Autres composants de flux d'air

Voici d'autres composants Airflow qui s'exécutent dans votre environnement:

  • Les planificateurs Airflow analysent les fichiers de définition du DAG, planifient les exécutions de DAG en fonction de l'intervalle de programmation et mettent en file d'attente les tâches que les nœuds de calcul Airflow exécuteront.

  • Les déclencheurs Airflow surveillent de manière asynchrone toutes les tâches différées de votre environnement. Si vous définissez le nombre de déclencheurs dans votre environnement au-dessus de zéro, vous pouvez utiliser des opérateurs différables dans vos DAG.

  • Les processeurs DAG Airflow traitent les fichiers DAG et les transforment en objets DAG. Dans Cloud Composer 3, les processeurs DAG s'exécutent en tant que composants d'environnement distincts.

  • Les nœuds de calcul Airflow exécutent les tâches planifiées par les programmeurs Airflow. Le nombre minimal et maximal de nœuds de calcul dans votre environnement change de manière dynamique en fonction du nombre de tâches dans la file d'attente.

Architecture de l'environnement Cloud Composer 3

Ressources de l'environnement Cloud Composer 3 dans le projet locataire et le projet client
Figure 1. Architecture de l'environnement Cloud Composer 3 (cliquez pour agrandir)

Dans les environnements Cloud Composer 3:

  • Le projet locataire héberge une instance Cloud SQL avec la base de données Airflow.
  • Toutes les ressources Airflow sont exécutées dans le projet locataire.
  • Le projet client héberge le bucket de l'environnement.
  • Un rattachement de réseau VPC personnalisé dans le projet client peut être utilisé pour associer l'environnement à un réseau VPC personnalisé. Vous pouvez utiliser un rattachement existant, ou Cloud Composer peut le créer automatiquement à la demande. Il est également possible de dissocier un environnement d'un réseau VPC.
  • La console Google Cloud, Monitoring et Logging dans le projet client permettent de gérer l'environnement, les DAG et les exécutions de DAG, ainsi que d'accéder aux métriques et aux journaux de l'environnement. Vous pouvez également utiliser l'interface utilisateur Airflow, la Google Cloud CLI, l'API Cloud Composer et Terraform aux mêmes fins.

Intégration à Cloud Logging et Cloud Monitoring

Cloud Composer s'intègre à Cloud Logging et à Cloud Monitoring pour votre projet Google Cloud, ce qui vous permet de consulter les journaux Airflow et DAG au même endroit.

Cloud Monitoring collecte et ingère des métriques, des événements et des métadonnées à partir de Cloud Composer pour générer des insights via des tableaux de bord et des graphiques.

En raison de la nature par flux de Cloud Logging, vous pouvez afficher immédiatement les journaux émis par les composants Airflow au lieu d'attendre que les journaux Airflow apparaissent dans le bucket Cloud Storage de votre environnement.

Pour limiter le nombre de journaux dans votre projet Google Cloud, vous pouvez arrêter l'ingestion de tous les journaux. Ne désactivez pas Logging.

Étapes suivantes