-
Notifications
You must be signed in to change notification settings - Fork 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
ProvisioningRequest booked capacity is scaled down (and shouldn't be) #6517
Comments
/cc @kisieland @mwielgus @x13n |
I think hinting should be sufficient to stabilize fake pod -> node assignments as long as fake pod uids don't change between loops: autoscaler/cluster-autoscaler/simulator/scheduling/hinting_simulator.go Lines 91 to 108 in 6cb5b5a
I'm not sure I understand this:
If you schedule PR pods into the snapshot, they should already be considered in scale down simulation (and potentially moved to another node). What do you want to gain by additionally lowering utilization of such nodes? |
Thanks!
It's possible to make nodes not underutilised by scheduling fake pods and so block them from scale down, if utilisation threshold is low. |
Isn't this fine? Scale down will make sure that after nodes are removed, there's still enough capacity for all the pods (including fake ones). Utilization threshold is really only a heuristic for scale down to check if a given node should be considered in scale down simulations at all. |
/assign |
Which component are you using?:
cluster-autoscaler
Is your feature request designed to solve a problem? If so describe the problem this feature should solve.:
When the ProvisioningRequst is Provisioned for check-capacity Provisioning class, ClusterAutoscaler reserve this capacity from other ProvisioningRequest for short period of time in order to provide accurate CA decision for multiple ProvisioningRequests.
However currently this capacity is not blocked from scale down, so we might have a situation when CA marked ProvisioningRequest as Provisioned and then scaled down the capacity, so ProvisioningRequest won't have capacity anymore.
Describe the solution you'd like:
In order to not scale down the booked capacity I suggest to:
Additional context:
Booking capacity is not limited only for check-capacity ProvisioningClass, this mechanism will be used for atomicScaleUp ProvisioningClass as well.
The text was updated successfully, but these errors were encountered: