VDI,英文全称 Virtual Desktop Infrastructure,即虚拟桌面基础架构,虚拟桌面架构采用"集中计算,分布显示"的原则,通过虚拟化技术,将所有客户端的运算合为一体,在企业数据中心内进行集中处理,而桌面用户采用瘦客户端或专用小型终端机的方式,仅负责输入输出与界面显示,不参与任何计算和应用。它不是给每个用户都配置一台运行 Windows XP 或 Vista 的桌面PC,而是通过在数据中心的服务器运行 Windows XP,将你的桌面进行虚拟化。
与SBC相比,VDI有何优势?
应用多时性能相对较好。在VDI环境下,终端用户的Windows XP工作站运行于刀片机上,或是作为几台虚拟机的其中一个运行于服务器上。而在SBC环境下,一台服务器可能同时要支持 50 个、100 个或更多的终端用户。在VDI环境中,每台用户虚拟机可利用的资源更多,所以应用繁重时性能比SBC好。
没有兼容性方面的问题。在实际中,并不是所有的应用都与终端服务相兼容。在VDI环境下,每个用户虚拟机就是一个单独的工作站,因此你不用担心应用与终端服务的兼容性问题。
更好的安全性。由于每个用户都有自己独立的Windows XP虚拟机,所以你不必为加固用户session而担心。如果其中一个用户出错,不会影响到其他的用户。
后端服务器的可移植性。在VDI中,系统是建立在虚拟机技术之上的,你可以“暂停”单个虚拟机,然后将其从一台服务器移到另一台服务器上。这在维护系统时将会很方便。你可以想象,你只需点击管理控制台的一个按钮,就可以将用户移到另一台服务器上。可能用户会收到一个弹出的提示框“请稍等”,然后服务器会将虚拟机的存储内容转移到一个硬盘上,虚拟机将在另外一个物理硬盘上进行自动配置,虚拟机重新联机。整个过程不到 30 秒,用户就恢复到中断时的位置。
客户运行软件的“工作站”版。由于VDI工作站是基于Windows XP,而不是Windows Server sessions的,因此任何软件和应用都会把session作为真正的工作站。这样,你就可以使用所有软件的“工作站”版。
用户控制。同样,由于每个用户都可以得到一个完整的Windows XP工作站虚拟机,所以他们可以根据自己的需求定制自己的虚拟机(或者在你允许的权限范围内)。但作为管理员,你可以更加灵活地设置用户权限,因为你不必担忧他们会影响其它用户。这也就意味着,需要自己工作站的管理权限的用户也可以被虚拟化。
用户可离线使用session。如果你用的是基于虚拟机的VDI解决方案,请记住,不管你的物理硬件如何,虚拟化软件提供给用户的是一个通用的硬件情况。因此在所有用户桌面都是虚拟机的情况下,用户在办公室时可以使用集中的后端服务器,而不在办公室需要离线运行时,他们可以使用手提电脑运行VMware。有一个“断开连接”选项可以暂停用户session,然后复制硬盘镜像和内存到手提电脑,然后可以在手提电脑上恢复虚拟机。你甚至可以用通用手提电脑,供用户出差时使用。想象一下,VMware ACE可以灵活采用本地或远程运行,并且可以轻松地前后切换。
因此,VDI 的确很不错。它带来了一些传统安装的分布式个人桌面的好处,还有基于服务器计算的很多优点。不过它也有不足之处,因为分布式桌面也存在着很多的缺陷。
与VDI相比,SBC有何优势?
管理。SBC的亮点之一在于,你可以在单个终端服务器或CitrixPresentation Server上运行 50 或 70 个桌面session,这个服务器只需管理一个Windows实例。而在VDI中,50 到 70 个用户就要 50 到 70 个Windows的副本,然后还要对它们进行安装、配置、管理、打补丁、查毒、更新和杀毒。
VDI需要更多服务器硬件。与SBC相比,VDI潜在的高性能是有代价的。与在一台终端服务器上给用户分配session相比,让每个用户都拥有一个完整的工作站虚拟机将需要更多的计算资源。一个有 4GB RAM、双处理器的服务器作为终端服务器可以运行 50 到 100 个桌面session,而在VDI中,你可能就只能运行 15 到 20 台Windows XP虚拟机了。
VDI需要更多的软件。除了操作系统和应用软件以外,你还需要虚拟机软件(VMware或Microsoft),而且还要一些为用户提供的管理虚拟机自动配置的软件(本系列后面将介绍更多)。当然,这些都是要花费更多成本的。
VDI 并不是应用的最终根本解决方法。SBC 是一个不错的基础。基于此,让我们看一看以上列出的几点,再想想 VDI。这些原因中的第二,三和第五点都可以由 VDI 加以解决。
目前为止,很明显的一点是任何运行环境都可以从 SBC、VDI 和传统本地桌面的混合使用中获益。正如创建一个包含 SBC、传统安装的应用以及应用流(applicationstreaming)在内的综合应用解决方法是合理的,你应该把桌面看作仅是“另一种应用”,可以根据不同的情况,以多种方式进行工作。
在回答 “为什么有人会需要 VDI?”的问题时,经常提到的例子是远程软件开发人员需要。远程开发人员都有他们自己的 VM(虚拟机)桌面,能够在不影响其他使用者的情况下做任何他们想做的事。
这确实是一个很好的例子,不过,VDI 在其它许多方面也都有用。我担心过多地使用开发人员的例子会使人们误认为,如果他们没有远程开发人员,就不需要 VDI。
事实上,只要具有超级用户(power user)或者需要使用不熟悉的、不与终端服务器兼容之应用的用户,而用户仍然需要与传统 SBC 环境相关的灵活性,例如,从任何地方连接到应用、连接速度缓慢等,任何这样的情况,VDI 技术都是很有用的。
VDI 几乎在各个方面都有用,不过会受到一些限制。它仅仅是用来为用户提供桌面的多种方式的一种。VDI 能够在百分之百的公司内发挥作用,但是可能只对公司内2%~4%的用户有用。的确,VDI 很有用。但是,人们并不会因此而淘汰 SBC 环境或者桌面计算机。