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 2 peuvent avoir les configurations d'architecture suivantes :

Projets clients et locataires

Lorsque vous créez un environnement, Cloud Composer distribue les entre les projets d'un locataire et d'un 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 la sécurité des données dans votre environnement. Chaque instance Cloud Composer dispose 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. Environnement s'exécutent dans le locataire ou dans le projet client 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 sont effectuées pendant les intervalles de maintenance que vous spécifiez 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. Environnement bucket se trouve dans le projet client.

Lorsque vous importez vos fichiers DAG dans le dossier /dags de votre bucket d'un 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 donne accès à l'interface en fonction du nombre d'utilisateurs les identités et les 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 programmeurs Airflow analysent les fichiers de définition des DAG et planifient les exécutions de DAG en fonction de l'intervalle de planification, et met les tâches en file d'attente pour exécution Nœuds de calcul Airflow. Dans Cloud Composer 2 Les processeurs DAG Airflow s'exécutent dans les composants du programmeur.

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

  • Les nœuds de calcul Airflow exécutent des tâches planifiées par Airflow. les planificateurs. 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

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

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'un environnement IP privé

Adresse IP privée avec des ressources d'environnement Cloud Composer PSC dans le projet locataire et le projet client (cliquez pour agrandir)
Figure 2. Ressources de l'environnement Cloud Composer d'adresse IP privée dans le projet locataire et le projet client (cliquez pour agrandir)

Par défaut, Cloud Composer 2 utilise Private Service Connect pour que votre Les environnements IP privés communiquent en interne sans utiliser de VPC. d'appairage réseau VPC. Il est également possible d'utiliser des appairages de VPC au lieu Private Service Connect dans votre environnement. Il s'agit d'un autre que celle par défaut.

Dans l'architecture de l'environnement IP privé:

  • 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 très résiliente

Ressources de l'environnement IP privé hautement résilientes dans le projet locataire et le projet client (cliquez pour agrandir)
Figure 3. Ressources de l'environnement Cloud Composer d'adresse IP privée hautement résiliente dans le projet locataire et le projet client (cliquez pour agrandir)

Les environnements Cloud Composer hautement résilients sont Cloud Composer 2 qui utilisent des mécanismes de redondance et de basculement intégrés qui réduisent la vulnérabilité de l'environnement aux défaillances de zone et au point de défaillance unique en cas d'interruption de service.

Dans ce type d'environnement IP privé:

  • Une instance Cloud SQL de votre environnement est configurée pour atteindre des disponibilité (instance régionale). Dans une instance régionale, se compose d'une instance principale et d'une instance de secours.
  • Votre environnement exécute deux programmeurs Airflow, deux serveurs Web, et au moins deux déclencheurs (jusqu'à dix au total) si vous en utilisez. 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 répartit les instances de nœuds de calcul entre les zones. En cas de panne de zone, les instances de nœuds de calcul concernées sont replanifiées dans une zone différente.

Intégration à Cloud Logging et Cloud Monitoring

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

Cloud Monitoring collecte et ingère des métriques, des événements et des métadonnées de Cloud Composer générer des insights à l'aide de tableaux de bord et de 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.

Étape suivante