Description
Tell us about your request
We need Karpenter to take into account discounts applied on compute as a result of AWS Savings Plans, and other types of discounts.
Having some mechanism to pass in configuration to inform Karpenter of discounts applicable to the specific environment it is running in, or have it somehow figure that out, would allow Karpenter to make better decisions with more accurate pricing information.
Tell us about the problem you're trying to solve. What are you trying to do, and why is it hard?
Currently, Karpenter does not respect discounts that may be applicable as a result of AWS Savings Plan (and other discounts). Starting in April, we've noticed a significant increase in spot prices for certain regions, with for example us-east-1 spot instances that we are utilizing costing on average 50% more than 2 months prior.
This puts us in an awkward spot where running on on-demand may be significantly cheaper than running on spot pricing, due to discounts applied as a result of AWS Savings Plans.
To illustrate, consider the instance type m5d.12xlarge in us-east-1:
On the 16th of March, the spot price for this instance type was $1.06/hr. Since then, the price has been steadily increasing, currently at $1.56/hr.
This same instance type using a Compute Savings Plan, with a term length of 3 years, partial upfront, puts the price at $1.264/hr.
This is a ~21% difference in price.
Excluding other types of discounts, this means that we are now running into scenarios where running our workloads on on-demand is significantly cheaper than running on spot, not to mention more stable.
Are you currently working around this issue?
Short-term, we are seriously considering moving our workloads to on-demand, as this would significantly reduce the cost of our infrastructure. Long-term, we would like to see Karpenter be able to make better decisions around price performance.
Additional Context
No response
Attachments
No response
Community Note
- Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request
- Please do not leave "+1" or "me too" comments, they generate extra noise for issue followers and do not help prioritize the request
- If you are interested in working on this issue or have submitted a pull request, please leave a comment
Activity