highDetection & drivers
Container can't access the GPU
The pod schedules onto a GPU node but the process can't see or use the device.
Scope
Node sees the GPU and Kubernetes scheduled it, but the container runtime isn't injecting it.
Check recent changes
- ·Runtime/toolkit changes
- ·Custom image without CUDA/ROCm
- ·RuntimeClass changes
Can the container see the GPU?
bash
kubectl exec <pod> -- nvidia-smiExpect: GPUs listed. 'command not found' or no devices means the runtime didn't inject them.
Did the pod actually request a GPU?
bash
kubectl get pod <pod> -o jsonpath='{.spec.containers[*].resources.limits}'Expect: limits include nvidia.com/gpu or amd.com/gpu.
- high likelihoodPod didn't request a GPU resource
Fix · Add nvidia.com/gpu / amd.com/gpu to resources.limits.
- high likelihoodNVIDIA container runtime not the default
Fix · Ensure the operator/toolkit set the runtime; on RKE2 point CONTAINERD_CONFIG at the RKE2 path.
- medium likelihoodImage lacks CUDA/ROCm userspace
Fix · Use a CUDA/ROCm base image or mount the toolkit.
Validation
- ✓`nvidia-smi`/`rocm-smi` works inside the container
Escalation
Runtime injects devices on some nodes but not others → inspect per-node runtime config.
Data to collect first
- ·`nvidia-smi` inside the container
- ·Container runtime config
- ·Requested resources in the pod spec