思杰的Xen Server
虚拟化软件在服务器上的部署越来越广泛了,曾经有企业做过调查,在479位受访者中,46%的用户部署了企业中51%-85%的服务器,21%的用户完成了100%的虚拟化。可见,服务器虚拟化已经得到多数用户的认可。
对于用户来说,服务器虚拟化首先需要挑选恰当的CPU。CPU确实对于服务器虚拟化的成败起到关键性的作用。ZOL编辑在《好马配好鞍 服务器虚拟化需要怎样的CPU?》文章中,阐述了CPU对于服务器来说,有如人类一样,只有拥有了一颗强健的“心脏”,服务器才能胜任多种类的工作。
很多用户可能会问,那到底什么样的服务器适合做虚拟化呢?当然,并不是所有的服务器都适合做虚拟化。在前面的文章《帮您来挑选最适合虚拟化的三款服务器》中,ZOL编辑为用户推荐了三款最适合做虚拟化的服务器,它们分别是戴尔PowerEdge R710、IBM System x3650 M3、惠普ProLiant DL360 G7三款服务器。
这三款服务器的共同点就是,都采用了英特尔至强5500/5600处理器。为何采用英特尔至强处理器?原因就在于英特尔的至强处理器采用英特尔VT技术,使得基于该处理器的硬件可以根据需要优化虚拟化功能。特别是5600系列服务器产品。“无须更换主板,只刷新BIOS,就可以进行升级,从而获得更高性能提升”这是至强5600平台带给用户的最大好处。
进一步来说,不管用户决定是否应用虚拟化技术,在平滑升级服务器产品是已经把虚拟化带入其中,即使企业采用少量服务器的虚拟化应用,对于企业在成本和应用灵活性上都有极大的益处。
了解了服务器虚拟化过程中如何选择服务器CPU以及选择什么样的服务器之后,接下来的问题就是选择一款服务器虚拟化软件了。
此前,提到服务器虚拟化软件,人们习惯将这个市场场比作三国之战:VMware先驱强大堪比魏国,微软立誓虚拟化的决心似吴国,思杰面对VMware劲旅和微软精锐的形势如同蜀国。那么,这三国的纷争势必是各有胜负,软件也必定是各有优缺点,暂且不论,我们更加关心的事情是,对于用户来说,到底哪款服务器虚拟化软件适合您?
思杰的服务器虚拟化软件Xen Server
思杰的XenServer是一款基于Xen hypervisor的开源虚拟化产品,它为客户提供了一个开放性架构,允许客户按照与自身物理和虚拟服务器环境相同的方法来进行存储管理,其管理工具CUI是其最大的亮点。
同时,XenCenter是一种虚拟化图形接口管理工具,可在同一界面,管理多台的XenServer服务器。管理上,通常会先在XenCenter建立一个服务器群组(Pool),然后将位于同一机房内的XenServer服务器加入。
和大多数服务器半虚拟化产品相同的是,当数台XenServer服务器连接到同一台共享磁盘驱动器,且将虚拟档案放置于此的前提下,可以通过Xen-Motion这项功能,将虚拟机以手动方式在线转移到其它的XenServer服务器,从事主机的维护,或者降低硬件资源的消耗。
那么,系统来看思杰的XenServer具有以下特性: 其一,XenServer 是基于开源Xen 系统管理程序创建的,作为一种特别高效的技术,Xen系统管理程序系统资源占用极少,同时能提供接近于原生的性能。XenServer充分利用Intel VT 平台等进行硬件辅助虚拟化,提供更快速、更高效的虚拟化计算能力。
其二,将IT部门转变为业务部门――通过及时了解用户活动、系统性能和能力、以及IT服务使用情况,IT部门可以引入基于实际应用情况的成本中心计费模式,前瞻性地管理服务等级协议(SLA),预测容量规划,以及有效地整合应用与服务器。
其三,资源优化,管理员可对CPU、网络和磁盘进行细粒度控制,并可设置优先级水平,为虚拟机系统提供最佳性能。另外,最新版XenServer 使用的内存更少,同时改善了虚拟基础架构的性能和扩展性。
其四,动态工作负载置备,可利用单个共享操作系统镜像,采用流技术将服务器工作负载按需分配到多个物理或虚拟服务器,这将大大降低补丁和更新管理的成本,同时大大减少操作系统和应用镜像在企业中的存储空间。
因为hypervisor最早用于Linux服务器,所以XenServer与Linux保持了高度的集成性,XenServer最大价值的体现也是围绕Linux服务器的,所以如果用户主要使用的是Linux服务器的话,尝试使用XenServer会更好一些
微软的Hyper-V微软的服务器虚拟化软件Hyper-V
微软的服务器虚拟化软件Hyper-V是微软提出的一种系统管理程序虚拟化技术,是微软第一个采用类似Vmware和Citrix开源Xen一样的基于hypervisor的技术。Hyper-V设计的目的是为广泛的用户提供更为熟悉以及成本效益更高的虚拟化基础设施软件,这样可以降低运作成本、提高硬件利用率、优化基础设施并提高服务器的可用性。
由于Hyper-V采用Hyperisor内核架构,Hyper-V可以提供高效的分区间通信机制,并在此基础上创建高性能的虚拟I/O架构,并且充分利用Windows驱动模型,以便提供广泛的硬件支持,因为Hypervisor可以把单个服务器分割为多个CPU和内存的容器。
目前,大多数潜在的子操作系统都还没有意识到虚拟化。它们以为是直接在服务器硬件上运行,因此需要使用hypervisor提供的硬件模拟。
Hyper-V的重要特性是多处理器的虚机。Hyper-V支持4 CPU的Windows Server 2008虚机和2 CPU的Windows Server 2003虚机。如果服务器工作负载需要很高的性能,我们可以考虑用2 CPU或者4 CPU的Hyper-V虚机对其进行虚拟化。当然,只有当工作负载确实需要的时候,才应该使用多处理器虚机,因为拥有更多的处理器会带来一些额外的开销。
微软在Hypervisor和Windows Server 2008内核里加入创新设计,尽可能防止出现自旋锁的长时间等待条件,如果确实存在长时间等待条件,也会有效地加以检测并对其进行处理。我们还对Hypervisor进行设计,包括调度程序和内存虚拟化逻辑,以使它们在大多数临界区中都不会锁定,从而确保多处理器系统能够获得很好的延展性。
可以说,微软Hyper-V的优势则在于免费的Hyper-V。因为Hyper-V是与Windows Server集成的,所以如果以微软产品作为系统的主要构成部分,与微软管理工具的集成度很高的话,使用Hyper-V更合适一些。
VMware的ESX ServerVMware的服务器虚拟化软件ESX Server
VMware 的服务器虚拟化软件ESX Server是在通用环境下分区和整合系统的虚拟主机软件,同时也是一个具有高级资源管理功能高效,灵活的虚拟主机平台。
VMware的虚拟化架构分为寄居架构和裸金属架构两种。寄居架构是安装在操作系统上的应用程序,依赖于主机的操作系统对设备的支持和对物理资源的管理。裸金属架构是直接安装在服务器的硬件上,并允许多个未经修改的操作系统及其应用程序在共享物力资源的虚拟机中运行。
而ESX Server可以直接安装在裸机上,并允许多个未经修改的操作系统及其应用程序在共享物理资源的虚拟机中运行,进而经过生产实践的虚拟层,它将处理器、内存、存储和网络资源抽象为虚拟机,在硬件和操作系统之间形成一个虚拟化层。ESX Server将一台物理服务器划分为多个可移植的虚拟机环境。
VMFS(Virtual Machine File System)则是封装ESX Server的存储载体。ESX的虚拟层级实际上包裹了硬件,ESX创建了一个硬件接口层Hardware Interface Layer,所有虚拟机如果想跟硬件通信,必须经过这个硬件接口层,完成诸如内存偏移转换的工作。
这里需要强调的是,ESX的特点是完全包裹硬件,不允许程序直接访问硬件。虚拟机与主机和其他虚拟机完全隔离。如果一个虚拟机崩溃,所有其他虚拟机不会受到影响虚拟机之间不会泄露数据,而且应用程序只能通过配置的网络连接进行通信封装:完整的虚拟机环境保存为单个文件;便于进行备份、移动和复制为应用程序提供标准化的虚拟硬件,可保证兼容性。
在ESX中,虚拟机的虚拟设备驱动与ESX内核里的物理设备驱动直接相互连接。ESX虚拟机可以为其虚拟设备使用现成的(off-the-shelf)驱动。这不仅能提供高性能,还能提供更广泛的操作系统支持。然而在这个模型里,新的设备驱动必须导入到ESX内核中。为了解决I/O虚拟化的平衡问题和复杂性问题,戴尔与英特尔、AMD这样的合作伙伴以及外设硬件供应商一起,在芯片组和I/O设备中引入了虚拟化支持。
另外,VMware ESX Server 能提供完全动态的资源可测量控制,适合各种要求严格的应用程序的需要,同时可以实现服务器部署整合,为企业未来成长所需扩展空间。同时VMware ESX Server也提供储存虚拟化的能力。
除可因兼并服务器减少设备购买及维护成本外,亦可因效能的尖峰离峰需求,以VMotion技术在各服务器或刀片服务器之刀板间弹性动态迁移系统平台,让IT人员做更有效的资源调度,并获得更好且安全周密的防护,当系统发生灾难时,可以在最短时间,迅速复原系统的运作。
可以这么说,VMware ESX Server 适用于任何系统环境的企业级的虚拟计算机软件,为大型机级别的架构提供了空前的性能和操作控制。VMware ESX Server的架构是建立在直接执行(直接在硬件上运行用户级的虚拟机编码)和二进制译码(对特权级别编码进行动态编译)的基础上,甚至不能直接应用Linux驱动程序。ESX服务器可以使大多数能在x86上执行的操作系统都能在虚拟机上运行,而不需要进行任何修改。
总的来说,服务器虚拟化已经变成一种共识,对于用户来说,将服务器物理资源抽象成逻辑资源,让CPU、内存、磁盘、I/O等硬件变成可以动态管理的“资源池”,从而提高资源的利用率,简化系统管理,实现服务器整合,让IT对业务的变化更具适应力,这些都最真实的利益。
具体用户选择什么样的服务器虚拟化软件,企业必须根据自身的特点来做选择,从小处来说要考虑虚拟化软件对于处理器的支持,特别是选择最新的至强5600、至强7500这样对虚拟化进行了优化的处理器平台;从大处考虑,企业更多需要考虑总体拥有成本(TCO),切勿盲目选择。