Comment transmettre des variables de mon environnement Elastic Beanstalk vers des instances Linux et Windows ?

Lecture de 3 minute(s)
0

Je veux transmettre des variables de mon environnement AWS Elastic Beanstalk vers des instances Amazon Elastic Compute Cloud (Amazon EC2) Linux et Windows.

Brève description

Vous pouvez transmettre des variables d'environnement aux instances Amazon EC2 en utilisant les éléments suivants :

Remarque : si vous recevez des erreurs lors de l'exécution des commandes AWS CLI, assurez-vous que vous utilisez la version la plus récente d'AWS CLI.

Solution

Important : pour transmettre des informations confidentielles à l'instance (par exemple, un mot de passe de base de données), suivez les instructions de la section Stockage sécurisé des clés privées dans Amazon S3.

Transmission de vos variables d'environnement

Choisissez l'une des méthodes suivantes pour transmettre vos variables d'environnement.

Utilisation de la console Elastic Beanstalk

Pour transmettre vos variables d'environnement à l'aide de la console, suivez les instructions de la section Configuration des propriétés de l'environnement.

Important : assurez-vous de prendre en compte les limites des propriétés de l'environnement.

Utilisation de la CLI EB

Pour définir une variable d'environnement dans l'interface de la ligne de commande EB, exécutez la commande suivante :

eb setenv key=value

Dans l'exemple suivant, la variable d'environnement ExampleVar est définie :

$ eb setenv ExampleVar=ExampleValue
2018-07-11 21:05:25    INFO: Environment update is starting.
2018-07-11 21:05:29    INFO: Updating environment tmp-dev's configuration settings.
2018-07-11 21:06:50    INFO: Successfully deployed new configuration to environment.
2018-07-11 21:06:51    INFO: Environment update completed successfully.

Pour définir plusieurs propriétés de l'environnement, utilisez la commande suivante :

$ eb setenv foo=bar JDBC_CONNECTION_STRING=hello PARAM4= PARAM5=

Utilisation des paramètres d'option

Vous pouvez utiliser les fichiers de configuration Elastic Beanstalk pour définir les propriétés de l'environnement ainsi que les options de configuration dans votre code source.

Pour définir les propriétés d'environnement, utilisez l'espace de noms aws:elasticbeanstalk:application:environment.

Consultez l'exemple .ebextensions/options.config suivant :

option_settings:
  aws:elasticbeanstalk:application:environment:
    API_ENDPOINT: www.example.com/api

Pour définir les propriétés de l'environnement dans l'AWS CLI, exécutez la commande suivante :

$ aws elasticbeanstalk update-environment --environment-name my-env --option-settings file://options.json

Par exemple :

[
  {
    "Namespace": "aws:elasticbeanstalk:application:environment",
    "OptionName": "API_ENDPOINT",
    "Value": "www.example.com/api"
  },
  {
    "Namespace": "aws:elasticbeanstalk:application:environment",
    "OptionName": "URL",
    "Value": "http://myurl.com"
  }
]

Accès à vos variables d'environnement

Remarque : même si elles sont présentes dans l'instance, les propriétés de l'environnement ne sont pas exportées automatiquement vers le shell. Cependant, elles sont mises à la disposition de l'application via la pile dans laquelle elle s'exécute, en fonction de la plateforme que vous utilisez.

Pour accéder à vos variables d'environnement, veuillez consulter la section Accès aux propriétés de l'environnement.

Pour accéder à vos variables d'environnement en dehors du code d'application (par exemple, dans un script qui s'exécute pendant le déploiement), utilisez le script de plateforme get.config ou la fonction Fn::GetOptionSetting.

Pour les instances Windows, les propriétés de l'environnement sont transmises de C:\ProgramFiles\Amazon\ElasticBeanstalk\config\containerconfiguration au serveur Microsoft Internet Information Services (IIS). Avertissement : cet emplacement de fichier est soumis au cadre Elastic Beanstalk et peut être modifié sans avertissement.


AWS OFFICIEL
AWS OFFICIELA mis à jour il y a un an