Définir des variables d'environnement

Cette page décrit les exigences relatives à la configuration de variables d'environnement dans Cloud Composer.

Lorsque vous créez ou mettez à jour un environnement, vous pouvez ajouter des variables d'environnement, que Cloud Composer fournit aux processus de planification, de nœud de calcul et de serveur Web Apache Airflow. Par exemple, Cloud Composer utilise le module sendgrid Apache Airflow pour les notifications par e-mail. Pour configurer les notifications par e-mail, vous devez définir les variables d'environnement SENDGRID_API_KEY et SENDGRID_MAIL_FROM.

Exigences

Les variables d'environnement doivent correspondre à l'expression régulière [a-zA-Z_][a-zA-Z0-9_]*.

Les variables d'environnement ne doivent pas spécifier les remplacements de configuration du logiciel Apache Airflow. Cela signifie qu'elles ne peuvent pas utiliser le format $AIRFLOW__{SECTION}__{KEY} ni correspondre à l'expression régulière AIRFLOW__[A-Z0-9_]+__[A-Z0-9_]+) .

Noms réservés

Les noms suivants sont réservés et ne peuvent pas être utilisés :

  • AIRFLOW_HOME
  • C_FORCE_ROOT
  • COMPOSER_ENVIRONMENT
  • COMPOSER_GKE_NAME
  • COMPOSER_GKE_ZONE
  • COMPOSER_LOCATION
  • COMPOSER_PYTHON_VERSION
  • CONTAINER_NAME
  • DAGS_FOLDER
  • GCP_PROJECT
  • GCS_BUCKET
  • GKE_CLUSTER_NAME
  • GOOGLE_APPLICATION_CREDENTIALS
  • SQL_DATABASE
  • SQL_INSTANCE
  • SQL_PASSWORD
  • SQL_PROJECT
  • SQL_REGION
  • SQL_USER

Avant de commencer

  • Les autorisations suivantes sont requises pour définir les variables d'environnement :

    • composer.environments.create, pour définir des variables d'environnement lors de la création de l'environnement
    • composer.environments.update, pour mettre à jour des variables d'environnement

      Pour en savoir plus, reportez-vous à la section Contrôle des accès Cloud Composer.

  • La plupart des commandes gcloud composer nécessitent un emplacement. Vous pouvez le spécifier à l'aide de l'option --location ou en définissant l'emplacement par défaut.

Ajouter et mettre à jour des variables d'environnement

Pour définir des variables d'environnement, procédez comme suit :

Console

Pour ajouter une variable d'environnement, procédez comme suit :

  1. Ouvrez la page Créer un environnement dans Google Cloud Console.

    Ouvrir la page Créer un environnement

  2. Sous Configuration des nœuds, cliquez sur Ajouter une variable d'environnement.

  3. Renseignez les éléments NAME et VALUE pour les variables d'environnement.

gcloud

gcloud composer environments update ENVIRONMENT_NAME \
  --location LOCATION \
  --update-env-variables=KEY=VALUE,KEY=VALUE...

Où :

  • ENVIRONMENT_NAME est le nom de l'environnement.
  • LOCATION est la région Compute Engine dans laquelle se trouve l'environnement.
  • KEY=VALUE spécifie les variables d'environnement à créer ou à mettre à jour.

Exemple :

gcloud composer environments update test-environment 
--location us-central1
--update-env-variables=SENDGRID_MAIL_FROM=updated-email@domain.com

API

Pour utiliser l'API REST Cloud Composer, exécutez environments.patch.

Supprimer des variables d'environnement

Pour supprimer des variables d'environnement, procédez comme suit :

Console

  1. Ouvrez la page Environnements.

    Ouvrir la page Environnements

  2. Sur la page Répertorier des environnements, cliquez sur le nom de l'environnement pour afficher ses détails.
  3. Sous Variables d'environnement, cliquez sur Modifier.
  4. À droite de la valeur de variable, cliquez sur l'icône de corbeille.

gcloud

Pour supprimer toutes les variables d'environnement, procédez comme suit :

gcloud composer environments update ENVIRONMENT_NAME 
--location LOCATION
--clear-env-variables

où :

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

Exemple :

gcloud composer environments update test-environment 
--location us-central1
--clear-env-variables

Pour supprimer une liste de variables d'environnement, procédez comme suit :

gcloud composer environments update ENVIRONMENT_NAME 
--location LOCATION
--remove-env-variables=NAME,NAME,...
où :

  • ENVIRONMENT_NAME est le nom de l'environnement.
  • LOCATION est la région Compute Engine dans laquelle se trouve l'environnement.
  • NAME est la variable d'environnement à supprimer.

API

Pour utiliser l'API REST Cloud Composer, exécutez environments.patch.