-
Notifications
You must be signed in to change notification settings - Fork 119
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
k8s-1.30: Enable feature-gate of DRA alpha feature #1251
base: main
Are you sure you want to change the base?
Conversation
/cc @TheRealSibasishBehera @alicefr The demo is not yet fully working as I don't see the actual emulated nvme devices as allocatable yet. So, marking as draft till I figure that out. |
Seems to be an issue with the registration between dri-pci-driver and the kubelet. Not sure yet what's wrong :) After cluster is up, I can see that most configs are correct, eg:
It seems that kubelet's
Bringing the dri-pci-driver up, as said in the first commet, shows the resourceclass just fine but registrations seems not to happen.
Changing the kubelet's config and restarting it did not solve it. Registration shows no error anymore but still could not see the nvme resources in the node
For this PR, I think kubelet's config needs to be set otherwise the registration will not work. I might be missing something else otherwise I'd see the resources in the node. |
Thanks @victortoso for working on this . And before deploying the dra-pci-driver, we have to bind the nvme devices to vfio-driver . To verify that the devices are allocatable , check the NAS crd |
|
This is related to ongoing projects to test Dynamic Resource Allocation (DRA) in KubeVirt: https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/ I'm enabling it in k8s-1.30 as per ongoing PCI passthrough driver developed by Sibasish Behera as part of his GSoC 2024 project, see: https://github.com/kubevirt/dra-pci-driver Based on Alice's patch. Signed-off-by: Victor Toso <[email protected]>
I was looking at the wrong place, with |
/approve |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: dhiller The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
@victortoso do we want to have this always on? I know it is more work but it will be good to have an KUBEVIRTCI env variable which enable this when we spin the cluster. Although, I'm not sure how to do a configurable kubeadm.conf, maybe using the default one and adding on the fly the additional option and overwrite the configuration? |
Yeah you probably don't want all other lanes to test the k8s beast with DRA enabled, it might hurt the integrity of what we end up testing, with DRA being the huge feature it is |
/hold |
Sorry, looking at this again.
I'm looking at what was done with Now, looking at the comment there it feels we can use drop-in replacement already. This should reduce the @lyarwood does it sound reasonable? any suggestions? Cheers, |
Yes if we can get away with using drop-ins now we should do so. The
I thought I had captured this in a follow up issue but I can't seem to find it, I'll create one now. |
What this PR does / why we need it:
This is related to ongoing projects to test Dynamic Resource Allocation (DRA) in KubeVirt:
https://kubernetes.io/docs/concepts/scheduling-eviction/dynamic-resource-allocation/
I'm enabling it in k8s-1.30 as per ongoing PCI passthrough driver developed by Sibasish Behera as part of his GSoC 2024 project, see:
https://github.com/kubevirt/dra-pci-driver
Special notes for your reviewer:
This patch mimics what was being done by hand in the dra-pci-driver, described here
I validated that it worked by checking
resourceclasses
exist within this image.When the Node is up:
After installing
dra-pci-driver
Checklist
This checklist is not enforcing, but it's a reminder of items that could be relevant to every PR.
Approvers are expected to review this list.
Release note: