一般情况下,在创建或者扩容支持GPU计算的Kubernetes集群时,您不需要指定计算节点安装NVIDIA驱动的版本。若您需要指定安装某个驱动版本时,本文将为您介绍在创建支持GPU计算的Kubernetes集群时,如何安装NVIDIA驱动。扩容集群安装NVIDIA驱动的方法与创建的方法类似。
创建Kubernetes集群安装NVIDIA驱动需要指定特定标签,标签如下所示。
若需要指定驱动版本安装,版本通过ack.aliyun.com/nvidia-driver-version
标签标记即可。创建集群时将会尝试在可使用的NVIDIA驱动列表中寻找该版本,如果存在该版本则安装;如果不存在,则安装默认的驱动版本。当前可使用的版本列表如下所示。
若指定驱动文件下载地址安装,需要满足如下三个条件。并且需要通过ack.aliyun.com/nvidia-driver-oss-endpoint
标签指定存放驱动文件的OSS地址,ack.aliyun.com/nvidia-driver-runfile
标签指定文件名。
ack.aliyun.com/nvidia-driver-version
标签,标签右侧输入NVIDIA驱动版本,本文以410.104为例。单击添加之后,正常创建集群即可。kubectl get po -n kube-system -l component=nvidia-device-plugin -o wide系统显示类似如下,每个Pod对应一个GPU计算节点,从图中红线框部分可以看到它们所对应的节点名称和节点IP,以及运行时长,记录一个Pod的NAME值。
说明:如果是创建集群,想要验证NVIDIA驱动是否安装成功,任意选择一个Pod即可。如果是扩容集群或者手动添加节点,那么选择添加节点所对应的Pod即可。
kubectl exec -ti nvidia-device-plugin-cn-shanghai.192.XXX.XXX.205 -n kube-system -- nvidia-smi系统显示类似如下,确认安装NVIDIA驱动版本成功。
本节以上传NVIDIA-Linux-x86_64-410.104.run驱动文件为例,驱动文件可以在NVIDIA官方网站下载。
说明:创建集群时会通过URL拉取驱动文件,但是URL必须是HTTP协议。OSS默认使用的是HTTPS协议,此时你需要单击使用 HTTPS按钮,取消使用HTTPS的配置。
http://nvidia-XXX-XXX-cn-beijing.aliyuncs.com/NVIDIA-Linux-x86_64-410.104.run
为例,分成如下两部分。
ack.aliyun.com/nvidia-driver-oss-endpoint
标签的值,runfile作为ack.aliyun.com/nvidia-driver-runfile
标签的值。如果使用OpenAPI方式创建或者扩容集群,那么只需要在上传的body中的tags域添加特定标签即可,代码如下所示。
{ // 其他部分省略 ...... "tags": [ { "key": "ack.aliyun.com/nvidia-driver-version", "value": "410.104" } ], // 其他部分省略 ...... }
如果需要指定NVIDIA驱动下载地址,那么需要指定OSS产品endpoint和runfile名称,代码如下所示。如何获取OSS产品endpoint和runfile名称请参考方式二:控制台指定驱动文件下载地址安装。
{ // 其他部分省略 ...... "tags": [ { "key": "ack.aliyun.com/nvidia-driver-oss-endpoint", "value": "nvidia-XXX-XXX-cn-beijing.aliyuncs.com" }, { "key": "ack.aliyun.com/nvidia-driver-runfile", "value": "NVIDIA-Linux-x86_64-410.104.run" } ], // 其他部分省略 ...... }
说明:仅适用于创建或者扩容支持GPU计算的Kubernetes集群,Kubernetes集群具体版本如下所示。
- V1.11.5
- V1.12.6
- V1.14.8
- V1.16.6
在文档使用中是否遇到以下问题
更多建议
匿名提交