目录
🚀 CubeStudio 集群环境下验证 NVIDIA GPU 插件是否生效的完整流程(CUDA 12.8.1)
🚀 CubeStudio 集群环境下验证 NVIDIA GPU 插件是否生效的完整流程(CUDA 12.8.1)
在构建支持 NVIDIA GPU 的 Kubernetes 集群时,正确安装并验证 nvidia-device-plugin
是一个关键步骤。本文将基于 CUDA 12.8.1 镜像,完整演示如何确认插件是否生效,并验证容器是否能够识别 GPU 资源。
📦 1. 确认 DaemonSet 插件已部署并运行
首先,通过以下命令确认 nvidia-device-plugin
是否已经正常运行:
kubectl get daemonset -n kube-system nvidia-device-plugin-daemonset
你将看到如下输出:
NAME DESIRED CURRENT READY UP-TO-DATE AVAILABLE NODE SELECTOR AGE
nvidia-device-plugin-daemonset 1 1 1 1 1 <none> 12d
注意:NODE SELECTOR
显示为 <none>
是因为配置中使用了 affinity.nodeAffinity
而不是 nodeSelector
,这是正常的,并不会影响插件生效。
🔍 2. 验证节点是否注册 GPU 资源
执行以下命令:
kubectl describe node <你的节点名> | grep -A10 "Capacity"
输出中应包含:
nvidia.com/gpu: 2
说明 GPU 已成功注册到 kubelet,nvidia-device-plugin
插件已生效。
📄 3. 插件配置内容参考
你当前的 DaemonSet 配置类似如下内容,主要通过 affinity
控制调度:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: gpu
operator: In
values:
- "true"
你也可以选择加上 nodeSelector
:
nodeSelector:
gpu: "true"
不过推荐继续使用 affinity
,更灵活、表达能力更强。
✅ 4. 创建基于 CUDA 12.8.1 的测试容器
使用 NVIDIA 官方镜像 nvidia/cuda:12.8.1-devel-ubuntu22.04
来创建一个测试 Pod,执行 nvidia-smi
以验证容器内是否可以使用 GPU:
apiVersion: v1
kind: Pod
metadata:
name: gpu-test-12-8-1
spec:
restartPolicy: Never
containers:
- name: cuda-container
image: nvidia/cuda:12.8.1-devel-ubuntu22.04
command: ["nvidia-smi"]
resources:
limits:
nvidia.com/gpu: 1
保存为 gpu-test-12.8.1.yaml
,然后执行:
kubectl apply -f gpu-test-12.8.1.yaml
kubectl logs gpu-test-12-8-1
🎯 5. 预期输出结果示例
如果成功,输出将类似:
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 535.129.03 Driver Version: 535.129.03 CUDA Version: 12.8 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
+-------------------------------+----------------------+----------------------+
这表明容器已正确识别 GPU,插件功能完全正常。
🧼 6. 清理测试资源(可选)
kubectl delete pod gpu-test-12-8-1
✅ 小结
步骤 | 是否完成 |
---|---|
插件 DaemonSet 运行状态正常 | ✅ |
节点中 GPU 成功注册为资源 | ✅ |
使用 CUDA 12.8.1 镜像验证成功 | ✅ |
容器内执行 nvidia-smi 输出正常 | ✅ |
你可以将该测试流程作为 CubeStudio 或其他 AI 平台 GPU 上线后的标准验证流程,确保 GPU 计算能力对 AI 容器环境完全可用。