Création de liens entre les environnements Elastic Beanstalk - AWS Elastic Beanstalk

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Création de liens entre les environnements Elastic Beanstalk

A mesure que votre application se développe en taille et en complexité, vous pourrez souhaiter la diviser en composants ayant différents cycle de vie opérationnels et de développement. En exécutant des services plus petits qui interagissent les uns avec les autres via une interface bien définie, les équipes peuvent travailler de manière indépendante et réduire les risques lors des déploiements. AWS Elastic Beanstalk vous permet de lier vos environnements pour partager des informations entre les composants qui dépendent les uns des autres.

Note

Elastic Beanstalk prend en charge actuellement des liens d'environnement pour toutes les plateformes, sauf Multicontainer Docker.

Les liens d'environnement vous permettent de spécifier les connexions entre les environnements de composants de votre application en tant que références désignées. Lorsque vous créez un environnement qui définit un lien, Elastic Beanstalk définit une variable d'environnement portant le même nom que le lien. La valeur de la variable est le point de terminaison que vous pouvez utiliser pour vous connecter à l'autre composant qui peut être un environnement de travail ou de serveur web.

Par exemple, si votre application est constituée d'un serveur frontal qui collecte des adresses e-mail et d'un serveur de travail qui envoie un e-mail de bienvenue aux adresses de messagerie collectées par le serveur frontal, vous pouvez créer un lien vers le serveur de travail dans votre serveur frontal et permettre à ce dernier de découvrir automatiquement le point de terminaison (URL de file d'attente) pour votre serveur de travail.

Définissez les liens vers d'autres environnements dans un manifeste d'environnement, un fichier formaté YAML nommé env.yaml à la racine de la source de votre application. Le manifeste suivant définit un lien vers un serveur de travail nommé de l'environnement :

~/workspace/my-app/frontend/env.yaml

AWSConfigurationTemplateVersion: 1.1.0.0 EnvironmentLinks: "WORKERQUEUE": "worker"

Lorsque vous créez un environnement avec une version de l'application qui inclut le manifeste d'environnement ci-dessus, Elastic Beanstalk recherche un environnement nommé worker qui appartient à la même application. Si cet environnement existe, Elastic Beanstalk crée une propriété d'environnement nommée WORKERQUEUE. La valeur de WORKERQUEUE est l'URL de file d'attente Amazon SQS. L'application frontale peut lire cette propriété de la même manière qu'une variable d'environnement. Consultez Manifeste d'environnement (env.yaml) pour plus de détails.

Pour utiliser les liens d'environnement, ajoutez un manifeste d'environnement à la source de votre application et chargez-le à l'aide de l'interface de ligne de commande EB AWS CLI ou d'un SDK. Si vous utilisez le AWS CLI ou un SDK, définissez l'processindicateur lorsque vous appelez CreateApplicationVersion :

$ aws elasticbeanstalk create-application-version --process --application-name my-app --version-label frontend-v1 --source-bundle S3Bucket="DOC-EXAMPLE-BUCKET",S3Key="front-v1.zip"

Cette option indique à Elastic Beanstalk de valider les fichiers de configuration et le manifeste d'environnement de votre groupe source lorsque vous créez la version d'application. Les ensembles de l'interface de ligne de commande EB définissent automatiquement cet indicateur lorsque vous avez un manifeste d'environnement dans le répertoire de votre projet.

Créez vos environnements normalement à l'aide de n'importe quel client. Lorsque vous avez besoin de mettre fin à des environnements, résiliez l'environnement avec le lien en premier. Si un environnement est lié à un autre environnement, Elastic Beanstalk empêche l'arrêt de l'environnement lié. Pour remplacer cette protection, utilisez l'indicateur ForceTerminate. Ce paramètre est disponible dans l' AWS CLI en tant que --force-terminate :

$ aws elasticbeanstalk terminate-environment --force-terminate --environment-name worker