利用显卡的SR-IOV虚拟GPU技术,实现一台电脑当七台用

背景

虚拟桌面基础设施(VDI)技术一般部署在服务器,可以实现多个用户连接到服务器上的虚拟桌面。随着桌面计算机性能的日益提升,桌面计算机在性能在很多场景下已经非常富余,足够同时满足多个用户同时使用的需求。实际项目中,VDI很少部署在桌面计算机的硬件架构上。主要原因包括几个方面:

1)桌面计算机的CPU的吞吐能力相对服务器CPU较弱。

2)桌面计算机缺少一些冗余和可靠性设计。

3)支持显卡虚拟化的GPU一般都是数据中心级的显卡,一般不适用于桌面计算机平台。

 

Intel在11代CPU之后,集成显卡支持SR-IOV的vGPU技术。性能相比 GVT-g有较大的提升。 如果基于桌面计算机构建VDI系统,可以利用集成显卡的vGPU,实现支持vGPU的VDI系统。相比之下,传统的VDI方案支持vGPU,首先需要配置支持GPU虚拟化的专业GPU卡,同时还需要承担昂贵的vGPU软件许可费用。

因此本文探索基于桌面级CPU构建VDI方案,充分利用桌面CPU的集成显卡的vGPU技术,构建高性价比的支持vGPU的VDI方案。

 

可选方案

方案1:基于独立PC的迷你桌面云

业务需求:4核,8G内存,250G硬盘,支持vGPU

推荐配置: i5-12400,64G内存,2TB NVME,2TB SATA ,支持7个桌面。

部署方案: 虚拟化采用 Proxmox,启用集成显卡 SR-IOV,部署DoraCloud桌面云系统,支持7个带vGPU的桌面。

该方案适用于小微企业、工作室、创始团队。

 

方案2:基于Blade PC的集群方案

该方案采用2U6节点的刀片服务器,支持高可用集群,支持分布式存储,

业务需求:4核,8G内存,250G硬盘,支持vGPU

推荐配置: i5-12400,64G,2TB NVME,240G SSD,万兆,   共6个节点。

部署方案: 虚拟化采用 Proxmox,启用Ceph 分布式存储,启用集成显卡 SR-IOV,部署 DoraCloud桌面云系统。系统容量为 42个带vGPU的桌面。

 

本文选择方案1来介绍搭建过程。主机连接在局域网上。要求:局域网内有DHCP服务,并且有互联网连接。

 

步骤一:安装Proxmox,启用SR-IOV vGPU

12代CPU i5-12400d的主机,安装Proxmox 7.4后,执行如下命令,等待重启。

curl -o- http://vdi.doracloud.cn:9000/software/sriov01.sh  |bash

然后执行如下命令,等待自动重启。

curl -o- http://vdi.doracloud.cn:9000/software/sriov02.sh |bash

最后使用 lspci |grep VGA 验证 vGPU已经启用。

 

步骤二:安装DoraCloud for Proxmox 

DoraCloud 安装可以使用在线安装命令:

cd /var/lib/vz/dump; wget -qO- https://dl.doracloud.cn/dpinstall.pl --referer https://doracloud.cn | perl

上述命令自动下载 DoraCloud 管理系统的虚拟机。 并安装在Proxmox环境上。 DoraCloud管理系统虚拟机会通过DHCP得到一个IP地址。

如果网络中没有DHCP,也可以静态配置DoraCLoud系统的IP。具体参考DoraCloud的相关文档。

以下为安装过程的截图,共参考。

 DoraCloud管理系统安装完毕后,会出现如下提示,显示 管理系统的IP地址。

 打开浏览器,访问 https://192.168.1.203 ,输入账号 : admin  DoraCloud ,即可进入 DoraCloud管理后台

步骤三:对DoraCloud进行初始化配置

DoraCloud的初始化配置包括:【配置虚拟化】、【配置资源池】、【配置集群】、【配置用户数据库】几个步骤。都可以根据向导完成。 

配置虚拟化

配置资源池

 配置集群

配置用户数据库

   

步骤四:下载桌面模板 

接下来向导来到了【创建模板】环节。这里我们关闭向导,在模板菜单中选择在线模板库。

 在【模板】【远程镜像仓库】菜单中,选择 win10LTSC2021模板,下载改模板。

 根据网络下载速度,估计10-20分钟可以完成模板下载。 

 下载的模板中,还不含有 Intel 集成显卡的驱动。

步骤五:创建桌面池、用户

在桌面池菜单中,选择新建桌面池,参考下图。输入 桌面池、先择模板、设置桌面规格、选择GPU型号和vGPU类型。

在桌面池策略中,设置 最大创建数目、预创建数,设置绑定账号。 

注意,此处的绑定账号是指 桌面模板中的 Windows 账号。 模板的缺省账号为 administrator 123456,此处的绑定账号必须与模板的账号保持一致。

 配置桌面池的数据盘。

 其中的 DoraCloud VMID 字段填写 Proxmox 平台中 DoraCloud 管理系统虚拟机的VMID。 

选择确定,保持桌面池配置。 

 

接下来创建用户 user01, 选择桌面池  office。

步骤六:安装DoraClient进行桌面连接

用户可以通过多种方式连接DoraCloud。包括: DoraCloud云终端、DoraOS瘦客户机软件系统、DoraClient客户端软件(for Windows、Linux)。

这里我们选择 DoraClient 客户端软件连接DoraCloud云桌面。 

DoraClient下载地址:https://www.doracloud.cn/downloads/doraclient-cn.html

启动 DoraClient,设置服务器地址  192.168.1.203 。

 输入用户名,密码

 登陆后,系统自动分配一个桌面,并自动连接到桌面。

 客户端登录云桌面后,把鼠标放到屏幕顶部,可以弹出工具栏。

为了验证 DoraCloud是否为桌面分配了vGPU,可以回到 Proxmox管理界面,查看虚拟机的属性。可以看到DoraCloud为虚拟机配置了虚拟显卡的PCI设备 0000:00:02.1 。

 

步骤七:安装Intel GPU的驱动,验证SR-IOV vGPU效果

 由于模板中没有Intel GPU的驱动,进入windows桌面后,打开设备管理,可以看到 Microsoft基本显示适配器。带有一个感叹号,表示驱动没有正确安装。 

如果Windows 10带有驱动的自动更新功能。如果顺利的化,等待一会儿再查看,可以看到系统自动安装了驱动,识别了 Intel UHD Graphics 730设备。

 

如果Windows 系统没有识别驱动,可以到Intel官网下载驱动。

比如: 2023-05-16日发布的驱动 Intel® Graphics Driver 31.0.101.4369 

文件名:gfx_win_101.4369.exe

下载地址:https://www.intel.com/content/www/us/en/download/726609

 为了验证GPU效果可以访问如下一些网站:

测试网站1:http://webglsamples.org/aquarium/aquarium.html

 

测试网站2:https://akirodic.com/p/jellyfish/

 

根据Intel相关的测试报告,启用SR-IOV vGPU,测试程序1可以达到60FPS。  以下截图摘自 Intel Graphics SR-IOV的白皮书。

 

 

总结

利用12代处理器的显卡SR-IOV功能,可以轻松构建代vGPU的云桌面。利用i5-12400 CPU可以搭建支持7个带vGPU的云桌面用户。构建高性价比的VDI方案。

 

下图为本次测试使用的 迷你服务器。配置标压的 i5-12400 CPU。

云终端方面,可以选择朵拉云 DC20 云终端。 采用4核ARM A55 2.0Ghz 处理器。

 

posted @ 2023-05-23 23:58  朵拉云  阅读(4107)  评论(0编辑  收藏  举报