[EKS] [request]: Managed Node Group support for ASG warm pools
- Dominant language
- Shell
- Stars
- 5.4k
- Forks
- 334
- PR merge metrics
- No merged PRs in 30d
Description
### Community Note
* Please vote on this issue by adding a 👍 [reaction](https://blog.github.com/2016-03-10-add-reactions-to-pull-requests-issues-and-comments/) 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
**Tell us about your request**
What do you want us to build?
AWS recently added support for ASG warm pools https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-warm-pools.html. It would be useful, as part of provisioning a managed node group, to have the ability to also create a warm pool of EC2 instances. Ideally we can:
1. Choose to have them in a stopped or start state
2. Control the max prepared capacity flag, or have it fall back to max capacity.
3. Cluster Autoscaler can be modified to start stopped instances part of the node group instead of having to wait for new ones to be provisioned.
**Which service(s) is this request for?**
EKS
**Tell us about the problem you're trying to solve. What are you trying to do, and why is it hard?**
What outcome are you trying to achieve, ultimately, and why is it hard/impossible to do right now? What is the impact of not having this problem solved? The more details you can provide, the better we'll be able to understand and solve the problem.
This would make it easier for users to control the ready capacity of worker nodes in their cluster so they can quickly launch new pods as demand for resources in the cluster scales up and down.
**Are you currently working around this issue?**
How are you currently solving this problem?
Implemented https://github.com/kubernetes/autoscaler/blob/master/cluster-autoscaler/FAQ.md#how-can-i-configure-overprovisioning-with-cluster-autoscaler.
**Additional context**
Anything else we should know?
**Attachments**
If you think you might have additional information that you'd like to include via an attachment, please do - we'll take a look. (Remember to remove any personally-identifiable information.)
Contributor guide
Research direction
Start with the AWS ASG warm pools documentation and the EKS managed node group context described in the request, then review the linked Cluster Autoscaler overprovisioning guidance. Define the required provisioning options and the Cluster Autoscaler behavior before identifying implementation and validation locations; done means warm pools can be configured for managed node groups and prepared capacity is usable for scaling.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- aws, kubernetes
- Domain
- cloud, infrastructure
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100