GKE单NVIDIA K80 GPU配额下无法调度GPU Pod问题咨询
问题根因
调度失败的核心原因是GKE GPU节点默认未预装NVIDIA GPU设备驱动,集群无法识别节点上的GPU硬件,因此不会将nvidia.com/gpu计入节点可分配资源,才会出现已配置1块GPU的节点无法满足Pod GPU申请的情况。
单GPU配额下的解决步骤
- 保留当前运行的1节点GPU集群,不要调整节点数量,避免触发配额不足报错
- 安装GKE适配的NVIDIA GPU设备驱动DaemonSet到集群中,该守护进程集会自动在所有挂载GPU的节点上安装匹配节点操作系统版本的驱动程序
- 等待2~3分钟驱动安装完成后,执行
kubectl describe node <你的GPU节点名称>命令,查看节点Capacity和Allocatable字段下是否已出现nvidia.com/gpu: 1的条目,确认GPU资源已被集群识别 - 删除调度失败的旧Pod后重新提交创建,此时调度器可正常分配GPU资源,Pod即可正常启动
注意事项
- 如果你的集群使用Ubuntu节点镜像而非默认的Container-Optimized OS(COS),需要选择对应Ubuntu适配的驱动安装配置,避免驱动不兼容
- 不要新增带GPU的节点,你的配额仅支持1块NVIDIA K80 GPU,新增GPU节点会直接触发配额不足的集群创建报错
- 无需为集群额外配置GPU相关的标签或污点,GKE创建带加速器的节点时会自动完成相关调度配置,驱动安装完成后即可直接使用
内容的提问来源于stack exchange,提问作者Patrick
相关产品推荐
相关产品推荐

