Change Elastic Beanstalk ALB from internal to public internet-facing?

0

Hi,

I have an EB stack which initially deploys to UAT internally and so has an internal load balancer (YAML: "LoadBalancerScheme: internal"). For production deployment, we simply change stage variables called by the YAML, so it updates the EB with production values. This works fine with classic ELB. But with ALB (ELBv2), it fails with:

The following target groups cannot be associated with more than one load balancer Is it not possible to change an existing EB environment from internal to public load balancer of the same type? If not, any good workarounds without deploying a completely separate environment (which is what I've been doing)?

Thanks

1 Antwort
0
Akzeptierte Antwort

Hey there, You mention that you are trying to change an Elastic Beanstalk ALB from internal to public internet-facing.

With that being said unfortunately it is not possible to change the Application Load Balancer from an internal Load Balancer to a public Load Balancer. The only way it can be changed is by creating a new Application Load Balancer to replace the current ALB. Since you created your environment with Elastic Beanstalk you will also need to create a new environment with the same app code but with a public ALB. Using Elastic Beanstalk helps avoid downtime.

To minimise downtime or to get no downtime in changing from an internal to public load balancer, you may use of blue-green deployments [1]. In order to use blue-green deployments you will have to create a new environment with the configuration you want , in your use case using an internet facing load balancer. When the environment is done deploying, you can perform testing to make sure that the environment is working as expected. Once this is done, you can simply swap the URL of the two environments by choosing the option in the 'Actions' tab in the new environment.

References:

[1] https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/using-features.CNAMESwap.html

Antonio
beantwortet vor 2 Jahren
  • Thanks, I figured that was the case, since I've never been able to get around it. Pretty ridiculous limitation that EB as an orchestration tool can't simply replace the ALB with another ALB without a whole new environment, which is why I figured I'd ask, in case I was missing a workaround. So I guess I'll stick with blue/green as usual.

Du bist nicht angemeldet. Anmelden um eine Antwort zu veröffentlichen.

Eine gute Antwort beantwortet die Frage klar, gibt konstruktives Feedback und fördert die berufliche Weiterentwicklung des Fragenstellers.

Richtlinien für die Beantwortung von Fragen