Cloud Composer 3 | Cloud Composer 2 | Cloud Composer 1
Cette page décrit l'architecture des environnements Cloud Composer.
Configurations d'architecture des environnements
Les environnements Cloud Composer 2 peuvent avoir les configurations d'architecture suivantes :
- Architecture IP publique
- Architecture IP privée
- Architecture d'adresse IP privée hautement résiliente
Projets clients et locataires
Lorsque vous créez un environnement, Cloud Composer répartit les ressources de celui-ci 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 offre un contrôle d'accès unifié et une couche de sécurité des données supplémentaire pour 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 Clouddans votre environnement. Les composants d'environnement s'exécutent dans le projet locataire ou dans le projet client de votre environnement.
Cluster de l'environnement
Le cluster de l'environnement est un cluster Google Kubernetes Engine VPC natif en mode Autopilot :
Par défaut, Cloud Composer active les mises à niveau automatiques des nœuds et la réparation automatique des nœuds afin de protéger le cluster de votre environnement contre les failles de sécurité. Ces opérations se produisent pendant les intervalles de maintenance que vous spécifiez pour 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 d'Airflow de votre environnement.
Cloud Composer fournit un accès à l'interface en fonction des identités utilisateur 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 Airflow
Voici d'autres composants Airflow qui s'exécutent dans votre environnement:
Les planificateurs Airflow analysent les fichiers de définition de 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. Dans Cloud Composer 2, les processeurs DAG Airflow s'exécutent dans le cadre des composants du planificateur.
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 sur une valeur supérieure à zéro, vous pouvez utiliser des opérateurs différables dans vos DAG.
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 d'environnement IP public
Une architecture d'environnement IP public pour Cloud Composer 2 présente les caractéristiques suivantes :
- Le projet locataire héberge une instance Cloud SQL et un espace de stockage Cloud SQL.
- Le projet client héberge tous les autres composants de l'environnement.
- Les programmeurs et les nœuds de calcul Airflow du projet client communiquent avec la base de données Airflow via une instance de proxy Cloud SQL située dans le projet client.
Architecture d'environnement IP privé
Par défaut, Cloud Composer 2 utilise Private Service Connect afin que vos environnements d'adresses IP privées communiquent en interne sans appairage de VPC. Vous pouvez également utiliser des appairages VPC au lieu de Private Service Connect dans votre environnement. Il s'agit d'une option non par défaut.
Dans l'architecture d'environnement d'adresse IP privée:
- Le projet locataire héberge une instance Cloud SQL et un espace de stockage Cloud SQL.
- Le projet client héberge tous les autres composants de l'environnement.
- Les programmeurs et les nœuds de calcul Airflow se connectent à la base de données Airflow via le point de terminaison PSC configuré.
Architecture d'adresse IP privée hautement résiliente
Les environnements Cloud Composer hautement résilients sont des environnements Cloud Composer 2 qui utilisent des mécanismes de redondance et de basculement intégrés qui réduisent la sensibilité de l'environnement aux défaillances zonales et aux pannes liées à un point de défaillance unique.
Dans ce type d'environnement d'adresse IP privée:
- Une instance Cloud SQL de votre environnement est configurée pour la haute disponibilité (il s'agit d'une instance régionale). Au sein d'une instance régionale, la configuration se compose d'une instance principale et d'une instance de secours.
- Votre environnement exécute deux planificateurs Airflow, deux serveurs Web et, si des déclencheurs sont utilisés, au moins deux (jusqu'à dix au total). Ces paires de composants s'exécutent dans deux zones distinctes.
- Le nombre minimal de nœuds de calcul est défini sur deux, et le cluster de votre environnement distribue les instances de nœuds de calcul entre les zones. En cas de panne dans une zone, les instances de nœud de calcul concernées sont reprogrammées dans une autre zone.
Intégration à Cloud Logging et Cloud Monitoring
Cloud Composer s'intègre à Cloud Logging et à Cloud Monitoring de votre Google Cloud projet afin de centraliser l'affichage des journaux Airflow et DAG.
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.
Comme Cloud Logging fonctionne en flux continu, vous pouvez afficher immédiatement les journaux émis par les composants Airflow au lieu d'attendre qu'ils apparaissent dans le bucket Cloud Storage de votre environnement.
Pour limiter le nombre de journaux dans votre Google Cloud projet, vous pouvez arrêter l'ingestion de tous les journaux. Ne désactivez pas Logging.