很多企业开始为虚拟化而忙乱,从AMD到Intel、微软到Novell到Red Hat。今天,每个主流的操作系统和硬件平台供应商都已经开始了在虚拟化游戏中跑马圈地。但事实是,在一台工作站或服务器上运行多个虚拟化系统已经可以轻易实现。
诚然,微软1998年在Windows NT上导入了虚拟化软件后,引起了用户的强烈反应。但实际上,类似的技术早在上世纪70年代的大型主机上就有了。若干年前,商业Unix厂商就在他们的企业级产品中加入了虚拟化的功能,这就是当时为什么大型主机卖得如此之火的原因了。
如果你调查一下,看近年来市场发生了什么变化,你会发现答案是让人吃惊的清晰。前几年,虚拟化的门槛很高,而且应用也很有限。但随着x86平台上虚拟化技术的实现,首次向人们展示了虚拟化应用的广阔前景,因为x86平台可以提供便宜的、高性能和高可靠的服务器。
更重要的是,一些用户已经开始配置虚拟化的生产环境,他们需要得到新的管理工具,从而随着虚拟化技术的发展而得到更大的收益。于是,这些领域的竞争日渐加剧。随着技术的成熟和稳定,厂商们从来没有像今年那样带着大量的新工具杀入了虚拟化市场。
大中小企业通吃
成功的实施案例在很大程度上是用户对虚拟化感兴趣的底线。而希望把成本低,往往成为中型企业采用虚拟化架构的驱动力。
并且,许多小型企业开始进入数年前部署的Windows 2000/2003的更新期,他们面临着两种选择:要么买一或两台高性能的服务器或者购买6、7台普通的服务器。前者采用虚拟化技术就能达到后者所能提供的性能和存储容量,但占用的空间更小,成本也不高。
对于大型企业,虚拟化技术更吸引人。他们的数据中心往往由数十台甚至上百台机架式服务器组成,里面闪烁着指示灯,风扇在嗡嗡作响,空气必须保证高速流通。然而,这一现象背后的一个不争的事实是,大量服务器的CPU被闲置着。Sun公司在大量调研后得出的结论:只有15%左右的资源在被充分利用。
CPU在高速发展,但操作系统却相对滞后,应用就更不用说了。这使得用户花大量的钱买新的服务器,运行的却是老的应用。在今天超级动力的芯片前,即使是保守的IT主管,也会超过其真正的需求购买超前的计算能力。那些已经运行数年的应用可能并不需要更大容量的内存和最新的CPU,但为了保证系统的可靠和对新硬件的支持,用户别无选择。
许多企业一旦实施新的采购,总会突破最初的预算底线。一台中端的服务器采用虚拟化技术后,一般能替代6或者7台低端的服务器。其节省下来的费用有时会超过最初购买的成本。如果在加上后期增加CPU、维修以及空调等的费用,其节省下来的费用会更多。
一个虚拟的数据中心能明显地降低运维成本。它在防范系统意外宕机、病毒感染和系统升级方面的能力让人印象深刻。而且,虚拟化架构对资源的管理更加简单,它可动态分配CPU、内存和网络带宽。
虚拟化的两种实现方式
大量的厂商进入虚拟化领域并宣传他们不同的实现方法。甚至虚拟化本身这个单词也意味着它不是一个简单的过程。一般来说,虚拟化领域目前在芯片技术领域分化成了两个阵营。
一种是通过硬件模拟实现的,它们的系统基于VMware或微软的虚拟服务器。该方式为每个虚拟服务器模拟了物理的服务器硬件,包括了全配置的BIOS。这种方法让每个虚拟服务器好像运行在主机平台的单个处理器上。硬盘方面,每个虚拟服务器是完全独立的,在其硬盘上有操作系统和必要的应用。
还有一种是通过主机来虚拟分类的,例如SWsoft公司的Virtuozzo和Sun公司的Solaris Containers。这种方式要求主机的操作系统能支持相当数量的虚拟操作系统,并通过同样的操作系统内核处理I/O需求和安排虚拟服务器对处理器的请求。
所有虚拟平台都需要一个管理程序,该程序要高于最基础的操作系统,低于虚拟化系统。管理程序通过底层的操作系统掌管着每个虚拟资源的请求和所有的I/O交互。每个虚拟平台的管理程序的组成是不同的,但它们的作用通常是一样的。
最新一代的AMD和Intel的处理器都在内核里设计了硬件虚拟化功能。Intel的VT(Virtualization Technology)技术和AMD的SVM (Secure Virtual Machine)使得虚拟化的竞争从软件延展到了硬件。而且今天CPU微码对动态内存的管理也已经由软件来管理。这些努力使得x86架构的处理器更加适合由虚拟服务器引发的独特的工作负载。
现在仍旧有其它的厂商忙于增加新的功能,包括虚拟服务器的管理、整合和移植等。例如,HP和IBM在所有的管理产品中加入了虚拟化工具,甚至DELL也在OpenManage中增添了虚拟化工具。
独立软件开发商同样看到了市场机会,他们一般结合Vmware和微软的虚拟化软件提供整合或镜像等解决方案。
虚拟服务器前景乐观
整体看来,这些新技术都在飞速发展。服务器虚拟化的前景和一年前相比几乎彻底改变了。差不多所有可量化的指标,包括性能、稳定性、和SAN的结合以及64位的支持,新的虚拟化平台前景乐观。
然而,另一方面,虚拟化的基础架构也受到了很大的挑战。
一个原因是技术主管们担心一个篮子里放了太多的鸡蛋。假如一台单一的服务器出故障了,只会影响某个应用。而如果运行着10台虚拟服务器的主机出了故障,造成的损失就很大。
而且,许多虚拟化用户逐渐发现较为困难的部分是向虚拟数据中心的移植。安装一台大服务器并在上面建立多个虚拟服务器是容易的,但在移植方面,从物理设备向虚拟层迁移,和物理设备间的移植没有什么不同。简言之,这是一个费钱、费时、充满困难的过程。
然而,这些困难也不是说不能克服。事实上,你可以在本年度看到更多的办法来解决这些问题。在未来,你经过数据中心时会发现只有少量闪烁的指示灯和服务器。但这不意味着只有更少的服务器需要管理。实际上,服务器的数量在增加,应用也越来越多,只不过它们运行在虚拟的环境中。同时,提供一项服务会变得很简单,用户无需考虑资源利用、可靠性、硬件需求和安装。
现在,惟一真正需要解决的问题是用好这些资源。其实,这个答案可能会有很多解决办法。目前主要是大量的虚拟化工具,但不久可能会是新的东西。不管怎样,服务器虚拟化正进入青春期,它有着坚实的基础、各种各样的机遇和更加广阔的前景。