New user sign up using AWS Builder ID
New user sign up using AWS Builder ID is currently unavailable on re:Post. To sign up, please use the AWS Management Console instead.
AWS re:Invent 2024 - Unleashing the power of Amazon ECS for platform teams
At AWS re:Invent 2024, Jennifer Lin and Olly Pomeroy from AWS, along with Michael Lee from Fannie Mae, delivered an insightful session on how platform teams can leverage Amazon Elastic Container Service (Amazon ECS) to build powerful, flexible solutions. This blog post summarizes the key takeaways from their presentation "SVS330: Unleashing the power of Amazon ECS for platform teams".
Imagine you're planning dinner. You could start from scratch with a bag of groceries, giving you total control but requiring significant effort. Or you might opt for a meal kit, providing some structure while still allowing customization. Perhaps you'd prefer a frozen dinner for maximum convenience, or even a chef-prepared meal where everything is handled for you.
Much like these dinner options, platform teams face similar choices when building solutions with Amazon ECS. At AWS re:Invent 2024, Jennifer Lin, Olly Pomeroy, and Michael Lee shared different ways to use Amazon ECS. They showed how ECS can work for teams who want to control everything, and for those who prefer a hands-off approach. Let's explore the options they presented for making the most of Amazon ECS in your organization.
Different Ways to Use ECS for Platform Teams
Jennifer and Olly described four main ways platform teams can set up Amazon ECS. These approaches range from giving developers a lot of freedom to having the platform team do most of the work.
- Account as a Service: Developers get their own AWS account and can use any service they want. They have a lot of freedom to build and run their apps as they like. However, it can be harder to maintain consistency across teams, and costs might increase if developers aren't careful.
- Cluster as a Service: The platform team manages the ECS clusters, while developers use these clusters to run their apps. This approach provides some structure but still allows developers to choose how to run their applications. It strikes a balance between freedom and control.
- Template as a Service: The platform team creates templates for setting up common types of apps. Developers can select a template and modify it if needed. This method helps maintain consistency across teams while allowing some flexibility. It's effective for ensuring best practices are followed.
- Platform as a Service: The platform team handles all the infrastructure work. Developers only need to provide their code, and the platform team does the rest. This approach makes things very easy for developers but gives them less control over how their apps run.
Most companies don't stick to just one of these approaches. They often use a mix, depending on the needs of different teams. The goal is to find a balance that works best for the entire organization.
Why ECS for Platform Teams?
Jennifer explained why Amazon ECS is a good choice for platform teams. She pointed out that ECS takes care of cluster management on its own, which means platform teams don't need to worry about setting up or maintaining a control plane. This makes it easier to manage container workloads.
She also highlighted how Amazon ECS connects easily with many other AWS services, making it simpler to build complete solutions. Another benefit Jennifer mentioned is the flexibility in computing options: teams can run ECS on Amazon Elastic Compute Cloud (Amazon EC2) instances, use serverless AWS Fargate, or even use their own servers with ECS Anywhere. Security is also a strong point for Amazon ECS, with built-in features that work well with AWS Identity and Access Management (IAM) and keep different workloads separate from each other.
Lastly, Jennifer mentioned that Amazon ECS on Fargate is cost-effective because you only pay for what you use, which can help keep costs down, especially for workloads that don't run all the time. All these features make Amazon ECS a powerful tool for platform teams, helping them build flexible, secure, and cost-effective solutions for their organizations.
Template as a Service Deep Dive
Olly spent a good amount of time talking about the "Template as a Service" approach. He explained that this method helps balance the need for standard practices with the desire for flexibility. In this approach, platform teams create Infrastructure as Code templates that include best practices for setting up and running applications.
These templates can be made at different levels of detail, from basic building blocks to complete application setups. To share these templates with developers, many teams use tools called Internal Developer Platforms (IDPs), like Backstage.io. These platforms make it easy for developers to find and use the right templates for their projects. Olly emphasized that this approach allows developers to help themselves, choosing and using templates as needed, while still following the standards set by the platform team. This way, organizations can maintain consistency in their infrastructure while giving developers the tools they need to work efficiently.
Real-World Example: Fannie Mae
Michael Lee from Fannie Mae told us a story about how they made their legacy loan accounting system better using Amazon ECS.
Fannie Mae is a big company that's been around for 86 years. They handle $4 trillion worth of home loans. Their legacy system was hard to use and fix. It was like an old car that kept breaking down.
Here's what they did:
- They rebuilt their system using Amazon ECS and Fargate. It's like they turned their old car into a fleet of modern trucks.
- Now, their new system can handle hundreds of millions of math problems each month. It's super fast!
- They use 128 Fargate tasks. Think of these as 128 super-smart calculators working together.
- These tasks create 900 workers that solve problems at the same time. It's like having 900 people working on a big puzzle all at once.
What happened after they made these changes?
- The system got 65% faster. That's like turning a 1-hour job into a 20-minute job.
- They saved 33% on costs. It's like getting a big discount on their electric bill.
- The system only runs when it needs to. When it's not working, it turns off to save money.
Michael said this new system made everyone's job easier:
- The developers could build things faster.
- The accountants could understand the system better.
- Everyone felt like they owned a piece of the system and could help make it better.
They also made sure everything was safe and secure. They used special safety features that come with Amazon ECS and Fargate. In the end, Michael's team turned their legacy, slow system into a fast, smart, and cost-saving machine using Amazon ECS.
Key Takeaways
Jennifer, Olly, and Michael shared some important lessons:
- Amazon ECS is like a big toolbox. You can use it in many ways to build and run your apps in containers.
- There's no one-size-fits-all way to use Amazon ECS. Different teams might need different setups. It's okay to mix and match approaches.
- Using templates can be really helpful. It's like giving your developers a cookbook. They can quickly start new projects while still following the rules.
- Michael's story from Fannie Mae shows that using Amazon ECS can make things faster and cheaper. They made their legacy system much better by using Amazon ECS.
If you're new to containers or want to make your current setup better, Amazon ECS can help. It has lots of features to fit different needs.
Want to learn more? You can watch the full talk on the AWS YouTube channel. Jennifer, Olly, and Michael explain everything in more detail and show you how things work.
Relevant content
- asked a year agolg...
- asked 8 months agolg...
- Accepted Answerasked 6 years agolg...
- AWS OFFICIALUpdated 22 days ago
- AWS OFFICIALUpdated 2 years ago
- AWS OFFICIALUpdated 9 months ago
- AWS OFFICIALUpdated 2 months ago