本文分别从服务器、存储、应用程序和桌面虚拟化技术三个角度介绍了如何消除物理硬件的限制……
操作系统层虚拟化
实现虚拟化还有一个方法,那就是在操作系统层面增添虚拟服务器功能。Solaris Container就是这方面的一个例子,Virtuozzo/OpenVZ是面向Linux的软件方案。
就操作系统层的虚拟化而言,没有独立的hypervisor层。相反,主机操作系统本身就负责在多个虚拟服务器之间分配硬件资源,并且让这些服务器彼此独立。一个明显的区别是,如果使用操作系统层虚拟化,所有虚拟服务器必须运行同一操作系统(不过每个实例有各自的应用程序和用户账户)。
虽然操作系统层虚拟化的灵活性比较差,但本机速度性能比较高。此外,由于架构在所有虚拟服务器上使用单一、标准的操作系统,管理起来比异构环境要容易。
硬件助力软件
不像大型机,PC的硬件在设计时并没有考虑到虚拟化,而就在不久前,它还是完全由软件来承担这项重任。随着AMD和英特尔推出了最新一代的x86处理器,头一回在CPU层面添加了支持虚拟化的功能。
遗憾的是,这两家公司的技术各自独立开发,这意味着它们的代码不相兼容。不过,硬件虚拟化支持功能让hypervisor从极其繁重的管理事务中脱离出来。 这除了提高性能外,还有操作系统不用改动就能在准虚拟化环境下运行,包括Windows环境。
CPU层虚拟化技术不会自动发挥作用。为了专门支持它,必须开发虚拟化软件。不过,因为这种技术的优点非常诱人,预计各种类型的虚拟化软件会源源不断地开发出来。

对三种技术的评价
每种虚拟化方法都有各自的优点,选择哪个则取决于用户的具体情况。一组服务器基于同一操作系统,这非常适用于通过操作系统层实现合并。
准虚拟化技术集两者之所长,如果与支持虚拟化技术的处理器一起部署,优点更为明显。它不但提供了良好性能,还提供了可运行多种异构客户端操作系统的功能。
在三种方法中完全虚拟化性能受到的影响最大,但提供了这个优点:既能让客户端操作系统彼此完全隔离,还能让它们与主机操作系统完全隔离。它非常适用于软件质量保证及测试,另外还支持种类最广泛的客户端操作系统。
完全虚拟化解决方案提供了其他独特功能。譬如说,它们可以对虚拟服务器拍“快照(snapshot)”,保留状态、有助于灾难恢复。这种虚拟服务器映像可以用来迅速配置新的服务器实例。越来越多的软件公司甚至开始提供评测版产品,作为可下载、预包装的虚拟服务器映像。
就跟物理服务器一样,虚拟服务器需要不断得到支持和维护。越来越流行的服务器虚拟化已为第三方工具造就了兴旺的市场,无论是物理环境到虚拟环境的迁移实用程序,还是面向虚拟化技术的各大系统管理控制台,它们都旨在简化从传统IT环境迁移到高效、具有成本效益的虚拟环境的过程。