使k8s集群可以调度GPU
背景:最近接到任务,要使k8s集群支持调度GPU
,我对硬件资源不是很懂,大概看了看官方,简单梳理了一下思路,便开始了踩坑之路(本片文章是无坑文档,请放心使用/参考)
前提条件:
对于实验学习而言,在k8s集群中,至少保证1台node节点是有显卡的(我这里是NVIDIA)其他品牌显卡请出门右转自行Google
集群环境说明:
- 因为我这里是学习实验环境,所以只有
ai-gpu-flask2.novalocal
支持GPU
,其余的节点都是虚拟机。最终验证也是在ai-gpu-flask2.novalocal
上进行的
系统 | 名称 | 角色 | k8s版本 |
---|---|---|---|
centos7.6 | ai-gpu-flask2.novalocal | worker | kubeadm v1.16.8 |
centos7.6 | master | etcd,master | kubeadm v1.16.8 |
centos7.6 | node1 | worker | kubeadm v1.16.8 |
centos7.6 | node2 | worker | kubeadm v1.16.8 |
预安装
- 本步骤在支持
GPU
节点上执行 - 参考链接:https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html#introduction
要验证您的GPU是否具有CUDA功能,请转至与您的发行版等效的“系统属性”,或者在命令行中输入:
lspci | grep -i nvidia
00:06.0 3D controller: NVIDIA Corporation TU104GL [Tesla T4] (rev a1)