Rancher搭建K8S集群并配置GPU共享完整流程( 二 )


为GPU节点打标签
为了将GPU程序调度到带有GPU的服务器,需要给服务打标签=true:
# 查看所有节点kubectl get nodes# 选取GPU节点打标kubectl label node gpushare=true# 例如我这里主机名为master,则打标语句为:# kubectl label node master gpushare=true
更新可执行程序:
wget https://github.com/AliyunContainerService/gpushare-device-plugin/releases/download/v0.3.0/kubectl-inspect-gpusharechmod u+x kubectl-inspect-gpusharemv kubectl-inspect-gpushare /usr/local/bin
然后执行,若能看到GPU信息,则代表安装成功:
可以看到,此时GPU显存总数为,使用为0 。
测试
接下来进行测试,我们获取阿里云的示例程序:
wget https://raw.githubusercontent.com/AliyunContainerService/gpushare-scheduler-extender/master/samples/1.yamlwget https://raw.githubusercontent.com/AliyunContainerService/gpushare-scheduler-extender/master/samples/2.yamlwget https://raw.githubusercontent.com/AliyunContainerService/gpushare-scheduler-extender/master/samples/3.yaml
这四个文件分别是四个需要调度GPU的示例容器的yaml,直接使用-f x.yaml启动即可,这些文件中调度的GPU都是以G为单位的,这里我修改了调度数值,调度数值的参数名为:/gpu-mem,第一个为128,第二个是256,第三个是512,逐个启动,观察GPU占用率:
启动第一个:
启动第二个:
启动第三个:
至此,版本k8s配置GPU共享成功 。