如何搭建高效虚拟桌面架构(VDI)

一个典型的VDI(虚拟桌面架构)可以帮助项目在密度,性能和成本间取得平衡。密度是指项目所涉及的基础架构(硬件,软件,网络等)能够支持的最佳用户数量。性能指从可用性角度衡量的用户体验。成本自然就是指项目预算。

下面我列出的几点建议可以帮助你发挥VDI环境的最大优势。

#1 管理硬件瓶颈

一般来说,服务器硬件系统包含了三个主要的瓶颈:硬盘,内存和处理器。和大部分瓶颈管理方式一样,在VDI环境中,首先解决的是最大的瓶颈。管理瓶颈是发挥VDI最大效能的关键,实际上,下面几点建议都可以帮助解决瓶颈问题。

一般来说,服务器端的瓶颈以及所影响的范围包括以下方面:

瓶颈

影响

1. 磁盘 I/O

用户密度和性能

2. 内存

性能

3. 处理器

用户密度和性能

#2 选择正确的客户端和主机端的组合

我所见到的大部分VDI环境都是采用windows7和windows XP。在系统启动后,Windows7所需要的磁盘I/O要明显低于Windows XP,因此,如果有可能,我们应该用Windows7来搭建VDI架构。另外,Windows7具有更好的监管性能,可以与SP1和Hyper-V组合作为主机端,另外它只需要512MB内存即可。这种组合可以明显增加用户密度。实际上,微软表示,采用Windows7搭建VDI将比竞争对手提高40%的用户密度。这比我估计的还要好。

#3 动态内存

如果程序支持动态内存,就一定要用。它能明显的减低由于内存瓶颈导致的性能下降,增加用户密度和性能表现。

#4 使用 SAN

对于需要支持大量客户端的VDI架构来说,SAN是必须的。因为SAN技术可以支持更高的IO读写频率。

#5 别忘了克隆战争

如果你想采用动态VDI(Pooled VDI)解决方案,可以将多个克隆硬盘或者规格不同的硬盘连接起来,降低存储需求。但是我的感觉是,这样做所带来的管理压力要大于存储空间上获得的利益。因为每一次父镜像被修改时,所有的克隆镜像都需要重新建立。另外,如果你按照我的第四条建议,采用了SAN,那么就会发现,现在大部分SAN都具有内置的备份技术,可以提供与Pooled VDI 接近的存储空间优势,同时也不会加重主机的运算负载。

#6 用户状态管理

用户状态(比如漫游数据等)会加大磁盘IO负担。如果能够摆脱用户状态的管理,那是最好的。但是如果必须要维护用户状态,你可以考虑诸如 Citrix,Quest, RES, Appsense, Liquid Labs, 等厂商提供的工具。据说这些工具能够降低50%的磁盘IO负担。

#7 别忘了网络

用来交付VDI服务的网络架构能够直接影响到VDI的性能,并间接影响用户密度。根据网络协议的不同,VDI架构中每个线程至少需要20K到60K带宽保证最小延迟。目前Citrix HDX 协议(ICA的下一代)是最具效率的低带宽协议。

#8 GPU 虚拟化

如果你的VDI架构需要交付富媒体(视频,3D图像等),那么应该考虑主机上支持GPU虚拟化的解决方案,这样传输给客户端的数据流是最小的。目前据我所知,只有 RemoteFX 提供这个功能,但是可能不久后会有其他方案厂商提供类似技术。如果图像密集型的应用需要远程交付,另一种比较可能的方案就是考虑数据中心托管的刀片工作站。

#9 管理工具

如果你在目前的桌面和服务器管理中已经用到了一些工具,那么在VDI方案中最好还继续使用这些工具,以便达到这些工具的最大投资回报率。如果打算选择新的管理工具,那么就要考虑哪些环境适应能力较强,管理范围大的工具,或具有集成选项的工具。由于架构的交互性(网络,目录服务,安全软件等),如果管理工具的监控范围很小,就会导致管理不便。

#10 许可证

许可问题一般是比较容易被技术专家忽视的。记住不是所有的Windows版本都支持虚拟化(比如OEM版)。因此有肯能会由于升级或更换许可证导致费用增加。另外,随着桌面系统的变化,可能每年更新的许可证模式也会随之变化。