Containers-roadmap: Feature Request: Blue/Green Deployments

Created on 13 Dec 2019  路  6Comments  路  Source: aws/containers-roadmap

Tell us about your request
Support for blue/green deployments of ECS/Fargate in AppMesh

Which integration(s) is this request for?
Fargate, ECS

Tell us about the problem you're trying to solve. What are you trying to do, and why is it hard?
We need to implement blue/green deployment for our containers running inside AppMesh.
Recently support has been added in CodeDeploy to perform blue/green in ECS/Fargate (link). This however is based around Load Balancers and Target Groups. We would like this support to include AppMesh routing as well.

Are you currently working around this issue?
Using custom scripts to perform deployments.

ECS

Most helpful comment

@shubharao Integration with Spinnaker would be very attractive as it would allow customers to keep their Spinnaker pipeline structure the same and more easily migrate to App Mesh.

All 6 comments

Integration with CodeDeploy is on our radar as a customer ask but we do not have a clear path to get this resourced/prioritized in the near term. However, we are evaluating how to provide a more native deployment experience with ECS.

@gdowmont Are you using CodeDeploy? App mesh has started adding more deployment integrations - we worked with Weaveworks on a Flagger integration and plan to evaluate Spinnaker and Jenkins work this year. Would like to hear more from you (and other customers who are reading this thread) on what would be most helpful.

@shubharao Integration with Spinnaker would be very attractive as it would allow customers to keep their Spinnaker pipeline structure the same and more easily migrate to App Mesh.

@shubharao Codedeploy blue-green does the old task set termination after the waiting period or after any set of conditions.
Appmesh on the other side routes traffic conditionally b/w multiple task definitions.
Is there a way to integrate them together as a pipeline?

@shubharao integration with Spinnaker would definitely be helpful... we are already using it for ecs/fargate and appmesh is being evaluated.. with this integration there is one less thing to worry about :)

@shubharao I have started implementing CodeDeploy this week as we are currently using ALB with target group/listener for each service as our ingress (until virtual gateway goes to GA). It works very well for adding new Fargate containers to new target group and shifting the traffic across.

However this does not work with app mesh. New instances are added to the same virtual node as existing version so the traffic inside the mesh is receiving both versions at the same time.

Also, when we switch from ALB to use virtual gateway, we will lose the ability to use Codedeploy since it depends on target groups. You have mentioned Flagger and Spinnaker, but we are interesting in using native tool that works really well for all other use cases.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

yinshiua picture yinshiua  路  3Comments

jeremietharaud picture jeremietharaud  路  3Comments

pauldougan picture pauldougan  路  3Comments

groodt picture groodt  路  3Comments

ORESoftware picture ORESoftware  路  3Comments