问题描述:
Pod.yaml文件中关于GPU资源的设置如下:
然而在docker中运行GPU程序时,发现宿主机上的两块GPU都在跑。甚至在yaml文件中删除关于GPU的请求,在docker中都可以运行GPU。
原因:
上例说明alpha.kubernetes.io/nvidia-gpu无效。查看yaml文件,发现该docker开启了特权模式(privileged:ture):
而在特权模式下,docker是可以访问到宿主机上的所有资源的。当然,如果想在docker里运行GPU程序,仍然需要将cuda库映射到docker中。
找到了原因,解决办法就是关闭特权模式,删掉这段配置就好啦!