本文列出了不同虚拟化技术之间的主要差异,并给出进行技术评估时需要主要考虑的因素。本文主要讨论以下三种主流技术:硬件虚拟化、并行虚拟化和操作系统虚拟化。
按需选择服务器虚拟化技术
最近几年,服务器虚拟化技术领域的竞争变得越来越激烈。竞争对市场来说总是好事,因为竞争促使软件厂商以更低的价格提供更好的软件产品。但对您的组织来说,了解所有软件厂商的宣传资料并做出正确选择却是件费时费力的事情。下面列出了不同虚拟化技术之间的主要差异,并给出进行技术评估时需要主要考虑的因素。本文主要讨论以下三种主流技术:硬件虚拟化、并行虚拟化和操作系统虚拟化。
硬件虚拟化
恐怕是很多人都了解的虚拟化技术,主要产品有VMware和Microsoft的VirtualServer。这种技术的设计目标是在单台服务器上实现多种不同操作系统,其特征是对硬件资源进行虚拟化,使之成为可管理的和独立的“虚拟机”。
并行虚拟化
和硬件虚拟化是类似的,因为在概念上它支持在一台服务器上实现多种操作系统。目前只有Xen的开源项目实现了这种技术,而XenSource会跟着发布对应的商业化产品。与硬件虚拟化相比,Xen的独特之处在于对操作系统进行修改,以降低额外损耗,从而提供比硬件虚拟化技术更高的效率。
操作系统虚拟化
是虚拟化技术的第三种实现方式,SWsoft的Virutozzo和Sun的SolarisContainer是这种技术的两种实现。操作系统虚拟化的概念是基于共用操作系统,由于不包含额外的(虚拟化)处理层,所以它提供了一个更瘦的架构体系。这项技术的主要限制在于它不支持在一台物理服务器实现多种操作系统。如果某个组织希望在单台Linux、Windows或SunSolaris物理服务器集成或部署多种不同操作系统的虚拟服务器,它可能不太倾向于选择虚拟操作系统技术。SolarisContainers显然只支持Solaris,而Virtuozzo同时支持Linux和Windows。SWsoft的Linux版Virtuozzo服务器支持在虚拟服务器上实现同版本内核的不同Linux发行版。
需要考虑的因素
1、性能
为什么处理损耗如此重要?因为它影响应用程序的性能,并最终影响终端客户的满意程度。
如果虚拟化基础架构的处理损耗较高,那只能运行非产品级或不太重要的应用服务。由于产品不同,虚拟化解决方案的处理损耗从1%到最多60%。虚拟化的应用程序的运行效率差异很大,有的能够做到接近原始物理环境下运行的效率,有的则低劣到终端用户所难以接受的程度。同一虚拟化技术路线的不同产品性能也有很大差异,但通常来说,虚拟化硬件会造成较大的性能损耗,但操作系统虚拟化性能损耗极低,几乎可以忽略不计。
2、管理工具
许多组织采用虚拟化项目是因为他们可以降低硬件成本,因为这些数据中心的硬件仅有15%—20%的利用率。虽然硬件和环境的成本本身已经相当可观,但管理成本中更大的部分仍然是来自于服务器的管理成本。管理性任务包括操作系统和应用程序更新、打补丁、备份、安装、开通和应用管理等等。因此对于虚拟化基础设施的管理而言,管理工具就更加重要,只有很好地进行资源的管理和监控才能真正做到有效地利用虚拟服务器的资源。
每种虚拟化解决方案能提供的管理工具都很不相同。一些虚拟化解决方案几乎没有什么管理工具,而且使用非常受限制。某些特定的虚拟化解决方案提供很多优秀的工具集,并和产品放在一起以优惠价打包促销。但某些工具却非常的贵,常常是按可选择的产品组件的价格进行销售。
将物理服务器迁移到虚拟服务器是非常复杂的工作,以至于经常令管理人员望而却步,特别涉及到企业的关键业务系统时更是如此。大多数虚拟化软件厂商提供迁移工具,而且某些厂商不仅提供从物理服务器到虚拟服务器的迁移工具,他们还提供虚拟环境间甚至从虚拟服务器迁移到物理服务器的迁移工具。在物理服务器到虚拟服务器的迁移过程中,预估物理服务器的资源使用率趋势并以此为基础配置够用的虚拟服务器是非常重要的,其重要性甚至要高于将数据迁移到可靠的虚拟服务器时的要求。仅有非常有限的P2V(PhysicaltoVirtual的简称)工具具有预估资源使用趋势的能力。
3、平台支持
虚拟化技术将虚拟服务器从其下的硬件中抽象出来,但这并不意味着虚拟基础结构可以支持任何硬件。需要特别注意的是,硬件虚拟化和并行虚拟化必须支持从CPU芯片到显卡等计算机的所有硬件。而操作系统虚拟化技术建立在标准的操作系统之上,因此自然而然的支持操作系统支持的所有硬件,所以操作系统虚拟化产品部署过程更容易。某些虚拟化技术除了支持基本的硬件,还有充分利用所有硬件的能力,包括支持SMP、64位处理器,直到16路CPU和64GB的内存。
4、迁移
虚拟化技术将虚拟服务器从硬件中抽象出来,这样做最大好处是虚拟服务器可以在不同物理服务器中来回迁移。迁移能力允许将虚拟服务器克隆出来,或从一台物理服务器迁移到另外一台。迁移的好处包括:
消除由于硬件升级或出现问题时造成的宕机时间
避免软件更新时的宕机时间
可以按需求将虚拟服务器迁移到更强或更弱的服务器上
许多虚拟化解决方案拥有克隆或迁移能力,但他们在软件功能、限制和成本方面有相当大的差异。
高端的零宕机解决方案迁移成本极高且需要SAN集中存储设备的支持,而迁移作为Virtuozzo虚拟化操作系统软件的基本功能,提供了另外一种可以在任何联网的服务器之间进行的低成本零宕机迁移解决方案。在做服务器迁移时,您需要评估迁移的重要性,明确怎样迁移才能更适应您的企业应用环境。
5、资源管理
三类不同的虚拟化技术对服务器资源分配采用不同的处理方式。硬件虚拟化技术和并行虚拟化技术将虚拟出的硬件资源分配给不同的虚拟服务器使用。这两种技术在分配和更换硬件资源方面的灵活性有所不同。某些资源是动态的可以实时更新,而其他资源可能需要重起服务器或至少中断虚拟服务器。实际上这两种技术为虚拟服务器分配的是虚拟资源,虚拟的资源会有很多的限制,比如可以用于分配的CPU和内存资源总是有限的。
对资源的管理是非常灵活的,允许在不中断应用服务或虚拟服务器情况下实时更新资源。特别需要指出的是SWsoft的Virtuozzo允许任何临时需要更多资源的虚拟服务器猝发性使用服务器中未被占用的资源。
6、隔离和安全
对于隔离和安全问题,每种虚拟化技术的处理方式都不同。虚拟化解决方案最基本的组件就是分区。所有虚拟计算机必须完全的隔离,这样进程、动态连接库及应用程序才不会影响同一台服务器的其他虚拟服务器上的应用。
相对于普通服务器,由于虚拟化技术改变了访问节点和不同的组件,所以不太可能对于虚拟服务器的实施常规性攻击。同隔离一样,对于同一台物理服务器上的两个虚拟服务器来说,彼此之间的安全同样重要。
每种技术在处理隔离和安全问题时采用不同的方式,除了XEN和SolarisContainer外,已经有大量的客户对现有的虚拟化技术作了广泛的试验确保这些技术隔离和安全的级别是可靠的。
7、服务器利用率
许多客户采用虚拟化项目是因为服务器的使用率经常只有15%—50%。提升服务器的利用率可以显著降低数据中心的资源总拥有成本。在服务器合并项目中主要考虑的成本因素有数据中心的存储、电力和年复一年的硬件维护成本。
在评估不同虚拟化解决方案的资源利用率时,需要考虑在一台物理服务器上能够运行的虚拟服务器的数量限制。尽管所有的虚拟化技术对虚拟服务器的数量都没有限制,但在过去由于过高的额外损耗,根本就不能支持更多的虚拟服务器数量。
技术在处理服务器利用率方面有着得天独厚的优势。操作系统虚拟化技术在一台物理服务器上没有限制虚拟服务器的数量,高效的架构使得在单个服务服务器上在硬件条件允许的情况下可以支持更多的虚拟服务器,这无疑极大的提高了服务器的实际使用率,同时最大化服务器的性价比和投资回报率。
8、开通效率
在2005年,IdeasInternational公司完成了一项针对服务器虚拟化的研究。
这一研究的主要目的是研究回顾选择服务器虚拟化项目的原因是否和实际从该项目中获益的结果是一致的。研究人员惊奇的发现,最意想不到的好处居然是在服务器开通方面节约了大量时间。
每个虚拟化解决方案的服务器开通能力是不同的。某些解决方案提供了模板和预先设置工具或定制配置提前缩短了开通时间。不同处理方法的开通时间从30秒到1小时有很大的差别。与独立服务器来比,虚拟服务器急剧的缩短了服务器的开通时间。
9、预期的虚拟化部署
排名前3位的服务器虚拟化部署情景分别是:测试和研发,服务器合并和灾难恢复。
业内知名位的部署情景是测试和研发项目,因为研发人员需要使用许多不同的操作系统环境,这使得相关成本的很难估计。研发组织需要不同的操作系统,较好的选择是硬件虚拟化。
virtualization计划支持多操作系统,但却迟迟没有发布相关功能。SWsoft的Linux版Virtuozzo同样支持在一台服务器上运行同一版本内核的不同Linux发布版本的虚拟服务器。对于需要快速创建大量服务器来进行压力测试的组织来说大多数虚拟化技术已经够用,但有的虚拟化技术可以更快地开通服务器。
服务器合并(涉及到现有应用或新应用)通常发生在支持在线应用和数据的生产型服务器中。服务器合并需要考虑的两个因素是处理损耗和服务器利用率。对服务器合并来说最好的解决方案是操作系统虚拟化,因为操作系统虚拟化拥有更低的服务器损耗,因此能够显著的提升服务器的利用率。
灾难恢复解决方案是一个非常常见的虚拟化服务器部署方案。许多组织发现允许实时访问和提供冗余系统的灾难恢复方案是极其昂贵的。由于虚拟化服务器可以被激活、重起且可在限定的时间内创建重要服务器,所以虚拟化服务器在短时间内快速成为经济高效且具有更高管理性能的灾难恢复解决方案之一。
10、总拥有成本
最后一个需要考虑的因素是对比每种虚拟化技术的总拥有成本。具有更多的功能和管理工具的解决方案价格也会更高。有的厂商要求为附加的功能和管理工具付费,这就使比较各种虚拟化技术的总拥有成本变得更加困难。其他软件厂商将主要的管理工具和其他附加功能作为基本的管理组件或服务器产品组件。考虑到基本产品所提供的性能和功能,再来进行总体拥有成本的比较,您会惊奇的发现各种解决方案能提供的价值具有显著的差别。
结论
现有的三种主流服务器虚拟化技术都有各自的优势和局限,这是其软件架构所固有的。每一种技术都最适合于特定的虚拟服务器场景。对于每种虚拟化技术类型,每个软件厂商所能提供的解决方案和工具也有很大的差别。希望这个评估表格能帮助您评估现有的服务器虚拟化技术,并帮助您选择满足您需求的非常好的虚拟化解决方案。