韩友前
(江苏建筑职业技术学院 实验实训管理处,江苏 徐州 221116)
桌面虚拟化又称为云桌面,是虚拟化技术的一个具体应用,它将桌面和应用进行虚拟化并以服务的形式交付给用户,从而实现在任何时间、任何地点都可以远程访问个人专属的桌面环境[1]。桌面虚拟化将桌面资源集中管理,部署灵活,是计算机实验室管理的理想解决方案。越来越多的高校尝试使用桌面虚拟化技术对机房计算机进行管理和维护,为计算机实验室管理的规范化、信息化、智能化进行了有益的探索。
智能桌面虚拟化(intelligent desktop virtualization,IDV)是“集中存储,集中管理,分布计算”的架构模式。服务器端存储和管理操作系统镜像,客户端负责计算和执行[2]。首次部署时客户端从服务器下载系统镜像并缓存至本机磁盘存储,终端通过虚拟化层运行系统镜像。由于系统镜像和虚拟化层都在本地,可以充分利用本机的CPU 和GPU 计算资源,性能接近本地非虚拟计算机,使用习惯和传统计算机一致。系统可以不依赖服务器和网络离线运行,对服务器的配置要求不高,一台普通计算机即可管理数百台终端。但由于是虚拟的系统,使用体验及兼容性和传统计算机相比稍差。不支持平板、手机等瘦终端设备,不支持移动办公。
IDV 计算分布在终端,可以离线使用,适合对终端性能要求较高、图形计算密集型应用场景。
IDV 是一种计算分布在终端的云桌面架构形式,服务器端保存和管理系统镜像,终端缓存服务器推送过来的系统镜像并在本地虚拟化层运行[3]。
服务器端由控制台、数据库、服务程序等组成。控制台可以设置控制策略实现对客户端桌面和用户数据的管理。数据库存储系统镜像文件、快照文件和用户数据等。后台服务主要有负责文件传输的P2P 服务[4],负责IP 地址分配的DHCP 服务以及实现其他功能的一些服务。
终端是具备计算和数据缓存能力的胖终端设备,通常为台式机或笔记本电脑等,由物理硬件、虚拟化层、操作系统、应用程序和用户数据组成。虚拟化层是运行在裸机之上的虚拟机管理程序,负责虚拟桌面的实现,同时虚拟化层还负责独立于操作系统的用户管理、策略设置、数据传输、数据封装和解析等,即“带外管理”。虚拟化层之上就是用户使用的虚拟机部分。IDV 逻辑架构如图1 所示。
智能云教室是基于IDV 架构的云桌面管理系统。具有集中管理、高效跨网段部署、多系统快速切换、支持离线运行等诸多优点,可以快速构建一个安全、稳定、智能的云教室管理平台。
1.2.1 智能云教室部署实例
某高职院校有15 间公共机房共1 000 余台计算机,采用联想EDU 硬盘保护同传系统管理。其中两间机房162 台计算机使用时间较长、老化严重,需要更换新机器。由于使用传统的硬盘保护卡管理维护效率不高,新机器决定采用技术先进的云桌面进行管理。综合考虑计算机性能需求、机器品牌、离线运行、经费预算等因素,最终选择基于IDV 技术的联想智能云教室解决方案。部署环境如下。
(1)网络环境。需要部署云桌面的两间计算机实验室位于同一楼层,每个房间有81 个机位。机房内布线为UTP 六类网线,接入层交换机和汇聚交换机之间通过光纤连接。终端到服务器之间为千兆局域网。其网络拓扑如图2 所示。
(2)硬件配置。计算机实验室主要服务于建筑类专业,终端安装图形计算密集的建筑信息模型(building information modeling,BIM)类软件较多,所以需要较高的硬件配置。服务器的主要作用是镜像管理,对性能要求不高,一般的入门级服务器即可胜任。硬件配置见表1。
表1 硬件型号配置
(3)软件安装规划。机房需要安装的软件和考试客户端较多,应根据软件性质和服务专业提前做好安装规划,避免软件冲突,同一系统节点下不宜安装过多大型软件。为了稳定和安全,各个考试客户端软件应尽量安装在纯净的系统中。软件配置见表2。
表2 软件安装规划
1.2.2 云教室部署步骤
智能云教室采用的是客户机/服务器架构,分为服务器和客户端两部分,重点是基础镜像的制作,云教室的部署主要分为以下6 个步骤[5]。
(1)服务器端安装。服务器安装微软Windows Server 12 操作系统,设置静态IP 地址,安装智能云教室服务端。
(2)基础镜像制作。基础镜像是虚拟机操作系统镜像,它是生成用户操作系统的模板。选择任意一台终端计算机作为样机,安装Windows10 操作系统和Office、WinRAR、PDF 阅读器等常用软件。安装云教室客户端将系统虚拟化,通过控制台分别上传系统分区和数据分区到服务器,完成基础镜像制作。
(3)建立虚拟磁盘。虚拟磁盘是客户端云桌面系统的存储载体,通过控制台创建虚拟磁盘,设置磁盘名称和空间大小,虚拟磁盘容量应小于或等于客户端物理硬盘,通过对虚拟磁盘的属性设置可以实现对客户端硬盘的统一管理。
(4)创建操作系统。先创建系统快照,在控制台创建系统根快照,然后引用该快照,在虚拟磁盘上创建操作系统,多系统的创建可以重复上述步骤。
(5)分组管理。在控制台分组管理界面创建分组,设置本组终端引用的虚拟磁盘,IP 起始地址、计算机名等属性完成分组创建。服务器端开启部署服务,勾选默认分组,完成部署准备工作,等待终端计算机登录。
(6)客户端部署。在终端计算机BIOS 中设置网络启动为第一启动项,安装底层系统,计算机重启后进入系统桌面,服务器通过P2P 协议在后台快速部署数据到客户端。部署流程如图3 所示。
图3 智能云教室部署流程
基于IDV 的智能云教室部署高效、管理灵活,满足了目前机房软件复杂、系统环境需求多样和快速部署的需求。然而将IDV 云桌面技术应用于计算机实验室管理的实践中还存在一些问题需要解决,例如软件的易用性、兼容性和保护卡类软件相比有较大的差距;管理人员需要具备一定的虚拟化和云桌面专业知识,否则很难发挥IDV 云桌面的技术优势;最突出的问题是终端使用体验欠佳,特别是在机械硬盘和Windows10系统环境下,终端计算机启动时间过长,从加电开机到打开软件需要近10 min;进入桌面后操作卡钝、系统运行不流畅等。
在运行软件时,发现硬盘指示灯频繁闪烁,查看Windows 任务管理器“性能”一项,CPU 和内存利用率均在合理范围,而“磁盘处理读取或写入请求的时间百分比”一项则经常接近100%,因此初步判断系统运行卡顿的主要原因是由于硬盘频繁读写,I/O 负荷接近饱和造成的。主要原因有以下几个。
(1)虚拟化造成的性能损耗。虚拟化是将硬件资源进行逻辑化处理的过程,是用软件模拟硬件的技术。虽然现在虚拟化技术已非常成熟,但是无论采用何种虚拟化方案,虚拟的计算机和本地非虚拟计算机相比,都不可避免地造成一定程度上的性能损耗。QEMU(quick emulator)是用软件虚拟出硬件的一种计算机开源虚拟化技术,是纯软件实现的硬件模拟,所有的虚拟机指令都需要经过QEMU 重新编译后在物理硬件上执行,这样一方面让QEMU 具备了跨平台的通用性,另一方面使得QEMU 的执行效率较低[6]。在实际应用中QEMU 通常是通过KVM(kernel-based virtual machine)模块加速后使用,KVM 是硬件辅助的虚拟化技术,它集成在Linux 内核中,执行速度快、效率高,KVM 主要负责高速计算的CPU 和内存的虚拟化,而硬盘、网卡、显卡等I/O 设备的虚拟化则由QEMU负责完成。智能云教室终端采用的是KVM-QEMU 虚拟化技术方案,架构如图4 所示。
图4 KVM-QEMU 架构
(2)文件索引冲突。由IDV 云桌面的架构原理可知,IDV 云桌面数据是分层结构,由基础镜像、用户程序、用户数据3 层组成[7]。为了标识用户产生的数据文件,IDV 底层文件系统监控进程需要不停地对增量数据进行索引,这些变化的数据会根据差异同步Rsync 算法去重、加密、压缩后同步到服务器存储[8]。而SysMain、Windows Search、Windows Defender 等系统服务进程也同时会对变化的数据进行跟踪索引,这些进程同时对文件进行索引就会引起冲突,造成磁盘频繁的读写,使终端系统运行缓慢,反应迟钝。
(3)过多快照影响系统性能。在已部署系统的终端安装新软件并上传到服务器时,在当前系统快照下会自动生成一个新的数据增量子快照,其他终端开机时会自动同步增量数据,此时终端系统数据由基础镜像数据和增量数据组成。快照的使用给不同操作系统环境之间的切换带来了便利,但如果增量快照节点数量过多,当系统有读写请求时就会在基础镜像和多个快照之间来回检索,从而延迟系统的响应时间,导致系统运行变慢[9]。
(4)加载虚拟化层延长启动时间。IDV 终端启动(从加电开机,到系统能正常使用)较慢主要原因是终端开机启动包括两个过程,一个是虚拟化层Linux系统的启动,另一个就是用户使用的Windows 虚拟系统的启动[10]。另外使用未优化的Windows10 系统启动时会加载大量后台服务和程序,同时终端系统镜像数据还需要和服务器端镜像数据进行比对以确认是否有新的增量数据需要部署,使得开机进入桌面后3~4 min内磁盘占有率一直处于接近100%状态,这段时间内用户是无法操作的。
(5)Windows10 启动后台服务过多。Windows10操作系统启动时有许多服务进程和用户程序在后台运行,如超级预读服务SysMain、微软智能助理Cortana、文件索引Windows Search、微软云存储服务OneDrive、杀毒软件Windows Defender 等,这些服务和程序在系统启动时加载到内存,占用较多的系统资源,延长了系统启动时间。
(6)机械硬盘读写性能较差。终端硬件配置存在短板,存储设备是机械硬盘,读写性能较弱。台式计算机机械硬盘读写速度通常只有100 MB/s 左右,而固态硬盘读写速度基本都在500 MB/s 以上。机械硬盘的读写速度已经成为制约计算机性能发挥的瓶颈。
IDV 终端启动时间过长,运行卡顿,影响了用户的使用体验,不利于IDV 云桌面的推广和应用,必须对其进行优化。通过分析IDV 云桌面系统运行缓慢的原因,对造成系统运行卡顿和启动缓慢的可能因素进行有针对性的优化,减少不必要的性能损耗环节,可以有效提高系统流畅度,加快系统启动时间。主要有以下优化措施。
(1)优化基础镜像,减少后台服务启动。基础镜像是生成终端系统的模板,在安装样机时对基础镜像系统的后台服务和程序进行适当精简和优化,可以提升终端系统的启动速度和运行效率。可关闭对系统性能影响较大而不影响正常使用的一些后台服务,例如SysMain、Windows Search、Windows Defender 等服务进程I/O 操作频繁,对磁盘性能影响较大,可以禁止开机启动。有些服务例如Windows Update、Security Center、Windows Firewall 等无法直接在服务管理窗口中修改启动类型,可以通过修改注册表、组策略或借助第三方优化工具予以关闭。其他提升系统性能的方法还有,关闭Windows 外观视觉效果,禁用智能助理Cortana、微软云存储服务OneDrive 以及禁止其他第三方应用的开机启动。
(2)选择功能简化的Windows10 LTSC 版本。该版本是微软提供给企业用户使用的功能简化版Windows10 系统,和其他Windows10 版本相比,仅有安全更新,没有内置Edge 浏览器、智能助手Cortana、应用商店和任何磁贴程序,后台服务启动极少。使用该版本作为终端系统安全稳定,可以有效提高系统运行效率。
(3)将应用软件安装在基础镜像中。在桌面虚拟化系统中,通常基础镜像使用的是读写性能较好的全镜像模式镜像格式,而增量文件则使用读写性能稍弱的稀疏模式镜像格式[11]。将软件安装在读写性能较好基础镜像中可以提高软件启动速度和运行效率。
(4)减少系统快照的数量。系统快照数量过多时,会增加数据检索的时间成本,可以采用合并快照的方法来减少快照数量,当软件不多时,尽量将软件都安装在基础镜像中。
(5)用固态硬盘替换机械硬盘。部署基于IDV 技术架构的云教室时,由于虚拟化带来的磁盘I/O 损耗较大,在预算充足的条件下,建议使用读写性能较好的固态硬盘代替传统的机械硬盘来保证系统运行的流畅度。
经过上述方法优化后,终端系统启动速度明显加快,软件操作较为流畅,使用体验良好。为评估优化效果,对系统性能指标进行量化,使用几款测试软件对系统优化前和优化后的性能分别进行测试,重点测试了硬盘的读写性能,同时对系统启动时间和软件启动时间进行了记录。
2.4.1 测试环境
终端计算机、服务器及交换机配置见表1,联想智能云教室版本为V1.2.18.1101。
优化前软件环境:操作系统为Windows10 64 位专业版,保持默认设置。应用软件安装Office10 专业版、AutoCAD2016 教育版、Revit2016 教育版、360 压缩,Chrome 浏览器,极域电子教室客户端。基础镜像只安装Windows10 系统,应用软件分3 次安装和增量上传,系统引用根快照下第3 个子快照。
优化后软件环境:操作系统为Windows 10 LTSC 2019 64 位,应用软件安装同优化前,按照上述优化措施优化。软件都安装在基础镜像中,操作系统引用系统镜像根快照。
2.4.2 测试结果
测试方法为Windows 进入桌面后静置5 min 待系统稳定后进行测试,测试软件使用默认设置,每组数据测试3 遍取平均数,保留两位小数。
(1)硬盘读写性能测试。CrystalDiskMark 是一款硬盘读写性能测试软件,使用CrystalDiskMark(版本:6.0.1 x64)软件对优化前后系统盘C 盘进行测试,测试结果见表3、表4。
表3 硬盘读取测试结果
表4 硬盘写入测试结果
(2)综合性能测试。鲁大师是一款国产计算机系统工具软件,通过模拟计算机不同使用场景对计算机CPU、内存、显卡和硬盘进行评估测试,最后输出测试结果。使用鲁大师(版本:5.20.1190)测试结果见表5。
表5 计算机综合性能测试结果
(3)性能基准测试。PCMark10 是一款基于实际应用的计算机综合性能基准测试软件,它提供基准、快速和扩展3 种测试模式,其中快速模式包括基本功能和生产力两个测试环节。利用PCMark10 基础版(版本:v1.0.1271)对优化前后进行快速模式测试,结果见表6。
表6 计算机性能基准测试结果
(4)启动时间。系统启动时间记录方法为在“启动”文件夹中新建一个文本文件,记录从按下电源开关到开机后自动打开文本文件所用的时间。软件启动选择常用的Autodesk CAD2016(局域网授权)为测试对象,记录从双击程序图标到显示程序主界面所用时间。测度结果见表7。
表7 系统和软件启动时间
从测试结果可以看出终端计算机虚拟化后硬盘性能较差,经过优化后硬盘读写性能、系统和软件启动时间都有了较大的提升,优化效果显著。其中CPU、内存、显卡优化后性能提升不明显,主要原因是虚拟化后它们的性能损耗本来就小,所以优化后这些硬件性能提升有限。由于条件限制,未能对更换SSD 硬盘后终端性能进行测试。
利用IDV 云桌面技术部署和管理计算机实验室,可快速交付各种教学、考试系统环境,具有稳定、高效、灵活的优点,满足计算机实验室软件环境复杂、管理困难的实际需求,提高了计算机实验室管理的信息化和智能化水平。对于IDV 云桌面终端系统运行缓慢的问题,可通过多种优化措施来提高系统运行的流畅度,从而提升用户的使用体验,促进云桌面系统在教育领域的应用和普及。