Tell us about your request
I would like to be able to reserve capacity in Fargate for 1-3 years in exchange for cheaper prices.
Which service(s) is this request for?
Fargate
Tell us about the problem you're trying to solve. What are you trying to do, and why is it hard?
I would like to optimize our costs while taking advantage of the reduced management overhead of Fargate vs. an EC2-based cluster. It's hard because there is no support for reserved capacity.
One option would be a mirror of how EC2 reserved instances work, but at the vCPU / memory level. Eg. I reserve 1 vCPU for a year and it costs me $0.03 per hour instead of $0.0506 per hour.
Another option (possibly simpler / more attractive from a user's perspective) would be more along the lines of Google's Sustained Use discounts where simply by using that capacity over time the cost is reduced.
Are you currently working around this issue?
We are running our ECS services on EC2.
Context
Another issue along the same lines is https://github.com/aws/containers-roadmap/issues/31
re: the pricing part, we’ve definitely started talking about ways to offer different pricing options.
tell me more about the capacity reservations: what are you running in to? can you tell me more about the use case?
Hi @abby-fuller, we are not running into this currently as we have only dipped our toes into Fargate so far - however a common narrative around fargate is that it is neat-looking functionality but pricy. This is obviously improved with the recent pricing changes, but there are still questions around cost efficiency for large, known workloads - especially vs. EC2 instances w/ reserved or spot pricing.
Having a similar story for fargate would be another ✅ we could use when comparing our options.
For some context, we're currently running ~35 applications on 5 clusters (prod, stage, and 3 dev environments). Prod is ~45 c4.4xl instances, dev environments are ~15 c4.larges. I think prod is ~1000 containers running at any given time (minimum).
With fargate as we're not discussing instances we would likely want to be able to reserve capacity at the vcpu / memory level - in exchange for guaranteeing use of XX GB of memory and YY CPU being able to pay up front or over time in exchange for a % discount similar to EC2 Reserved Instances would be nice.
Since AWS benefits from reservations (as it helps them with their capacity planning), seems like it's a win-win to enable it here and offer lower costs (for stable workloads) in return. DynamoDB now has a similar arrangement (reserved capacity is cheaper than fully on-demand).
I would love to see Reserved Instance coming to Fargate!
I see how Fargate on demand is nice for short lived jobs. But if I know in advance I will always have certain container sizes up and running 24/7/365 for multiple years, it would be nice to just pay a discounted amount up front as with EC2 and RDS reservations.
Looks like this can be closed now!
https://aws.amazon.com/savingsplans/ 404's for me.
It should be available soon - we’ve got access to this in our billing console.
Savings Plans are a flexible pricing model that offer low prices on EC2 and Fargate usage, in exchange for a commitment to a consistent amount of usage (measured in $/hour) for a 1 or 3 year term. Savings Plans provide you the flexibility to use the compute option that best suits your needs and automatically save money, all without having to perform exchanges or modifications. When you sign up for a Savings Plan, you will be charged the discounted Savings Plans price for your usage up to your commitment.
Savings Plans allow you to easily reduce your bill by making a commitment to compute usage (e.g. $10/hour) instead of making commitments to specific instance configurations. AWS offers two types of Savings Plans - Compute Savings Plans and EC2 Instance Savings Plans.
Compute Savings Plans provide the most flexibility and help to reduce your costs by up to 66%. These plans automatically apply to EC2 instance usage regardless of instance family, size, AZ, region, OS or tenancy, and also apply to Fargate usage.
EC2 Instance Savings Plans provide the lowest prices, offering savings up to 72% in exchange for commitment to usage of individual instance families in a region (e.g. M5 usage in N. Virginia). This automatically reduces your cost on the selected instance family in that region regardless of AZ, size, OS or tenancy. EC2 Instance Savings Plans give you the flexibility to change your usage between instances within a family in that region.
Get started with Savings Plans by accessing your recommendations and customizing the plan type, payment option and term.
@hspak https://aws.amazon.com/savingsplans/ is up now.
@mwarkentin thanks! Compute Savings Plan allows you to get discounts on both EC2 and AWS Fargate as you migrate your applications over!
Most helpful comment
Hi @abby-fuller, we are not running into this currently as we have only dipped our toes into Fargate so far - however a common narrative around fargate is that it is neat-looking functionality but pricy. This is obviously improved with the recent pricing changes, but there are still questions around cost efficiency for large, known workloads - especially vs. EC2 instances w/ reserved or spot pricing.
Having a similar story for fargate would be another ✅ we could use when comparing our options.
For some context, we're currently running ~35 applications on 5 clusters (prod, stage, and 3 dev environments). Prod is ~45 c4.4xl instances, dev environments are ~15 c4.larges. I think prod is ~1000 containers running at any given time (minimum).
With fargate as we're not discussing instances we would likely want to be able to reserve capacity at the vcpu / memory level - in exchange for guaranteeing use of XX GB of memory and YY CPU being able to pay up front or over time in exchange for a % discount similar to EC2 Reserved Instances would be nice.