Enable the usage of Device Plugins#38
Conversation
In certain situations, processing resources are made available through Device Plugins, either because they are structures to be isolated, or because they require some special treatment. In these cases, Intel Power Manager is not able to recognize device plugins and treat them as CPU resources. This modification aims to enable the use of device plugins as processing resources, whenever this indication is convenient. To do so, the user must declare, during the application of PowerConfig, which "customDevices" must be considered during the admission of the pod. This modification also exempts the user from using the "CPU" directive in resource requests whenever an entry of custom Device is indicated. Signed-off-by: Eduardo Alberti <eduardo.alberti@windriver.com>
| k8s.io/client-go v0.27.1 | ||
| k8s.io/klog/v2 v2.100.1 | ||
| k8s.io/kubelet v0.27.1 | ||
| k8s.io/api v0.26.3 |
There was a problem hiding this comment.
any reason for using an earlier version?
There was a problem hiding this comment.
When using newer versions of modules, compilation results in a missing method error. The Controller-runtime calls for a method that has a different implementation than previous versions, causing this error:
0 32.21 /go/pkg/mod/sigs.k8s.io/controller-runtime@v0.14.6/pkg/cache/multi_namespace_cache.go:321:9: cannot use handles (variable of type map[string]"k8s.io/client-go/tools/cache".ResourceEventHandlerRegistration) as "k8s.io/client-go/tools/cache".ResourceEventHandlerRegistration value in return statement: map[string]"k8s.io/client-go/tools/cache".ResourceEventHandlerRegistration does not implement "k8s.io/client-go/tools/cache".ResourceEventHandlerRegistration (missing method HasSynced)
There was a problem hiding this comment.
We will investigate. Thank you.
We have to use latest versions for CVE reasons.
There was a problem hiding this comment.
Hey @ejalberti thank you so much for reaching out regarding the device plugin. I was wondering if you would be able to share more details regarding what the plugins are, what test case and environment that and any other general information you can share with us, Thanks a million.
In certain situations, processing resources are made available through Device Plugins, either because they are structures to be isolated, or because they require some special treatment. In these cases, Intel Power Manager is not able to recognize device plugins and treat them as CPU resources.
This modification aims to enable the use of device plugins as processing resources, whenever this indication is convenient. To do so, the user must declare, during the application of PowerConfig, which "customDevices" must be considered during the admission of the pod.
This modification also exempts the user from using the "CPU" directive in resource requests whenever an entry of custom Device is indicated.