Live data from Hacker News

AWS CloudFormation now supports blue/green deployments for Amazon ECS

aws.amazon.com

21–30 of 80 posts

Re: AWS CloudFormation now supports blue/green deployments for Amazon ECS

#21
post #4
post #2

The ECS default deployment model is quite frankly a disaster. I've written many Python/Go scripts over the years to wrangle it into a sensible form for CI/CD. Good to see that they're working on it, but I don't know why they don't fix the underlying paradigm instead of making it Cloudformation exclusive.

I would love to know what the problem is. We do dozen of deployments every week with a ALB + ECS + Fargate setup. We upload a new container image, create a new task and launch as many tasks as desired (so if we want 2 containers running we launch 2, for a total of 4). ALB calls the /health endpoints on the new containers and if they pass the healthchecks it drains connections to the old containers and stops the tasks…

The default model works for most use cases, but it's not really flexible for non-standard cases and it fails completely at larger scale. If you have a few dozen containers taking 100,000 requests per second and you want to slow warm them with a segment of traffic for example, it's much easier to do on Kube than on ECS. ECS is also possible but it's just not as transparent or easy to work with.

Re: AWS CloudFormation now supports blue/green deployments for Amazon ECS

#22
post #2

The ECS default deployment model is quite frankly a disaster. I've written many Python/Go scripts over the years to wrangle it into a sensible form for CI/CD. Good to see that they're working on it, but I don't know why they don't fix the underlying paradigm instead of making it Cloudformation exclusive.

We haven't had any problems, but our workload is mostly async background work. Our CI pushes master when it passes, running a simple script to push to ECR with a git SHA tag, update the task to use the latest image, and then update the service to the latest task definition. It takes 2 lines of bash to update the task definition, and 2 lines to run the AWS commands.

Yeah for the standard vanilla case it's ok. As soon as you hit a certain scale or need to do anything non-standard it becomes much harder to work with.

Re: AWS CloudFormation now supports blue/green deployments for Amazon ECS

#23

Earlier quoted context omitted.

Exactly this - I think internally there is a tussle on what is the strategic way forward. There are so many - Elastic Beanstalk, ECS, EKS, ECS-on-Fargate, EKS-on-Fargate..and of course the huge marketing push for Serverless. They could have the sensible way out and built EKS as the foundation of everything - makes total sense given the massive ecosystem around kubernetes. ECS and Fargate should be killed off. https:/…

CDK8S doesn't replace Elastic Beanstalk, because the folks using EB are going to continue to use EB. If it ain't broke... ECS predates EKS, and is better integrated than EKS with their other services. If you want a painless container experience on AWS, ECS for Fargate is what'll you'll want to use today. So both existing folks who use ECS today as well as new customers are going to keep using ECS. Folks who like K8,…

The different proponents who use ECS, beanstalk,etc are really talking about the UX. Because ultimately the orchestration stack is not visible to you.

And my whole point is that AWS is on the path to fix kubernetes UX and give you exactly the mental model you want...but run it on k8s.

Think of it as ECS, Beanstalk, Fargate on top of EKS.

You won't be asked to adopt the complexity of k8s

Re: AWS CloudFormation now supports blue/green deployments for Amazon ECS

#24

I've never understood CloudFormation's lag time in supporting new service functionality. This launched nearly 3 years ago. https://aws.amazon.com/blogs/compute/bluegreen-deployments-w...

Somehow Terraform manages to roll out new features before they are even public while Amazon's own framework lags by years. I guess the CloudFormation team must be starved for resources.

Re: AWS CloudFormation now supports blue/green deployments for Amazon ECS

#25
post #2

The ECS default deployment model is quite frankly a disaster. I've written many Python/Go scripts over the years to wrangle it into a sensible form for CI/CD. Good to see that they're working on it, but I don't know why they don't fix the underlying paradigm instead of making it Cloudformation exclusive.

Could you elaborate a bit on the problem of "ECS default deployment model"?

It's just very rigid and not easy to extend. As soon as you hit a certain scale or need to do something slightly non-standard it's a mess.

Re: AWS CloudFormation now supports blue/green deployments for Amazon ECS

#26
post #16

Earlier quoted context omitted.

Because while "ready" for new features includes API support, it does not include CloudFormation support. The problem is entirely AWS politics and culture.

Who builds the cloudformation support? I could understand not baking it in on an initial feature release but it should be there ’soon’. Same with Config.

I've been told that each product team is supposed to add CloudFormation support themselves. For some reason, it's not treated as a high priority and often lands on the laps of the core CloudFormation team.

It may turn out that the tools that CloudFormation team provides don't make integration easy, especially if the operation takes longer than 15 minutes (meaning they can't implement support via a single lambda invocation as an under-the-hood custom resource).

Re: AWS CloudFormation now supports blue/green deployments for Amazon ECS

#27

I've never understood CloudFormation's lag time in supporting new service functionality. This launched nearly 3 years ago. https://aws.amazon.com/blogs/compute/bluegreen-deployments-w...

I understand the logic of not waiting for the CloudFormation team to do their work because it could introduce delays but it makes it a considerably less useful tool.

When considering Terraform vs CloudFormation I certainly took that into account and that's why I don't use CloudFormation for anything.

I wonder if there are any killer features of CloudFormation I missed when I looked into this (years ago now).

Re: AWS CloudFormation now supports blue/green deployments for Amazon ECS

#28

It looks like this uses a new, not yet documented, top level attribute in a template: Hook. At least, I haven't found any documentation for it other than the template they say to copy in the linked user guide for this feature. Definitely not supported in CDK.

What’s CDK in this context?

Re: AWS CloudFormation now supports blue/green deployments for Amazon ECS

#29

It looks like this uses a new, not yet documented, top level attribute in a template: Hook. At least, I haven't found any documentation for it other than the template they say to copy in the linked user guide for this feature. Definitely not supported in CDK.

What’s CDK in this context?

AWS Cloud Development Kit

Re: AWS CloudFormation now supports blue/green deployments for Amazon ECS

#30

It looks like this uses a new, not yet documented, top level attribute in a template: Hook. At least, I haven't found any documentation for it other than the template they say to copy in the linked user guide for this feature. Definitely not supported in CDK.

What’s CDK in this context?

https://github.com/aws/aws-cdk/
Post reply on HN