桌面虚拟化技术研究
2014-07-18谢峰
谢峰
桌面虚拟化是在物理服务器上安装虚拟主机系统,由虚拟主机系统模拟出操作系统运行所需要的硬件资源,操作系统运行在这些虚拟的硬件资源之上,可以实现多个操作系统共享物理服务器的硬件资源,从而提高资源利用率。虚拟桌面的存储和执行都集中在数据中心,用户使用终端设备通过远程协议进行访问。桌面虚拟化将所有桌面虚拟机在数据中心进行托管并统一管理,同时用户获得完整PC的使用体验。用户可以通过客户端,或者类似的设备在局域网或者远程访问获得与传统PC一致的用户体验,是一种仅将操作系统桌面呈现在用户面前的技术,由服务器端完成运算,可以结合服务器虚拟化和应用虚拟化进行。
1.桌面虚拟化模式
桌面虚拟化可以通过三种模式实现,分别是客户机的虚拟化、基于服务器模式和最新的基于云计算模式。对于这三种桌面虚拟化技术模式,他们之间是相关的,特别是其中的服务器模式和云计算模式。在这三种模式中,它们的主要差别是三种主要桌面虚拟机的使用或管理方面存在差异。若远端用户常漫游和脱机工作时,则可能会选用基于客户机虚拟模式,而不会依靠网络连接。若用户是固定的局域网用户时,则可能选择服务器模式,这样的好处是可以很容易实现耗电和资源使用的规模经济。若用户有适合的云计算的服务提供商的话,则云计算模式应该是最佳选择模式。
(1)基于客户机的桌面虚拟化:基于客户机的桌面虚拟化模式结构其定义为虚拟机运行在传统的个人电脑或笔记本电脑。对于基于客户机的桌面虚拟化模式来说,标准的虚拟机构成应包括操作系统、应用程序和用户设置,而虚拟机的信息是以磁盘映像文件格式存储在本地硬盘、网络空间、DVD或USB硬盘。对于基于客户机的桌面虚拟化产品来说,其最具代表性的是VMware的ACE(Assured Computing Environment),它的主要作用是解决复杂台式机环境下的部署、维护和控制等难题,适用范围很广,可以从公司拥有的受管理的个人计算机到难以接触到的员工拥有的个人计算机及第三方的个人计算机。
(2)基于服务器托管桌面虚拟化:基于服务器托管的桌面虚拟化模式结构其主要特点是客户端设备通过诸如RDP或者ICA的网络协议到中介代理。在代理服务器中,其中专门的代理软件主要是用于平衡服务器资源和客户两者的关系。中介代理的另外一个职责是认证和授权Windows Active Directory虚拟机生成、远程连接信息、高可用性和用户个人资料储存。在这种模式下,每一个虚拟机也同样包括操作系统、应用程序和用户设置。在不考虑其他外界的情况下,连接到中介接入的每一个远程连接都将获得虚拟机,并且可以自动恢复用户设置。在该模式中,为了增强系统可控性,也可配备WAN加速器和用户性能监测。在基于服务器模式的产品中,最具代表的是Microsoft、VMware的虚拟桌面基础架构和思杰。在所有的三种模式中,基于服务器模式是桌面虚拟化的最经典模式,而在这种模式中第三种电脑模式又是最众望所归。但对于基于服务器托管的桌面虚拟化模式,也存在明显的缺点,即它把个人电脑管理的风险转嫁给服务器管理员,主要原因是服务员可能缺乏对个人电脑管理应有基本技能或动力。相比之下,使用RDP网络协议连接图形密集型CAD/CAM效果会明显弱于它们在本地的运行。但是再从经济成本的角度看,成功的服务器虚拟化整合满足了对个人电脑桌面虚拟化的需求。根据最新瑞士信贷的报告预测估计,基于服务器的桌面虚拟化市场在2012年可以达18亿美元,并且这个数字将以50%以上的年增长速度,以及超过50%大型企业机构已经外包部分或全部台式机管理,这一比例预计还将继续增加。
(3)基于云计算的桌面虚拟化:基于云计算模式结构与上面的基于服务器模式非常相似,主要区别是它们的管理职权分别为企业自身和其服务提供商。在基于云计算的桌面虚拟化中,其企业Active Directory和商业应用软件仍然存在,同时供应商服务网格内的数据中心将提供高可用性的桌面虚拟化和应用。
2.桌面虚拟化关键技术
在最新的研究中,桌面虚拟化关键技术主要包括:服务器虚拟化技术和远程连接协议技术。
(1) 服务器虚拟化技术:虚拟化技术起源于对分式系统时代,其目标是在一台主机上运行多个进程,以便充分利用大型机上昂贵的计算资源。从广义上讲,虚拟化技术主要分为平台虚拟化、资源虚拟化和应用程序虚拟化等。笔者主要讨论平台虚拟化技术,平台虚拟化通过虚拟机监视器隐藏特定计算平台的实际物理特性,为用户提供抽象的、虚拟的硬件环境。VMM是一个位于计算机硬件和操作系统之间的软件层,运行在特权级,负责管理和隔离上层运行的多个虚拟机,并为这些虚拟机提供安全、独立的运行环境。每个虚拟硬件系统运行的操作系统称为客户操作系统(Guest OS),客户操作系统将通过VMM访问实际的物理资源。平台虚拟化技术按照实现方式可分为指令集虚拟化、硬件抽象级虚拟化,硬件辅助虚拟化、操作系统级虚拟化等。早期的平台虚拟化技术采用软件解决方案,为解决软件解决方案在性能方面的瓶颈,出现了硬件辅助虚拟化技术。
(2)远程连接协议:远程连接访问技术使用户能够在任何时间和地点,通过任何设备都能够访问到自己的桌面。协议效率决定了虚拟桌面使用的用户体验,而用户体验是桌面虚拟化产品生命力的关键。目前,在桌面虚拟化解决方案中主要使用的协议有Windows的RDP协议、Citrix的ICA协议和VMwarePCOIP协议。
3.桌面虚拟化技术简介
主流桌面虚拟化产品简介:目前,市场上应用较为广泛的桌面虚拟化技术主要有思杰、Microsoft和VMware三种。
(1)Citrix桌面虚拟化平台简介:Citrix桌面虚拟化支持多种的虚拟化平台,如Citrix XenServer、VMware vSphere及Microsoft Hyper-V等主要功能是存放和运行虚拟桌面。除创建和存储虚拟桌面外,还提供虚拟桌面管理所需核心功能,包括:启动虚拟桌面、停止虚拟桌面、创建虚拟桌面快照等。桌面和会话管理层:采用Citrix XenDesktop产品,主要包括desktop delivery controller,web interface等组件。它采用ICA协议,可显著降低对带宽的要求,提高用户体验。其主要的功能特点有:①提供一种端到端的桌面交付解决方案,桌面操作系统、应用程序和用户设置可分别进行交付,并可在数据中心集中化管理;②可提供静态虚拟桌面,也可以动态按需产生虚拟桌面。
(2)Microsoft桌面虚拟化平台简介:Microsoft桌面虚拟化平台主要采用Windows server 2008 Hyper-V,结构精简,使得虚拟机和硬件之间只通过很薄的一层进行连接,其中不包含任何第三方的驱动。Hyper-V支持多种用户操作系统,包括:Windows Server 2003、Novell SUSE Linux Enterprise Server 10、Windows Vista (x86)和Windows XP(x86)等;虚拟桌面管理采用微软的SCVMM(system center virtual machine manager)软件,提供特定于虚拟化环境所需的功能,主要包括:将传统未充分利用的硬件服务器转化为虚拟机(VM);供应、部署和管理虚拟机及其他虚拟资源;自动优化虚拟化的基础结构等。SCVMM可管理微软所有的虚拟环境服务器产品,包括Microsoft Virtual Server、Windows Server Hyper-V等。Microsoft桌面虚拟化解决方案的桌面和会话管理层,简单场景可采用Microsoft远程桌面服务,支持RDP协议。复杂场景可采用Citrix XenDesktop。
(3)VMware桌面虚拟化平台简介:VMware桌面虚拟化平台层采用VMware vSphere系统,其应用主要功能为存放及运行虚拟桌面。除创建和存储虚拟桌面外,还提供虚拟桌面管理所需的核心功能。