虚拟化是今年最热门的IT技术,但它能给我们的IT环境带来怎样的变化,可能很多人并非特别清楚。今天我们讲述的是一个真实的虚拟化应用案例,从中我们可以学到该怎么利用虚拟化来少花钱多办事,希望这个案例中总结出的经验能对你有所启发。
一、面临的问题
我所在的公司系一家大型国有航运集团下属的区域公司,成立于2003年。公司管理着东北区域内18家子公司、分公司和办事处。随着公司经营规模的不断扩大,公司的信息化建设也经历了一场跨越式的发展:从最初的几台服务器、几十台客户端小型网络,发展到今天的31台服务器、230多台客户端、连接东三省的中型网络。
公司自成立之日起,对于信息化建设非常重视,投入了大量的人力物力,仅服务器硬件购买成本,就高达100余万元。由于公司服务器购买时间比较集中,因此到2006年底,迎来了一个服务器报废的高峰。截至2006年12月16日,共有 11台服务器需要进行报废处理,列表如表1:
按照通常的做法,自然是报废一台服务器购买一台新服务器。不过我们马上否决了这种做法:无他,“成本”而已。
这些服务器的硬件配置在今天看来并不高。配置最好的DELL PV755N,也不过是奔腾3 1.13G CPU/ 1GB 内存而已;其他服务器的基本上CPU主频从奔腾3 700到奔腾3 1.13G不等,内存都是512MB。在这个硬件配置情况下,我们的各项应用已经可以流畅运行。
如果购买新服务器,新服务器的硬件配置和性能要远远高于我们四五年前所购买的服务器,可能造成大马拉小车的投资浪费。而且,11套不同环境架构的应用系统全部更新,需要购买11台新服务器,一次性投入成本高昂,采购规模超过了公司的项目预算。
那么,是否可以通过应用整合,来减少服务器购买数量呢?经过仔细分析,我们发现了一件很尴尬的事情。公司成立时间虽然不长,但是业务发展十分迅猛,公司的业务系统和信息管理系统也几经换代。在这些服务器上运行的业务系统,大多数已经不再使用或很少使用,但是应商务、财务等部门的需求,而必须要保留下来,并将继续运行3~5年或者更长的时间。这些需要保留的业务系统,当初采用的开发技术不尽相同,有的业务应用系统又有特殊要求,在各自不同的操作系统上运行至今;如果采用传统的单服务器多应用系统平台整合,肯定无法达到预期目的。
既希望保持公司原有的基于Windows 2000或者Windows NT应用系统平台,又希望体会最新的硬件效果,在目前看来困难重重。
我们在解决方案和产品选型上遇到了双重难题。
二、选择技术解决方案
以前的服务器面临过保报废,希望新购的服务器对于老旧的操作系统平台的支持又无法完美兼容。使用什么样的解决方案,才能够在体会新一代服务器硬件优越性能的同时,低成本高效率地满足多操作系统异构平台的应用整合,并实现原有操作系统和应用系统到新系统体系的平滑迁移呢?
在综合衡量物理实体机和虚拟机的技术解决方案以后,我们最终决定采用虚拟化技术来构建这个新的应用环境。什么是服务器虚拟化?不同的厂商有不同的定义,但其核心思想是一样的,即它是一种方法,能够通过区分资源的优先次序并随时随地能将服务器资源分配给最需要它们的工作负载来简化管理和提高效率,从而减少为单个工作负载峰值而储备的资源。(以上部分内容引用自代飒然的《趋于完整的服务器虚拟化技术在逐渐形成》)
虚拟化技术起源于大型机,通过服务器虚拟化,可以将一台物理服务器变成多台虚拟服务器,每个虚拟服务器可以运行自己独立的操作系统和应用,从而达到提高服务器资源使用效率,节约服务器管理成本的目的。
不过,服务器的虚拟化,在最大化服务器使用效率的同时,也带来了性能损耗。虚拟化的应用程序运行效率差异很大,有的能够做到接近原始物理环境下运行的效率,有的则低劣到终端用户所难以接受的程度。那些像大数据库系统或者微软的 Exchange应用,需要占用大量的I/O和内存资源,并不适合实施虚拟化技术。
但是随着英特尔和AMD在处理器上对虚拟化提供了硬件支持,虚拟化技术在x86服务器上也有了更加光明的应用前景。
实际上,我们使用虚拟机产品进行技术学习和实验测试已经有很长一段时间了。我们最早使用的是VMWare Workstation 3.x版本。微软公司在2003年2月收购Connectix公司后,推出了VirtualPC2004。由于操作简便,并且是微软出品,感觉上对于微软自家产品的支持应该更好,所以转向了VPC。不过微软对于Linux系统的不支持态度,以及VMWare Workstation5.x版本方便的快照管理功能,使我们重新回到了VMWare的怀抱。
我们最初的倾向就是微软公司的Virtual Server 2005 R2。
微软Virtual Server 2005 R2是一款免费产品,在一台运行Windows Server 2003标准版的物理服务器上,最多可以同时运行4个微软的基于Windows Server 2003操作系统的虚拟机,而无需额外授权;软件授权成本优势巨大。
我们计划报废的服务器中,有10台服务器在运行微软公司的服务器产品。在微软自家的虚拟化平台上运行微软的操作系统,应该可以获得更好的稳定性和更佳的系统性能。
我们在一台DELL PE6650服务器(CPU至强2.7GHz×4/内存 4GB/硬盘73GB×2 RAID1 + 146GB×3 RAID5)上进行了测试。我们发现微软的Virtual Server 2005 R2是一款优点和缺点都同样鲜明的虚拟化产品。根据我们公司的实际情况,我们认为如下因素是我们放弃微软虚拟化解决方案的主要原因:
1.微软公司对于Virtual Server 2005 R2的集中管理,暂时还有一定的欠缺。微软公司计划在Microsoft System Center系列产品中提供Virtual Server 2005 R2的集中管理解决方案,但是该产品尚未正式上市。
2.Virtual Server 2005 R2缺乏高可用性解决方案。
3.Virtual Server 2005 R2无法提供多快照管理功能。
4.物理机到虚拟机的迁移步骤略显烦琐。
虽然我们很遗憾地放弃了微软公司的虚拟化产品,但是Virtual Server 2005 R2巨大的成本优势是我们无法忽略的。我们计划在今后公司部署基于Windows Server 2003操作系统的非关键性应用上,继续采用微软公司的虚拟化产品,并同时期待微软公司能够尽快解决在虚拟化技术解决方案中的欠缺之处。
接下来,我们对VMWare公司的虚拟化产品进行了考察和评估,决定选用VMWare公司的产品来实施公司的应用系统整合。
VMware Infrastructure 3.0是VMWare公司在2006年6月发布的最高端企业产品,VMware Infrastructure 3.0套装软件整合了Virtual Center 2管理工具、ESX Server3产品,VMFS分散档案系统软件,以及全新的 Distributed Resource Scheduler、High Availability和Consolidated Backup 等。在整个服务器的底层硬件、AS/OS和后台存储技术上都有了更大的突破。
经过考察对比,我们决定选用VMWare公司的VMware Infrastructure 3.0套件作为公司虚拟化技术的解决方案。
VMware Infrastructure 3.0产品所具备的下面几个特性是我们真正看重的:
1.应用整合与多平台并存
通过ESX,我们得以将对于硬件资源负荷要求并不算高的多平台应用整合到一台独立的物理机内部,通过划分CPU、内存、存储以及I/O资源池的方式,最大限度地保证应用程序利用到全部的硬件资源。我们以往在同一物理平台上实现多操作系统是一件相当复杂的事情,操作系统是否能够安装将依赖于硬件平台的兼容性。而现在,VMWare ESX能够广泛的支持Windows服务器平台以及Linux平台,这里包含DELL 9G服务器无法正常安装的Windows NT,以及我们公司正在使用的Windoss 2000 SP1。
2.VMotion-实时迁移技术
应用VMotion技术,我们可以将应用从一台物理机迁移到另外一台物理服务器上,而时间只需要2秒钟。也就是说,建立起两台物理机以后,通过布署相同平台的虚拟机环境,我们的应用层基于虚拟机来实现,而数据存储依靠两台物理机之间的共享存储来实现。只要物理服务器不宕机,那么我们的应用将会是无间断的流畅运行。而应对物理服务器宕机的另一手段是HA功能模块。
3.DRS-动态平衡和分配
对于采用虚拟化技术,在一台物理服务器上整合多个公司业务应用,我们最担心的就是多个业务系统之间性能分配的问题。安装在Virtual Center管理服务器端的分布式资源调度程序,可以跨资源池不间断的监控资源利用率。在多个资源池之间动态的分配可用资源。当DRS所监控的某一个虚拟机负载较大的时候,DRS将在所管理的物理机上寻找合适的虚拟机做应用间的迁移。也正是因为DRS的监控和平衡负载机制,让我们可以放心的布署虚拟机应用,和对硬件资源做到完全透明的监控。
VMware Infrastructure 3.0在多平台兼容方面表现优秀
Virtual Center管理服务器端软件可以方便直观地监控资源利用率
应用VMotion技术可以方便地进行数据迁移
三、选择硬件解决方案
俗话说:好马拉好车。
有了VMWare虚拟化技术解决方案这样一架好车,如何选定一匹经济适用、马力强劲的良驹来拉动这架好车,就是我们接下来需要考虑的问题了。
我们对服务器的基本要求是:
1.硬件采购成本不能太高;
2.CPU运算能力强;
3.内存容量充足;
4. 服务器内存和硬盘的I/O吞吐性能良好。
由于我们公司一直采用DELL的企业级服务器产品,有着良好客户体验,因此本次应用整合自然继续选用DELL的服务器产品。我们首先排除了DELL的Power Edge 68X0系列企业级服务器;虽然PE68X0系列服务器可以提供更强大的计算能力和更高的I/O吞吐量,同样高昂的价格也令人望而却步。DELL的PE 19X0系列服务器虽然售价低廉,但是扩展能力有限,服务器性能也无法满足同时运行多台虚拟服务器的要求。这样,我们将目光对准了DELL的PE 29X0系列服务器
