虚拟化服务器选型方案及常用应用软件介绍1虚拟化服务器选型方案常用应用软件介绍解决方案中心2011年7月虚拟化服务器选型方案及常用应用软件介绍2文档控制:拟制艾洪涛审核批准参阅版本控制版本号日期修改人说明V1.02011/8/25艾洪涛初稿分发控制编号读者文档权限与文档的主要关系1修改,编写艾洪涛,负责编制、修改、审核本文稿2批准3读取参阅并使用虚拟化服务器选型方案及常用应用软件介绍3目录1虚拟化服务器应用背景...........................................................................................................42虚拟化服务器资源需求分析........................................................................................................52.1性能需求分析....................................................................................................................52.2可靠性需求分析................................................................................................................72.3扩展性需求分析................................................................................................................72.4管理性需求分析................................................................................................................73系统建设拓扑................................................................................................................................83.1单机应用模式....................................................................................................................83.2集群应用模式....................................................................................................................94推荐的虚拟化服务器解决方案....................................................................................................94.1小型规模............................................................................................................................94.2中/大型规模......................................................................................................................95方案价值分析..............................................................................................................................106常用应用软件介绍......................................................................................................................106.1Vmware.............................................................................................................................106.2Hyper-V.............................................................................................................................126.3XEN....................................................................................................................................136.4CITRIX虚拟化介绍...........................................................................................................14虚拟化服务器选型方案及常用应用软件介绍41虚拟化服务器应用背景虚拟化技术与多任务以及超线程技术是完全不同的。多任务是指在一个操作系统中多个程序同时并行运行,而在虚拟化技术中,则可以同时运行多个操作系统,而且每一个操作系统中都有多个程序运行,每一个操作系统都运行在一个虚拟的CPU或者是虚拟主机上;而超线程技术只是单CPU模拟双CPU来平衡程序运行性能,这两个模拟出来的CPU是不能分离的,只能协同工作。虚拟化技术也与目前VMwareWorkstation等同样能达到虚拟效果的软件不同,是一个巨大的技术进步,具体表现在减少软件虚拟机相关开销和支持更广泛的操作系统方面。纯软件虚拟化解决方案存在很多限制。“客户”操作系统很多情况下是通过VMM(VirtualMachineMonitor,虚拟机监视器)来与硬件进行通信,由VMM来决定其对系统上所有虚拟机的访问。(注意,大多数处理器和内存访问独立于VMM,只在发生特定事件时才会涉及VMM,如页面错误。)在纯软件虚拟化解决方案中,VMM在软件套件中的位置是传统意义上操作系统所处的位置,而虚拟化技术将各种资源虚拟出多台主机操作系统的位置是传统意义上应用程序所处的位置。这一额外的通信层需要进行二进制转换,以通过提供到物理资源(如处理器、内存、存储、显卡和网卡等)的接口,模拟硬件环境。这种转换必然会增加系统的复杂性。此外,客户操作系统的支持受到虚拟机环境的能力限制,这会阻碍特定技术的部署,如64位客户操作系统。在纯软件解决方案中,软件堆栈增加的复杂性意味着,这些环境难于管理,因而会加大确保系统可靠性和安全性的困难。而CPU的虚拟化技术是一种硬件方案,支持虚拟技术的CPU带有特别优化过的指令集来控制虚拟过程,通过这些指令集,VMM会很容易提高性能,相比软件的虚拟实现方式会很大程度上提高性能。虚拟化技术可提供基于芯片的功能,借助兼容VMM软件能够改进纯软件解决方案。由于虚拟化硬件可提供全新的架构,支持操作系统直接在上面运行,从而无需进行二进制转换,减少了相关的性能开销,极大简化了VMM设计,进而使VMM能够按通用标准进行编写,性能更加强大。虚拟化服务器选型方案及常用应用软件介绍52虚拟化服务器资源需求分析2.1性能需求分析网络子系统虚拟服务器的网络子系统负责虚拟服务器中所有虚拟机服务系统与外界客户端之间的数据通讯、经国家重点实验室测试数据分析、除虚拟机中有对网络系统有特殊要求的应用程序(如:视频点播系统、高访问量Web系统等),网络子系统一般不会成为虚拟化服务器的性能瓶颈。目前主流的服务器网络子系统通常标准配置的双千兆以太网卡,基本上满足中小型企业和数据中心用户的应用需求。内存子系统内存方面、虚拟化服务器最好都尽量使用大容量内存。由于虚拟化服务器有大量客户端发送过来的数据操作请求需要临时缓存到内存里,所以客户端数据操作请求量大的时候内存的占用也是较大的,而当内存不够用的时候,虚拟内存的工作压力就非常大,其实就是磁盘工作压力会很大,而系统程序跟数据缓存操作不断的争抢内存资源时,当机的几率就高了很多。而内存的纠错其实在服务器上是非常必要的,由于内存也是高速设备而且数据刷新频率非常高,所以加入纠错芯片的ECC内存可以有效的帮助系统减少由于数据信息出错而产生的严重后果,另外,由于内存的校验操作都是内存上的独立智检芯片完成,所以不会占用CPU资源。国家重点实验室的实际测试数据显示,每次客户端的数据操作请求都会占用服务器端一定的内存空间。需要根据虚拟化服务器需要为多少虚拟机应用程序和客户端提服务,来决定实际配置内存的大小。需要根据用户虚拟化服务器所承载的虚拟机的应用类型、数据量以及需要支撑的请求数量级别来确定虚拟化服务器具体所选用的内存值得大小。磁盘子系统磁盘子系统,就是服务器上使用的硬盘(HardDisk)。如果说服务器是网络数据的核心,那么服务器硬盘就是这个核心的数据仓库,所有的软件和用户数据都存储在这里。对用户来说,储存在服务器上的硬盘数据是最宝贵的,因此硬盘的可靠性是非常重要的。为了使虚拟化服务器选型方案及常用应用软件介绍6硬盘能够适应大数据量、超长工作时间的工作环境,虚拟化服务器一般采用高速、稳定、安全的SAS硬盘。另外,由于虚拟化服务器负责存储所有应用程序所使用的结构化数据、需要占用大量的存储空间、需要存储的数据量非常大、需要根据支持的客户端数量来规划磁盘子系统的整体容量。部分虚拟化系统由于数据量巨大、通常会采用外接磁盘阵列的方式、由磁盘阵列来为虚拟化服务器提供存储空间。由于结构化数据查询修改等操作、通常是小文件(非连续)的大量传输,因此采用光纤磁盘阵列效果最好。具体的虚拟化服务器磁盘子系统容量及磁盘类型配置需要根据用户的实际数据量以及吞吐量来进行调整。或外接磁盘阵列。处理器子系统中央处理器(英文CentralProcessingUnit,CPU)是一台计算机的运算核心和控制核心。CPU、内部存储器和输入/输出设备是电子计算机三大核心部件。电脑中所有操作都由CPU负责读取指令,对指令译码并执行指令的核心部件。其功能主要是解释计算机指令以及处理计算机软件中的数据。所谓的计算机的可编程性主要是指对CPU的编程。CPU由运算器、控制器和寄存器及实现它们之间联系的数据、控制及状态的总线构成。差不多所有的CPU的运作原理可分为四个阶段:提取(Fetch)、解码(Decode)、执行(Execute)和写回(Writeback)。浪潮国家重点实验室测试数据结果分析显示,处理器和内存一样是虚拟化服务器最先出现性能瓶颈的子系统,建议采用多核心、支持超线程技术的处理器。性能分析总结:内存子系统:虚拟化应用会用大量内存缓存数据,一旦将硬盘做为缓存,系统性能将迅速下降,严重的会导致死机处理器子系统:虚拟化的操作将消耗大量的处理器资源,而且虚拟化对SMP性能发挥的比较好,缓存越大虚拟化应用的性能越好。处理器核心数量越高、虚拟化应用性能越好。处理器支持的计算线程数量越高,虚拟化应用性能越好。磁盘子系统:即使内存充裕,虚拟化应用