-
Notifications
You must be signed in to change notification settings - Fork 177
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
Attached devices are not reported to kubelet upon device plugin restarts #392
Comments
It seems all the rest of device selectors (driver, vendor, device, pciAddress, pfNames, rootDevices) are still retrievable even if the devices are attached (not in the host namespace), linkType is an exception. Q: Is there a way to get linkType when VFs are moved to container namespace? |
/cc @adrianchiris any thoughts? |
one idea i had is to leverage PodResourceLister service exposed by kubelet[1] to add the "missing" devices. |
I think it could be an option, just that we need to add k8s api access in device plugin. |
its grpc to kubelet socket so no access to k8s api (at least by device plugin)
While writing this, i remembered we might be able to leverage devlink for that. so if we change to devlink for determining link type we should be OK. it requires device driver to support this though, so need to check on Intel Nics and others as well.
|
Some old NIC may not support devlink query, as mentioned in PR #395. |
Try to use devlink api to configure the linkType to be `ether`. If the card doesn't support this we fall back to netlink. This commit is a partial fix for k8snetworkplumbingwg#392 There are still cards the doesn't support the netlink api like intel xv710 Signed-off-by: Sebastian Sch <[email protected]>
Try to use devlink api to configure the linkType to be `ether`. If the card doesn't support this we fall back to netlink. This commit is a partial fix for k8snetworkplumbingwg#392 There are still cards the doesn't support the netlink api like intel xv710 Signed-off-by: Sebastian Sch <[email protected]>
Try to use devlink api to configure the linkType to be `ether`. If the card doesn't support this we fall back to netlink. This commit is a partial fix for k8snetworkplumbingwg#392 There are still cards the doesn't support the netlink api like intel xv710 Signed-off-by: Sebastian Sch <[email protected]>
What happened?
Device plugin (with linkType selector) reports X devices to kubelet, Y number (Y < X) of devices be allocated to SR-IOV Pods.
Device plugin restarts and reports X-Y devices to kubelet.
What happened was linkType attribute (retrieved via netlink in host namespace) is empty when devices are attached to SR-IOV pods, this results in attached devices are filtered out when running linkType selector.
What did you expect to happen?
Device plugin reports X devices to kubelet after restarting
Anything else we need to know?
Netlink interface is used to retrieve linkType in the network namespace where device plugin runs:
Component Versions
Please fill in the below table with the version numbers of components used.
Config Files
Config file locations may be config dependent.
Device pool config file location (Try '/etc/pcidp/config.json')
The text was updated successfully, but these errors were encountered: