Quelqu'un sait-il s'il est possible de changer un environnement AWS Elastic Beanstalk existant en un équilibreur de charge d'application (au lieu d'un classique).
Pour autant que je sache, seules les ELB d'application peuvent être protégées avec AWS WAF et DDOS "Shield", de sorte que toute application EB existante ne peut pas tirer parti de ces fonctionnalités car elles disposent d'ELB classiques.
Bonjour selon la documentation AWS:
La console de gestion de l'environnement Elastic Beanstalk prend uniquement en charge la création et la gestion d'un environnement Elastic Beanstalk avec un équilibreur de charge classique. Pour d'autres options, voir Application Load Balancer et Network Load Balancer.
Aussi
Remarque Vous ne pouvez définir le type d'équilibreur de charge que lors de la création de l'environnement. ( Reportez-vous à la documentation d'AWS )
Ainsi, lorsque vous déployez l'application sur Elastic Beanstalk via AWS CLI :
Essayer
eb create test-env --elb-type network
ou
eb create test-env --elb-type application
Il n'est pas possible de modifier le type d'équilibreur de charge pour un environnement existant, mais j'ai utilisé le processus suivant pour créer un environnement cloné avec un équilibreur de charge d'application (au lieu de classique).
eb config get [save name]
, vous obtiendrez un fichier dans .elasticbeanstalk\saved_configs
.OptionSettings: aws:elasticbeanstalk:environment: LoadBalancerType: application
et supprimez (si vous en avez):
aws:elb:loadbalancer: CrossZone: true aws:elb:policies: ConnectionDrainingEnabled: true aws:elb:listener:443: [whatever]
Vous pouvez utiliser cette opportunité pour effectuer d'autres modifications, telles que la mise à niveau PlatformArn
eb config put [new save name]
..ebextensions
avoir LoadBalancerType: application
et éventuellement ajouter un écouteur à elbv2. Vous pouvez également créer manuellement dans la console ultérieurement.aws:elbv2:listener:443: ListenerEnabled: true SSLPolicy: ELBSecurityPolicy-TLS-1-2-2017-01 SSLCertificateArns: [your cert id] DefaultProcess: default Protocol: HTTPS Rules: ''
eb create [new env name] --cfg [new save name]
Vous allez maintenant avoir un nouvel environnement avec un type d'équilibreur de charge différent côte à côte avec votre ancien environnement. Vous pouvez effectuer des tests, effectuer d'autres modifications de configuration, puis si tout va bien, permuter les CNAME et mettre fin à l'environnement précédent.
Le moyen le plus simple que j'ai trouvé pour modifier une application existante pour utiliser l'équilibreur de charge d'application est d'utiliser à la fois la console et la CLI:
<saved-config-name>
.<app-version>
.eb create <new-environment-name> --elb-type application --cfg <saved-config-name> --version <app-version>