服务器虚拟化软件如何选型?
最大区别体现在对I/O设备的处理上
VMware ESX服务器的架构是建立在直接执行(直接在硬件上运行用户级的虚拟机编码)和二进制译码(对特权级别编码进行动态编译)的基础上,从根本上说,它是把一个完整的x86平台导出到虚拟机上。ESX服务器可以使大多数能在x86上执行的操作系统都能在虚拟机上运行,而不需要进行任何修改。
Xen的架构中使用了一种Para虚拟化技术(Para Virtualization),对虚拟出来的客户操作系统(Guest OS)进行修改,使它知道自己是在虚拟环境下运行。
这两种方式最大的不同就是对I/O设备的处理。虚拟机I/O端口和每个物理I/O端口设备之间如何路由在很大程度上影响了虚拟平台架构的性能,以及便携性、可持续性和稳定性。Xen采用的是分离驱动模式,真实驱动存在于一个中间层,这个中间层叫服务虚拟机,其他虚拟机上的特殊驱动通过这个服务虚拟机进行通信。这种方法能提供很好的性能,但是对于传统操作系统支持有限。
在ESX中,虚拟机的虚拟设备驱动与ESX内核里的物理设备驱动直接相互连接。ESX虚拟机可以为其虚拟设备使用现成的(off-the-shelf)驱动。这不仅能提供高性能,还能提供更广泛的操作系统支持。然而在这个模型里,新的设备驱动必须导入到ESX内核中。为了解决I/O虚拟化的平衡问题和复杂性问题,戴尔与英特尔、AMD这样的合作伙伴以及外设硬件供应商一起,在芯片组和I/O设备中引入了虚拟化支持。
企业级虚拟化解决方案的另外一个重要部分就是管理。戴尔Open-Manage这样的产品附送VMware Virtual Center、P2V和VMIm-porter,提供了整套工具,能有效进行部署、监控、操作自动化,以及对虚拟IT数据中心进行管理。
Novell和Red Hat都在它们的操作系统中整合了对Xen平台的管理,方法是运用像YaST和Anaconda这样的安装和配置工具,以及Virtual Machine Manager这样的管理工具。
服务器虚拟化管理解决方案
通过VMware虚拟化技术,某企业信息中心将一台物理服务器分割成多个相互隔离独立的"虚拟环境"(以下简称VM),确保各部门间的应用及数据完全隔离,增强了服务器的利用率。
1. 利用虚拟化技术进行服务器整合,全面提高服务保障水平。
2. 利用虚拟化技术进行统一管理维护,极大降低了管理工作量。
服务器整合改变了基础设施的复杂现状,允许管理人员使用VMware集中管理控制台对多台服务器进行集中管理。同时各部门也可以利用VMware用户控制面板对单个VM进行管理维护,进行诸如启动、停止、重启、备份、恢复及远??、灵活的集中管理模式将使管理员从简单机械的重复操作(如重装系统)中解脱出来,极大地降低了管理工作量。
3. 降低单点故障,提高服务保障水平。
服务器合并后降低了所需要管理的物理服务器数目,降低了单点故障率,与之对应的是管理、维护工作量的极大下降。信息中心的管理人员可以有更多时间管理有限的几台服务器,确保所有应用服务全天候正常运转,从而提高了服务保障水平。
4. 提高资源利用率,改善资源分配。
利用VMware虚拟化技术,信息中心可以按照不同应用所需的不同资源,动态地对物理服务器进行虚拟分区,提供最合适的虚拟环境(即VM),极大地提高了每台服务器的利用率,也使得资源分配更加合理。虚拟环境的大量使用,改变了以往在单台服务器上只能部署单个应用的弊病,而利用虚拟环境(VM)的安全隔离特性,完全实现了应用程序隔离的目的,最大程度地保障了多用户环境下的数据安全。
5. 降低备份/恢复的成本。
方案部署后,所有应用全部运行在虚拟环境(VM)中,完全实现了软硬件的隔离。VMware还真正实现了零宕机迁移技术,可将迁移工作对业务的影响降低为零。无需使用昂贵的专用存储设备,仅采用备份现有虚拟环境(VM)或进行VM整体迁移,就可以实现高质量备份/恢复方案。
通过部署VMware虚拟化技术,信息中心改善了基础设施的管理方式,极大降低了管理工作量,节约了服务器管理和维护成本。除了降低单点故障可能性外,还缓解了因资源利用率不高而导致的整体资源紧张问题,增强了数据安全性和灾难恢复能力。
虚拟化一路走来
尽管虚拟化技术只是在近年才变得火爆,但是虚拟化却有着悠久的历史。早在20世纪60年代,IBM公司就发明了一种操作系统虚拟机技术,允许用户在一台主机上运行多个操作系统,让用户尽可能地充分利用昂贵的大型机资源。
最早使用虚拟化技术的是IBM 7044 计算机。此后,IBM在20世纪60年代还开发了型号为Model 67的System/360主机。Model 67主机通过虚拟机监视器(Virtual Machine Monitor)虚拟所有的硬件接口。1965年,IBM公司的"M44/44X"计算机项目,定义了虚拟内存管理机制,用户程序可以运行在虚拟的内存中,对于用户来说,这些虚拟内存就好像一个个‘虚拟机',为多个用户的程序提供了独立的计算环境。
IBM提出的虚拟机技术,使一批新产品涌现出来,比如IBM360/40、IBM360/67以及VM/370,这些机器在当时都具有虚拟机功能,通过一种叫VMM(虚拟机监控器)的技术在物理硬件之上生成了很多可以运行独立操作系统软件的虚拟机实例。
由于虚拟化技术在商业应用上的优势,RISC(精简指令集计算机)服务器与小型机成了虚拟化技术第二代受益者。
1999年,IBM公司在AS/400上提出了上"逻辑分区(LPAR)"技术和新的高可用性集群解决方案。在POWER管理程序上运行的AS/400 LPAR,令单台服务器工作起来如同12个独立的服务器。而在2002年,IBM 的虚拟化技术又前行一步,其AIX5L v5.2首次包括了IBM实现的动态逻辑分区(DLPAR)。DLPAR允许在无需重启系统的情况下,将包括处理器、内存和其他组件在内的系统资源分配给独立的分区。这种在不中断运行的情况下进行资源分配的能力不仅令系统管理变得更加轻松,而且因为能够更好地使用资源而帮助降低总拥有成本。
不过,尽管惠普、Sun公司也跟随IBM在自己的RISC服务器上提供了虚拟化技术,但由于真正使用大型机和小型机的用户还是少数,加上各家产品和技术之间并不兼容,虚拟化技术仍旧不太被公众所关注。而现在,虚拟化技术的发展已经惠及到了x86处理器架构。
此前,虚拟化技术在x86架构上进展缓慢的主要原因是x86架构本身不适合进行虚拟化,不过这个障碍已经由英特尔、AMD修改,x86处理器的指令集得到解决; 还有一个原因是x86处理器的性能不足,也随着x86处理器在性能上的飞速提高得到了解决。由于x86架构的广泛普及,x86架构上的虚拟化技术得到了比以前更大的关注。
x86平台上虚拟化技术的实现,首次向人们展示了虚拟化应用的广阔前景,因为x86平台可以提供便宜的、高性能和高可靠性的服务器。更重要的是,一些用户已经开始配置虚拟化的生产环境,他们需要得到新的管理工具,从而随着虚拟化技术的发展而得到更大的收益。
不过,与已经有多年历史的Unix服务器、大型主机上的虚拟化技术相比,x86服务器上的虚拟化仍旧处于早期阶段--根据英特尔的蓝图,在处理器当中集成硬件辅助虚拟化指令只是IA平台上的第一步; 而在第二步则要实现I/O(输入输出)方面的虚拟化,直到最后实现整个IA平台的虚拟化。也就是说,目前的x86平台上,仅仅能够实现在处理器级别的虚拟化,在I/O以及其他方面的虚拟化还需要进一步发展。不仅如此,x86架构上的虚拟化技术还无法完美实现虚拟分区之间动态迁移,而这些功能在Unix平台、大型主机上早已不是问题。目前,x86架构上的虚拟化技术的最高规划是支持8路SMP(对称多处理)系统,可以实现对单个CPU资源的配置。
自2006年以来,从处理器层面的AMD和英特尔到操作系统层面的微软的加入,从数量众多的第三方软件厂商的涌现到服务器系统厂商的高调,我们看到一个趋于完整的服务器虚拟化的产业生态系统正在逐渐形成。这也使得在过去一两年时间里,虚拟化开始成为广受关注的热点话题。整体看来,随着计算机新技术的飞速发展,虚拟化的前景和一年前相比几乎彻底改变了,新的虚拟化平台前景十分乐观。
- 基于混合TCP-UDP的HTTP协议实现方法(01-10)
- NGN在固网智能化改造中的引入与发展(01-09)
- 黑客实例讲解木马的分析方法! (01-16)
- 介绍几款黑客常用工具使用方法(01-23)
- NEC服务器应用于大学邮件系统(02-08)
- x86服务器虚拟化在数据中心遇到的8个问题(02-19)