科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网服务器频道如何甄别两种服务器虚拟化软件

如何甄别两种服务器虚拟化软件

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

根据Gartner的预测,到2007年年底,《财富》前1000强中有30%左右的企业,在部署Windows服务器时使用了一种关键的虚拟技术——分区。x86平台上虚拟化技术的实现,首次向人们展示了虚拟化应用的广阔前景,因为x86平台可以提供便宜的、高性能和高可靠性的服务器。

作者:彭军 来源:网界网 2008年7月1日

关键字: 处理器 x86 英特尔 虚拟化技术 Xen VMware 虚拟化 虚拟化软件 服务器虚拟化 服务器

  • 评论
  • 分享微博
  • 分享邮件

在本页阅读全文(共2页)

  根据Gartner的预测,到2007年年底,《财富》前1000强中有30%左右的企业,在部署Windows服务器时使用了一种关键的虚拟技术——分区。到今年,那些没有采用虚拟技术的企业将在IA(Intel Architecture,英特尔架构)服务器上多支出25%的费用,而在RISC服务器上的额外支出也高达15%,这其中包括硬件、软件、劳动力和占地空间等各方面的成本。

  在传统的典型IT架构中,存在许多不合理之处,阻碍着现代企业的灵活性。由于应用被捆绑在固定的平台上,使得各项应用拥有不同的平台,需要有专用的、针对特定应用的开发、测试、生产和灾难恢复环境,而且每个应用环境都需按预计最大负载来构建,彼此之间仅有较低的或根本没有资源共享。

  目前,在国内企业数据中心,这一传统架构的缺点更加明显,它们普遍根据需求随时添加服务器设备,这些设备基本上都是分散的,具有不同品牌、不同配置,甚至架构也不同,最致命的是在其上运行的应用并不能充分利用服务器的所有资源,只用到15%~20%的服务器资源是普遍现象。使用虚拟化技术可以减少服务器数量的增加,简化服务器管理,同时明显提高服务器利用率、网络灵活性和可靠性。将多种应用整合到少量企业级服务器上即可实现这一目标。通过整合及虚拟化,数百台服务器可以减少至数十台; 10%甚至更低的服务器利用率将提高到60%或更高,IT基础设施的灵活性、可靠性和效率也将得到改进。而实施服务的虚拟化技术,首先要面对的就是软件选型。

  VMware和Xen的结构特点

  目前Xen和VMware是市场上主流的两大虚拟化产品。这两大产品背后的架构区别,将带来不同的应用体验。

  VMware是业界著名的虚拟机产品,其主打产品是VI3 (VMware Infrastructure 3)软件套装。VI3以其杰出的管理能力,受到了广大数据中心的青睐。

  在VMware中,最核心的软件是 ESX Server.ESX Server直接安装在裸机上,在硬件和操作系统之间形成一个虚拟化层。ESX Server将一台物理服务器划分为多个可移植的虚拟机环境。VMFS(Virtual Machine File System)则是封装ESX Server的存储载体。ESX的虚拟层级实际上包裹了硬件,ESX创建了一个硬件接口层Hardware Interface Layer,所有虚拟机如果想跟硬件通信,必须经过这个硬件接口层,完成诸如内存偏移转换的工作。这里需要强调的是,ESX的特点是完全包裹硬件,不允许程序直接访问硬件。

  当然,ESX只是VMware最基础的技术,VI3中其余的工具,用于完善虚拟化和可视化管理。其中,DRS(Distributed Resourced Scheduler)可以将多个ESX Server资源合并为群集,同时,按照假定所有资源都在一台主机上的方法,简单管理群集。Virtual SMP可以让单个虚拟机同时使用多个处理器。VMware Vmotion可以使虚拟机从一台物理服务器迁移到另一台物理服务器,迁移过程中不用宕机。此外,它也提供虚拟的双机热备和集成备份等功能。最后,所有虚拟化复杂的管理,都可以由Virtual Center虚拟中心控制台轻松完成。

  Xen VMM(Virtual Machine Monitor)是由剑桥大学计算机实验室开发的一个开源项目,它能够让我们创建更多虚拟机,每一个虚拟机都是运行在同一个操作系统上的实例。

  这些客户OS可以是修补过的Linux 2.4或2.6内核,也可以是修补过的NetBSD/FreeBSD内核。用户应用程序就运行在这些客户OS上,并不需要修改任何代码。但是,随着将来的处理器能支持虚拟化的特性,内核也就不需要打补丁了。比如Intel的VT和AMD的Pacifica处理器都将包括这种功能。

  在Xen中, "系统管理程序"运行在0环,客户OS运行在1环,应用程序运行在3环。这种关系对于x64有一点不同,就是客户内核和应用程序都运行在3环上。

  Xen自称为"系统管理程序",是因为它比客户OS所需的系统管理代码运行的特权级还高。当系统引导的时候,Xen装载到0环的内存中。它在1环上启动修补过的内核,称做domain 0(domain是指一个运行中的虚拟机,在其上有一个guest OS在执行)。从这个domain开始,可以创建更多的domain,也可以销毁它们,还可以进行domain迁移、设置参数等。系统创建的那些domain也运行在1环内核中,用户应用程序运行在3环。

  目前,修补过的Linux 2.4和2.6内核可以作为domain 0.据Xen开发者所说,将来domain 0仅支持2.6的内核补丁。构造domain 0的大部分工作是在xen/arch/x86/domain_build.c中的construct_dom0()方法中实现的。物理设备驱动程序只能运行在特权级,也就是domain 0上。Xen依靠Linux或其他修补过的OS内核对它所管理的设备提供虚拟化支持。这样的好处就是Xen的开发者不必再去开发设备驱动程序。在一个有标签TLB的处理器上使用Xen能够大大提高性能。标签TLB能够把ASID(Address Space Identifier)放在TLB入口处。有了这个特性,当处理器在系统管理程序和客户OS之间切换时就不需要刷新TLB了,这大大减少了系统开销。

  最大区别体现在对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这样的管理工具。

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章