Mettre à jour les environnements

Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3

Cette page explique comment mettre à jour un environnement.

À propos des opérations de mise à jour

Lorsque vous modifiez les paramètres de votre environnement, par exemple lorsque vous spécifiez un nouveau scaling et de performances ou l'installation de packages PyPI personnalisés, les mises à jour de l'environnement.

Une fois cette opération terminée, les modifications deviennent disponibles dans votre environnement.

Pour un environnement Cloud Composer, vous ne pouvez en démarrer qu'un plusieurs opérations à la fois. Vous devez attendre la fin d'une opération de mise à jour avant de lancer une autre opération d'environnement.

Impact des mises à jour sur l'exécution des tâches Airflow

Lorsque vous exécutez une opération de mise à jour, telle que l'installation packages PyPI personnalisés, et tous les planificateurs et nœuds de calcul Airflow de votre environnement. redémarrer, et toutes les tâches en cours d’exécution sont arrêtées. Après la mise à jour est terminée, Airflow planifie une nouvelle tentative pour ces tâches, en fonction de la configuration des tentatives pour vos DAG.

Effectuer une mise à jour avec Terraform

Exécutez terraform plan avant terraform apply pour voir si Terraform crée un objet au lieu de le mettre à jour.

Avant de commencer

Mettre à jour les environnements

Pour en savoir plus sur la mise à jour de votre environnement, consultez d'autres documents sur des opérations de mise à jour spécifiques. Exemple :

Afficher les détails de l'environnement

Console

  1. Dans la console Google Cloud, accédez à la page Environnements.

    Accéder à la page Environnements

  2. Dans la liste des environnements, cliquez sur le nom de votre environnement. La page Détails de l'environnement s'ouvre.

gcloud

Exécutez la commande gcloud suivante :

gcloud composer environments describe ENVIRONMENT_NAME \
  --location LOCATION

Remplacez :

  • ENVIRONMENT_NAME par le nom de l'environnement.
  • LOCATION par la région dans laquelle se trouve l'environnement.

API

Rédigez une requête API environments.get.

Exemple :

GET https://composer.googleapis.com/v1/projects/example-project/
locations/us-central1/environments/example-environment

Terraform

Exécutez la commande terraform state show pour la ressource de votre environnement.

Le nom de la ressource Terraform de votre environnement peut être différent de celui nom de votre environnement.

terraform state show google_composer_environment.RESOURCE_NAME

Remplacez :

  • RESOURCE_NAME par le nom de la ressource de votre environnement.

Effectuer un rollback des modifications de mise à jour

Dans de rares cas, une opération de mise à jour peut être interrompue (en raison d'un délai d'inactivité, par exemple) et que les modifications demandées ne soient pas effectué un rollback dans tous les composants de l'environnement (tels que le serveur Web Airflow).

Par exemple, une opération de mise à jour peut consister à installer ou à supprimer des modules PyPI, redéfinir ou définir un nouvel environnement Airflow ou Cloud Composer ; la variable d'environnement ou la modification de certains paramètres associés à Airflow.

Une telle situation peut se produire si une opération de mise à jour est déclenchée alors que d'autres des opérations sont en cours, par exemple l'API Cloud Composer un autoscaling ou une opération de maintenance.

Dans ce cas, il est recommandé de répéter l'opération.

Durée des opérations de mise à jour ou de mise à niveau

La plupart des opérations de mise à jour nécessitent le redémarrage des composants Airflow. comme les programmeurs, les nœuds de calcul et les serveurs Web Airflow.

Une fois qu'un composant a redémarré, il doit être initialisé. Pendant le l'initialisation, les programmeurs et les nœuds de calcul Airflow téléchargent le contenu de /dags. et /plugins du bucket de l'environnement. Processus de synchronisation vers les programmeurs et les nœuds de calcul Airflow ne sont pas instantanés et dépendent de la taille totale et le nombre de tous les objets dans ces dossiers.

Nous vous recommandons de ne conserver que les fichiers DAG et de plug-in dans /dags et /plugins. dossiers (respectivement) et supprimer tous les autres fichiers. Trop de données dans les dossiers /dags et /plugins peut ralentir l'initialisation d'Airflow et, dans certains cas, peut rendre l'initialisation impossible.

Nous vous recommandons de conserver moins de 30 Mo de données dans les dossiers /dags et /plugins, et de ne pas dépasser 100 Mo.

Pour en savoir plus, consultez également:

Mettre à niveau le type de machine pour les nœuds GKE

Vous pouvez mettre à niveau manuellement le type de machine pour l'environnement cluster GKE en supprimant les classes default-pool existantes et en en créant un nouveau default-pool avec le type de machine souhaité.

Nous vous recommandons de spécifier un type de machine adapté au type de calcul qui s'exécutent dans votre environnement Cloud Composer lorsque vous créer un environnement.

Si vous exécutez des tâches qui effectuent des calculs gourmands en ressources, vous pouvez Vous souhaitez utiliser des opérateurs GKE.

Après une mise à niveau, le type de machine précédent est toujours répertorié dans votre les détails de l'environnement. Par exemple, la page "Détails de l'environnement" ne reflète pas le nouveau type de machine.

Console

Pour mettre à jour le type de machine, procédez comme suit :

  1. Dans la console Google Cloud, accédez à la page Environnements.

    Accéder à la page Environnements

  2. Dans la liste des environnements, cliquez sur le nom de votre environnement. La page Détails de l'environnement s'ouvre.

  3. Obtenez des informations sur le pool de nœuds par défaut:

    1. Accédez à l'onglet Configuration de l'environnement.

    2. Cliquez sur le lien Afficher les détails du cluster.

    3. Dans la section Nœuds de la page Clusters, cliquez sur default-pool.

    4. Notez toutes les informations concernant le pool par défaut default-pool dans les détails du pool de nœuds. . Ces informations vous serviront à créer un pool de nœuds par défaut pour votre environnement.

  4. Pour supprimer default-pool:

    1. Sur la page Détails du pool de nœuds, cliquez sur la flèche de retour pour revenir à la page Clusters de votre environnement.

    2. Dans la section Pools de nœuds, cliquez sur l'icône Corbeille associée au pool default-pool. Cliquez ensuite sur Supprimer pour confirmer l'opération.

  5. Pour créer le nouveau pool default-pool, procédez comme suit :

    1. Sur la page Clusters, cliquez sur Ajouter un pool de nœuds.

    2. Dans le champ "Nom", saisissez default-pool. Vous devez utiliser le nom default-pool afin que les workflows de votre environnement puissent s'exécuter dans ce pool.

    3. Saisissez les paramètres "Taille" et "Nœuds".

    4. (Uniquement pour les comptes de service Compute Engine par défaut) Pour l'accès sélectionnez Autoriser l'accès complet à l'ensemble des API Cloud.

    5. Cliquez sur Enregistrer.

  6. Si vous remarquez que les charges de travail sont réparties de manière inégale, réduire d'airflow-worker à zéro et d'effectuer un nouveau scaling à la hausse.

Étape suivante