如何让Kubernetes 检测到节点上的 GPU
·
步骤 1:确认 GPU 是否在系统可用
在 GPU 节点上执行:
nvidia-smi
正常输出:驱动和显卡工作正常
报错或找不到命令:先安装 NVIDIA 驱动
步骤 2:检查 Docker 支持 NVIDIA Runtime
docker info | grep -i runtime
输出:Runtimes: runc nvidia Default Runtime: runc
如果没有 nvidia runtime,需要安装 NVIDIA Container Toolkit。
步骤 3:部署 NVIDIA Device Plugin
官方 YAML 可以直接部署:
kubectl create -f https://raw.githubusercontent.com/NVIDIA/k8s-device-plugin/v0.13.0/nvidia-device-plugin.yml
部署后,检查 Pod 是否运行正常:
kubectl get pods -n kube-system | grep nvidia
步骤 4:确认节点可用 GPU
部署完 Device Plugin 后,几分钟内 GPU 会出现在节点信息中:
kubectl get nodes -o=custom-columns=NAME:.metadata.name,GPU:.status.allocatable.nvidia\.com/gpu
输出示例:
node-gpu1 2 node-gpu2 1
总结:
-
GPU 节点系统需要安装 NVIDIA 驱动
-
Docker 或 containerd 需要支持 NVIDIA Runtime
-
Kubernetes 需要部署 NVIDIA Device Plugin
-
kubelet 正常运行并启用 Device Plugins
更多推荐
所有评论(0)