Support for Resource Claims and DRA
- Dominant language
- Go
- Stars
- 6.1k
- Forks
- 1.2k
- Avg merge
- 2d 7h
- Merged PRs (30d)
- 2
Description
## Describe the feature
As K8s community is actively working on moving to resource claims it would be great to add support for it at some point (adding this for future reference).
This is Alpha since 1.26, will stay so in 1.31 but it is being worked agressively see https://github.com/kubernetes/enhancements/issues/3063#issuecomment-1915852197 so soon it will move to Beta and GA it seems.
In Knative, right now trying to set a resource claim fails validation as expected:
```
Error from server (BadRequest): error when creating "service.yaml": admission webhook "validation.webhook.serving.knative.dev" denied the request: validation failed: must not set the field(s): spec.template.spec.containers[0].resources.claims
```
/area API
References
[Unleashing the Power of DRA (Dynamic Resource Allocation) for Just-in-Time GPU Slicing](https://www.youtube.com/watch?v=hk2R51pw-Xg)
[What Can I Get You? An Introduction to Dynamic Resource Allocation - Freddy Rolland & Adrian Chiris](https://www.youtube.com/watch?v=2Y_6gOs_f_M)
[Deploy vLLM server on Kubernetes using NVIDIA Kubernetes DRA driver](https://github.com/wangchen615/vLLM-DRA)
[KCSEU 2024 - Dynamic Resource Allocation - the path towards GA - Kevin Klues Patrick Ohly](https://www.youtube.com/watch?v=DTEGdW5y-eg)
[Meeting notes from K8s Serving WG](https://docs.google.com/document/d/1aExJFtaLnO-TM6_2uILgI8NI0IjOm7FcwLABBKEMEo0/edit#heading=h.tgbhjt7abbvt)
K8s issues/KEPs:
[Dynamic Resource Allocation with Control Plane Controller](https://github.com/kubernetes/enhancements/issues/3063)
[DRA: structured parameters](https://github.com/kubernetes/enhancements/issues/4381)
Contributor guide
Research direction
Start with the validation error for spec.template.spec.containers[0].resources.claims and review Kubernetes enhancement issues 3063 and 4381 to understand the evolving Resource Claims and DRA APIs. Done means Knative no longer rejects supported resource claims and the behavior is covered by the relevant validation or API tests, though this issue does not name specific files or tests.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go, kubernetes
- Domain
- api, backend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100