knative / knative/serving

Support for Resource Claims and DRA

Open
#15,332 4 comments 0 reactions 0 assignees View on GitHub
area/API kind/feature lifecycle/frozen
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

Open the contributing 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.