Description
Which component are you using?:
/area cluster-autoscaler
/area core-autoscaler
/wg device-management
Is your feature request designed to solve a problem? If so describe the problem this feature should solve.:
DRA has an AdminAccess
feature, guarded by a separate feature guard (KEP). A request for admin access to Device(s) can be expressed in a ResourceClaim, meaning that the claim would only be used to monitor or otherwise manage the device, but not actually use it. Such claims can be allocated with devices that are already allocated in another ResourceClaim.
This has implications on some of the DRA logic in CA (e.g. such claims shouldn't be counted when computing utilization), but it isn't handled in the current MVP implementation.
Describe the solution you'd like.:
- Figure out all parts of DRA support implementation in CA that need to take the new "some ResourceClaims don't actually reserve their allocated Devices" assumption into account. This is at least:
- Calculating Node utilization for scale-down.
- We could potentially simplify sanitization for ResourceClaims with
AdminAccess
, as sanitizing their allocations shouldn't matter for scheduling.
- Take the new assumption into account in all of the identified places.
Additional context.:
This is a part of Dynamic Resource Allocation (DRA) support in Cluster Autoscaler. An MVP of the support was implemented in #7530 (with the whole implementation tracked in kubernetes/kubernetes#118612). There are a number of post-MVP follow-ups to be addressed before DRA autoscaling is ready for production use - this is one of them.