-
Notifications
You must be signed in to change notification settings - Fork 1.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Allow modifying the minSize and maxSize value of a NodeGroup without changing desiredCapacity #2332
Comments
This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 5 days. |
I'm unaware of this being resolved at this time. |
This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 5 days. |
As a status update, #3511 has introduced the ability to change the minSize and maxSize of a NodeGroup without changing desiredCapacity, but has the side-effect that the ASG's size is reset to the desiredCapacity of the NodeGroup (by updating CloudFormation). The Cluster Autoscaler interaction we need for the use case of this ticket is that somehow we need the minSize/maxSize to come from eksctl -> CloudFormation -> ASG -> Cluster Autoscaler, but desiredSize needs to come from Cluster AutoScaler -> ASG -> (?) -> Cloud Formation. This is perhaps more complex to fix than I envisaged when I opened the ticket, because we can see in #3532 that updating the NodeGroup CF stack at all will reset the ASG's desired size to the eksctl/CF desired size, losing the Cluster Autoscaler's size value. So to make the UX work as I envisaged, eksctl would need to get the ASG's current desired size, and use that as the "desired capacity" when updating the Nodegroup CF Stack, effectively applying Cluster Autoscaler's changes back from the ASG to the Nodegroup CF Stack. #2331 is related to this approach. It'd be nicer if AWS had a way to say "Cloud Formation stack doesn't manage 'desiredCapacity' of the ASG it templates. That would also fix the fact that Cluster Autoscaler will trigger the Cloud Formation "drift check" because it updates the ASG.
For that idea to make sense, And of course, I suspect this would not be generally applicable in eksctl, but only for NodeGroups intended to be managed by Cluster Autoscaler, so that's even more complexity. For the user-side it could be tied to the |
Yeah this is quite frustrating. I think the best solution is for eksctl to treat the ASG as the source of truth for min/max/desired after the nodegroups created. We have a similar PR open currently to change the
|
Interesting. I expect that a CF update that does not include |
it might be, although I've found cloudformation often does things you don't expect 😉 I'm going to go ahead with changing the |
fix should be out in todays |
Why do you want this feature?
I use the Cluster Autoscaler to manage the number of nodes in my nodegroups. However, I want to be able to change the limits (min and max) without changing the number of currently active nodes.
This appears to be what was requested in #809 and #1893 as well. They were closed by #2022 which added
--nodes-max
and--nodes-min
, but left--nodes
as mandatory.What feature/behavior/change do you want?
should change the maximum size to 100, but not affect current or minimum sizes.
As noted in #809's comments, this is equivalent to
for
$ASG_NAME
ofeksctl-<mycluster>-nodegroup-<ng-a>-NodeGroup-<HASH>
.The text was updated successfully, but these errors were encountered: