In the native Kubernetes Device Plugin framework, kubelet calls the ListAndWatch API of Device Plugin via a long-lived gRPC connection to continuously obtain device resource information on the node (such as GPUs and RDMA NICs). When this gRPC connection is unexpectedly broken due to network issues, process crashes, or other reasons, the kubelet reports the corresponding device resources as 0, making GPUs or RDMA resources on the node unavailable for scheduling.
This issue is a known design flaw in the Kubernetes community's Device Plugin framework. If the ListAndWatch stream is broken, the kubelet does not automatically re-establish the connection or retry. Recovery depends completely on the Device Plugin side proactively re-registering. The community currently does not provide any built-in automatic recovery mechanism for the Device Plugin framework. The long-term direction is to replace Device Plugin with the DRA (Dynamic Resource Allocation) architecture, but a full migration will take considerable time.
The following add-ons are involved in this resource reporting issue:
When the ListAndWatch connection between the above add-ons and kubelet is unexpectedly disconnected, the following symptoms occur:
- GPU or RDMA resources on the node are reported as 0.
- Pods that depend on these resources cannot be scheduled to the node.
- Existing workloads are unaffected, but new scheduling requests will fail.
To address the above community framework flaw, VKE has released new versions for all affected add-ons, adding automatic detection and recovery capabilities for resource reporting exceptions. When a resource reporting anomaly is detected, the add-on will automatically initiate the re-registration process to restore device resource reporting, requiring no manual intervention.
- During add-on upgrades, already allocated device resources and running workloads are unaffected.
- We recommend performing add-on upgrades during off-peak hours.
- If you still encounter resource reporting anomalies after the upgrade, submit a ticket to contact us.
Operational recommendations
If you have installed and used any of the above add-ons in your cluster, we recommend upgrading them to the latest versions promptly to benefit from automatic detection and recovery capabilities and other related optimizations.