服务器 频道

虚拟化趋势:从专有化走向标准化

    【IT168 专稿】随着企业数据中心越来越复杂,投资成本越来越高,加上针对业务需求改变IT架构也越来越难,这些因素都使得数据中心的管理也越来越费劲。为了应对这些挑战,许多IT专业人士开始把目光投向虚拟化技术。

    虚拟化技术提供了许多好处,如提高资源利用率、运营效率以及数据中心敏捷性等等。但是,许多用户及其技术合作伙伴也发现,过去的虚拟化软件方案由于带有专有性,收费很昂贵,从而限制了虚拟化技术的普及应用。值得庆幸的是,今天,新一轮的虚拟化浪潮正在袭来,如数据中心虚拟化、开源XEN、本地虚拟化、虚拟化的标准化等,有望解决这些问题,降低企业用户的虚拟化成本。

    这些新兴的方案正在带来一个更具动态灵活性的IT架构,帮助企业用户从过去那种静止的、基于硬件线缆的数据中心转向“基于软件的动态共享计算资源池”。它们针对工业标准硬件提供简单的管理功能,使得今天的业务应用无须修改,就能运行在虚拟架构之上。使用集中式的基于策略的管理功能,就能使资源及工作负载管理实现自动化,从而带来了具有高可用性的“随需扩容” (capacity on demand)的应用模式。

虚拟化的核心:VMM(hypervisor)

    尽管业界围绕虚拟化已经展开了无休无止的讨论,但是许多IT专业人员还是发现,很难准确把握如此繁多的新术语,选择什么样的hypervisor和硬件也似乎很难界定,这使得虚拟化成了一道谜局。

    其实,虚拟化起初只不过是大型主机技术中的一种,并不是什么新鲜的概念。而且,在整个计算历史中,虚拟化也已经在许多领域得到了实践应用。现在,人们之所以重新热烈地讨论虚拟化,是为了把它用于标准化的X 86服务器、机柜和刀片系统的管理之中。

    通过将硬件抽象化,减少物理资源的管理,虚拟化让管理人员可以把精力放在IT系统所提供的服务上来。它将应用、数据和物理系统分隔开,从而增加了灵活性,使得物理资源可以更好地配合工作负载和数据要求。管理人员可以设置更有效的业务驱动策略,根据优先级、成本和服务水平等要求来分配资源。而且管理人员在升级底层硬件时,无须重新安装和配置虚拟服务器,从而让IT环境更具弹性。


 
    虚拟软件的核心是一个“虚拟机监视器”(VMM,virtual machine monitor),有时也被称作“hypervisor”。一个hypervisor是一个非常底层的虚拟化程序,可以让多个操作系统共享一个单一的硬件处理器——无论是不同类型的操作系统,还是同一操作系统的多个实例(instance)。一个hypervisor是专为某一种架构的处理器来设计的,如专为X86 CPU设计。表面上看来,每个操作系统“独占”处理器、内存及其他资源。但实际上是由hypervisor控制着真实的处理器等资源,并根据需求轮流向操作系统分配资源。由于一个操作系统经常是用于运行某个或某组特定的应用,而使用hypervisor可以在单一服务器上运行多个操作系统(及相关应用),因此可以全面地减少硬件成本。

服务器虚拟化Vs.数据中心虚拟化

    当然,从用户的角度来看,服务器虚拟化只是整个企业IT架构全面虚拟化的一部分,其他还有存储虚拟化、网络虚拟化及工作负载管理。而数据中心虚拟化又是“计算自动化”的一部分,如服务器环境可以根据可预知的活动来实现自我管理。另外,服务器虚拟化也被视为公用计算(utility computing)和网格计算(grid computing)的必要条件,前者是指用户可以象使用水电一样根据需要付费获取想要的计算处理能力,后者经常是以一种分布式网络的形式,向某单一应用提供一系列的计算处理资源。

    跟第一代技术仅限于单一机器或小规模机群(cluster)不同,“数据中心虚拟化”可以管理对包括服务器、存储和网络资源在内的许多机器和设备的利用及共享。企业用户往往要做很多时间紧急的手工任务,比如安装配置和提供服务器,根据增加的工作负载改变容量规划以及解决诸多跟系统可用性相关的问题。而通过数据中心虚拟化,用户可以实现此类任务的自动化。在这种环境中,任何应用都可以运行在任何一台机器之上,或将应用自由地移动到其他任何一台机器上,且无须中断业务,或者进行费时的SAN或网络配置更改工作。通过这些功能,企业用户真正将数据中心转变成“一个可管理的、动态共享计算资源池”,从而使IT能够快速地响应业务需求的变化,并大幅度地减少数据中心的管理成本和运营成本。

开源XEN带来了什么?

    XEN是一种新的开源hypervisor,并很快有望形成一种行业标准。它可以支持多个客操作系统(guest operating system)的运行,且相互之间在性能和资源上可以实现高效率的隔离,互不影响。XEN使得不同的操作系统如Windows及Linux共享同一台服务器,从而让开发和测试系统同时运行在相同的硬件设备之上。而且它还拥有广泛的产业生态圈,包括所有主流的处理器厂商、服务器厂商和操作系统厂商。这些公司正共同努力来提供基于工业标准的企业级虚拟化功能。除了围绕XEN标准推动新方案的创新和构建,业界还成立了一个长期的测试小组,以进一步促进质量改进。

 
    在历史上,跟专有技术相比,像XEN这样的开源技术更能让用户获得功能改进、性能增加、TCO成本降低等好处。由于XEN是免费的,所以很快得到了商业化,并推出了许多面向最终用户的方案。随着虚拟化成本不断降低,在整个企业IT架构中针对每台服务器进行虚拟化部署也变得可行起来。历史经验表明,开源产品一旦被人们广泛授受,就能很快赶上相应的专有技术。比如Linux 和Apache就已经拥有了非常巨大的开源社区和生态圈。虽然当前专有产品还领先XEN好几年,但二者之间的差距正飞快地缩小。而且XEN及其生态系统已经达到了关键的地位,XEN hypervisor正在成为某种事实上的标准。创新的浪潮已经开始涌现。

Native Virtualization本地虚拟化

    另外,相对较新的一种虚拟化是“本地虚拟化”(native virtualization),这种方法可以最大化其他方式的利益,而且不会带来性能和管理上的挑战,从而改进当前虚拟化的执行效率。过去,用户在上马虚拟化项目时,要在操作系统虚拟化(OS virtualization)、完全虚拟化(full virtualization)和准虚拟化(paravirtualization)等三种不同的专有技术之间进行选择。

 
    完全虚拟化hypervisor提供了完全模拟的X86虚拟服务器,在这之上操作系统无须修改就能运行。另一种方法是操作系统虚拟化,由一个主操作系统(即单一内核印象,single kernel image)复合成一个操作系统内核,使其看起来象是多个操作系统实例。第三种方案是准虚拟化(即部分虚拟化,partial virtualization),使用虚拟化API来稍微修改或定制化操作系统内核,以替代不可虚拟的X86指令。在性能、效率、管理和可维护性上,这三种专有方法都存在不同的优点或缺陷。其挑战来自于缺乏标准,性能消耗与损失,在某些情况下需要修改操作系统,同时,从维护虚拟化软件的角度来看,管理也相对复杂,成本也较高。

    本地虚拟化跟完全虚拟化有些类似,可以支持一个隔离的服务器运行不同的客操作系统,支持同时运行32位和64位应用软件及操作系统。而且可以保护当前软件许可证的投资,可以让操作系统无须修改或升级,就能运行在最新的硬件设备上。不过,虽然本地虚拟化和完全虚拟化有些类似,但在效率和可管理性方面二者还是存在相当大的差异。跟完全虚拟化不同,本地虚拟化不必依靠二进制转换来模拟不可虚拟的X86指令。相反,它借助了英特尔(Intel-VT)和AMD(AMD-V)最新处理器的硬件辅助虚拟化技术(hardware virtualization assistance),来允许每个客操作系统最大化地利用处理器资源。本地虚拟化还无须安装和维护主操作系统(host operating system)的完整实例。相反,它通过在服务分区中运行小的standalone虚拟化服务软件,来跟hypervisor进行通信。因为不再需要安装和维护主操作系统和虚拟化软件,从而大大地简化了维护和管理工作。

    业界有一个普遍的误解是硬件辅助虚拟化技术减少了虚拟化软件的作用和价值。实际情况却恰恰相反。英特尔和AMD的新处理器增加了新功能,可以大大地简化和改善虚拟化软件的性能表现。如果没有象XEN hypervisor这样的虚拟化软件,以及其他虚拟化服务和虚拟化管理功能,你只是拥有一台可以运行一个操作系统的标准服务器而已。

    本地虚拟化借助硬件辅助虚拟化技术,可以进一步以无缝集成的方式支持虚拟化软件,从而改进虚拟服务器的效率、性能和安全性。通过为虚拟服务器提供一个新的特殊层(privilege layer),以及在硬件中支持关键的虚拟化功能,这一技术可以简化虚拟服务器的创建和维护,改善与老操作系统的互通性,增强安全性和可靠性,减少实施成本和风险。虚拟化技术在芯片架构上的扩展,可以帮助商业厂商的产品减少服务器虚拟化方案的成本和风险,增强运行在虚拟分区中的应用程序的可靠性、可用性和安全性。

选择正确的道路:标准化

    全新虚拟化技术的出现,其挑战在于,要让用户确实明白虚拟世界到底怎么回事,而且要为用户创建一种环境,一方面可以提供性能改进、可靠性和TCO方面的承诺,一方面还要保护用户现有软件的前期投资。

    标准化产品的好处已经得到广泛认识和接受。用户不再受限于某一两个厂商,从而可以减少前期投资和后续支出。随着标准化进程的发展,IT管理人员也发现有一大堆的技术人员可以选择,他们都拥有必要的技能(如Linux、J2EE等),这又减少了人员成本,并能提高工作效率。其他好处还包括敏捷性、灵活适应性和协同性的增强。工业标准方案促进了业务应用通过技术和架构的发展,使得在将新的应用和功能整合进核心业务流程和业务架构时更加容易。这种协同性还提高了应用的敏捷度,可以针对业务条件的改变,做出快速的反应。

    现在,我们很难找到现成的产品,来提供完整的方案,或者是完全跟业务特性和业务需求相吻合的方案。通常,我们要对来自不同厂商的不同软件产品和系统管理工具进行整合。如果采用的是标准的接口和协议,这种整合就会相对容易得多。而且,一个标准的架构也能带来一个更稳定的环境,因为产业标准通常是由包括许多厂商在内的整个生态圈来制定和支持,厂商们会不断地发展它,以确保不会产生严重的中断。反过来,标准化的环境也增加了架构的可靠性,并能减少故障修复的时间,因为技术支持人员需要掌握的产品较少,所需要的能力经常具有共通性。

虚拟化往往从分区开始

    虚拟化不仅仅能够帮助IT管理人员控制成本,获得更高的敏捷性、可管理性和资源利用率,而且,它也成为企业日常活动的必要控制和维护工具。分区(partitioning)通常是服务器虚拟化软件最流行的一个用途,也往往是最初的应用,它可以让管理人员把多个虚拟服务器放在一台物理服务器上面,每个虚拟服务器拥有自己的独特操作系统实例。通过虚拟化,IT管理员可以整合他们的物理架构,保护现在操作系统和应用软件的投资,提高硬件投资回报率。同时,许多成熟的用户会把虚拟化当作资源供应、业务连续性、容量管理策略的一部分,从而获得更多额外的价值。

    虚拟化正在以不可逆转的态势被市场广泛接受,并导致了许多了虚拟化厂商的兴起。当前用户在选购虚拟化方案时,为了衡量不同厂商和不同方案的优缺点,要费一番周折,因此IT组织仍然需要继续努力,以尽力简化这种评估复杂性,并不断推出新的技术来进一步提升虚拟化的投资回报率。

0
相关文章