如何打造完善的桌面虚拟化基础架构
2010-09-25 服务器在线
自从桌面系统时代来临以来,希望能轻松自如的管理桌面系统基础架构的美好愿望就一直萦绕在IT领域之中。人们在让桌面系统为自己服务方面做过各种各样的尝试,但是没有一种能成为放之四海而皆准的解决方案。微软的Terminal Services, 思杰的XenApp和其他类似的产品都在市场上占据一席之地,但是拯救桌面系统的征程仍在继续。
走进ITl领域的新军:虚拟桌面系统基础架构
简而言之,虚拟桌面系统基础架构就是每个用户都有一个在管理程序顶端运行的桌面系统虚拟机。对于服务器虚拟化而言,每个桌面系统虚拟机都被分配了随机存储器,硬盘和输入/输出资源,以及在虚拟硬盘旁边的整套操作系统。用户使用远程显示协议(诸如微软的远程桌面系统协议,简称RDP或者思杰的独立计算基础架构,简称ICA)等与桌面系统虚拟机相互作用。客户端通常都是没有硬盘的瘦客户系统,除了与虚拟桌面系统基础架构连接外并不承担其他任务或者承担的很少。
应用这种或者其他以服务器为基础的桌面系统计算解决方案的结果是,功能的核心和之前所有的公司数据都被包含在了数据中心里,不会散布到很远之外的远程站点或者其他地方去。
通过集中管理桌面系统,你可以简化管理流程和维护系统的安全性,消除对替换故障电源,硬盘等组件的基础桌面系统维护需求。也相应降低了能源消耗,在某些情况下,由于这些庞大的客户端系统和350瓦电源被去除,用于给密集的办公空间制冷的费用也随之降低。这种好处是实实在在的。
但虚拟桌面系统基础架构也有一定的不足。在其他以服务器为基础的桌面系统计算解决方案中就发现了这些问题,而且这些问题也同样波及到了虚拟桌面系统基础架构的部署。
让我们首先从最重要的部分下手:用户接受度和整体性能。每个虚拟桌面系统基础架构实例在执行文字处理,电子邮件或者电子表格模板等相对平常的任务时速度都很快,但是他们面对诸如Flash应用程序,视频或者其他多媒体应用软件这些内容丰富的文档时可能就力不从心了。这主要是受到桌面系统显示传输协议而不是虚拟机性能本身的限制,但是这只能让问题解决起来更加困难。非常公共的问题会引起用户认可度的连锁反应,甚至会导致任何大型项目的夭折。
这个问题的解决方案可能会代价不菲。一些厂商在服务器和客户端两方面双管齐下,将视频流是音频流与显示协议一起传输,将他们与客户终端匹配并使用客户端的处理能力来传播视频。这使得视频重放显得更加流畅,但是需要功能更加强大,价格也更加昂贵的瘦客户端来处理这些多出来的工作负载。
这种解决方案在标准视频回放显示上工作良好,但是他们在Flash视频和Flash应用程序上依然存在问题。使用标准远程桌面系统协议能对虚拟桌面系统基础架构或者任何其他以服务器为基础的桌面系统计算解决方案的性能进行测试:只要使用微软的远程桌面系统客户端连接器连接到服务器或者桌面系统上就可以观赏YouTube上的视频。如果你正在使用每秒传输速率为100MB或者速度更快的本地局域网的话,那么视频观看将更加畅通无阻。一般来说,用微软的远程桌面系统客户端连接器观赏视频需要每秒传输速率为3.5MB的可持续带宽。
对带宽的关注与服务器端桌面系统计算如影随形,诸如为广域网连接中的桌面系统服务(高延迟和低带宽)。打印和与USB是被正确匹配可能也会存在问题。这些问题需要选择正确的工具和制定相应的预算来解决,虚拟桌面系统基础架构也不例外,但是他们必须在虚拟桌面系统基础架构规划阶段就得到解决。
其他问题显然是虚拟桌面系统基础架构所特有的。首先也是最重要的是:存储需求。一些虚拟桌面系统基础架构配置需要每个桌面系统都配置有像其他虚拟机一样的虚拟硬盘。当你每个桌面系统虚拟机的存储空间是8GB或者10GB时,再乘以期望中的虚拟桌面系统基础架构用户数量,存储就马上成为一个费用高昂的需求。还应该强调的是,虚拟桌面系统基础架构在减少桌面系统软件管理需求方面一点不少,因为每个虚拟机都是一个必须像其他任何桌面系统一样进行管理的资源池。这就意味着使用第三方工具来推进软件的更新和安装需要作出改变。
然后就是成本的问题。从一方面来说,虚拟桌面系统基础架构可能要调整现有的虚拟基础架构,硬件最初的配置成本可能会低于其他以服务器为基础的桌面系统计算解决方案,但是一旦你突破了虚拟桌面系统基础架构所需的软件许可证授权的数量,你会发现相关费用也随之直线攀升。根据你所选择的解决方案不同,你可能要为每个桌面系统虚拟机支付比每个传统客户端系统更多的费用,而投资回报率也更高了。在你开始执行任何虚拟桌面系统基础架构部署之前,了解所有这些数据是至关重要的。要计算瘦客户端的成本,实施费用,许可证授权和现有虚拟基础架构扩展的费用。
虚拟桌面系统基础架构和Terminal Services Distinct是虚拟桌面系统基础架构和传统的微软终端服务解决方案之间的两大对决。他们都在单个服务器或者成组服务器上执行许多用户桌面系统任务,他们都使用同样的协议来将这些服务交付给同样的瘦客户端。两者都会对集中型桌面系统管理工具产生影响,但是相似之处也仅限于此。
一个Terminal Services环境在服务器操作系统本身上完成所有的用户任务。这就意味着Windows Server 2003或者Windows Server 2008操作系统的单个实例是安装在服务器裸机上的,所有的用户都在服务器实例上登录。每个用户任务都在自己的操作系统上完成。
这种方式的好处是可扩展:一般来说,你可以在单个物理服务器的Terminal Services中插入比虚拟桌面系统基础架构更多的任务,虽然这取决于应用软件的设置。在虚拟桌面系统基础架构环境中,通过定义桌面系统虚拟机的资源来规范资源限制。
在虚拟桌面系统基础架构配置中,同样的服务器正在管理程序上运行而不是在整个操作系统上,可以托管一定数量的桌面系统虚拟机。最终的影响是每种方法在同样的服务器上完成多个桌面系统任务,但是这些任务的管理却有各不相同。
举例来说,使用微软的Terminal Services无法实现虚拟机上的任务快照,也没有办法将活动任务从一台物理服务器迁移到另一台物理服务器。这就意味着在系统维修之前,所有的用户必须终止Terminal Services服务器。使用虚拟桌面系统基础架构的话,服务器上所有活动的桌面系统任务可以被迁移到同一个资源池的其他服务器上,而且不用中断系统的运行。正常托管所有虚拟机的服务器在悄无声息中就完成了维护任务。
确实,对于任何高级的虚拟基础架构而言,无需中断某个应用软件或者干扰某个用户就能重新构建整个基础物理服务器架构是可能的。
另外负载平衡是正确配置虚拟桌面系统基础架构解决方案的内在属性。如果一个或者多个桌面系统虚拟机正在使用某个托管系统上的重要资源,这个系统上其他的虚拟机可以将闲置职员迁移到其他物理托管服务器上,以确保所有的桌面系统有足够的资源供用户使用。在传统的Terminal Services境中,这却是不可能的;一个繁重的用户任务会对同一个服务器上的其他任务产生负面影响而且没有任何自动的补救措施。
但是Terminal Services在管理上有个很大的优势:即对托管服务器的更改可以用于每个用户的任务。应用软件实例可以简化到一定级别上,全球性的修改也相对比较容易。
而使用虚拟桌面系统基础架构的话,这一点要实现起来就并不容易。根据桌面系统虚拟机配置的方式不同,桌面系统虚拟机的升级和更改可能需要手动分别修改每个虚拟机;使用第三方管理工具或者激活桌面系统虚拟机模板进行更改或者保存模板。连接到主模板的桌面系统虚拟机将反应出下次用户登录时的变化。
虽然如此,应用软件处理是虚拟桌面系统基础架构超越Terminal Services的主要优势之一。在Terminal Services环境中某些功能可以受到厂商的限制而无法获得支持。这也给以Terminal Services为基础的基础架构带来了实际问题,但是对于虚拟桌面系统基础架构来说却不是个问题。
原因是什么呢?虚拟桌面系统基础架构配置是每个用户一个指定的桌面系统实例,在操作系统级别上与物理桌面系统是不做区分的。任何在复杂客户端上运行的应用软件都应该在虚拟桌面系统基础架构虚拟机上运行(视频和图形性能的应用软件例外)。这也是很多公司主推虚拟桌面系统基础架构而不是Terminal Services的主要原因之一。