一. NVIDIA GRID License组件工作过程介绍
1.1 License获取阶段
1.2 License释放阶段
二. GPU 透传使用方式介绍
三.通过故障排错加深对GRID License组建理解
NVIDIA GRID 2.0以及后续的版本在部署的过程中都需要安装License组件,License组件主要控制vGPU虚拟机GRID驱动的加载、虚拟桌面的分辨率和帧率。接下来我们来看看GRID License组件是如何工作的?
通过上图我们可以看到,GRID分为三个版本:
当带有 VGPU 的虚拟机运行的时候会请求 License 服务器中的License授权,根据L icense 服务器中的 GRID License 版本,加载不同的 VGPU 驱动(普通驱动和专业卡驱动)。我们可以看到虚拟 PC 和虚拟应用的 License 加载的都是普通的显示驱动。
整个License获取和释放的过程发生在如下两个阶段:
虚拟机在启动的时候通过访问License服务器的地址+ 端口 7070 发起License的请求,当正常获取License后加载GRID驱动。
1.2 License释放阶段当我们关闭虚拟机的时候,之前虚拟机获得的License会自动释放,还回到License服务器中。
这里需要明确的一点是当虚拟机处于关闭状态的时候是不占用任何的 GRID License 的。此外如果客户使用的是 K1,K2 的GPU是不需要 License 授权的。
一般来说,我们在虚拟机中通过 NVIDIA 控制面板配置 License 服务器地址,当然我们也可以通过修改 Windows 的注册表、或者Linux的配置文件进行配置。下图展示了在Windows平台我们通过NVIDIA控制面板如何配置License服务器地址。
不过还有一种特殊的场景,就是我们把 GPU 通过透传的方式挂载给虚拟机,这个时候我们在授权 License 的时候有两种选择。
我们可以在 GPU 透传模式下的 NVIDIA 控制面板中看到有两种模式:
当我们不对透传的 GPU 进行 GRID 的授权,那么此 GPU 将运行在 Tesla 模式下,
运行在 Tesla 模式下的虚拟机有如下限制:仅支持一个屏幕显示且最大分辨率为 2560x1600 。在选择了Tesla授权模式以后,我们对这个分辨率限制进行验证。
在分辨率的设置里,我们可以看到最大分辨率仅支持 2560x1600。
而如果我们采用 GRID授权,分辨率最大可用到4K(4096x2160)。
以下通过一个实际的故障排错来加深对GRID License组件的理解
首先,我们在NVIDIA控制面板配置License服务器地址,始终提示无法获取vGPU许可证。
清空License服务器残留信息的方法:
Close the browser that accesses the license server. Go into the Microsoft Control Panel, Administrative Tools and Services Locate the “FlexNet License Server – nvidia” service, right click on it and select Stop Delete the nvidia directory from:清除完之前的License Server信息以后,成功导入新申请的License。
License过期日期已经更新到2017年9月21。
接下来我们查看日志,看到新的License实例和License文件已经导入。和我们面板上看到的信息一致。
至此我们成功解决了一例License的故障,通过此故障我们深入的了解了License服务器的工作原理和排错的基本方法。