服务器开发的日子 2012-02-22
虚拟化技术能够提高设备利用率,加快应用部署、实现资源的动态调度,解决业务应用存在的单点故障,实现应用的高可用性。随着虚拟化技术日益成熟,已广泛应用于政府、企业数据中心的建设当中,从测试开发环境逐步延伸到了生产环境。
在真切感受到虚拟化技术的确能够给数据中心的运营带来巨大优势之后,政府、企业信息化部门的主管开始考虑将部署在物理服务器上的业务系统迁移至虚拟化平台,进一步降低数据中心的运营成本,提高数据中心的运营效率。但是在进行服务器虚拟化整合的过程中,信息化主管通常不得不面对业务系统运营存在的如下问题:
操作系统(suse 9、suse 10、windows 2003)中间件(Tomcat、WebSphere)、数据库(Oracle、DB2、MySQL、SQL Server)版本众多。
信息系统部署缺乏统一规划,多呈分散部署态势。一个突出的问题就是服务器数量众多但利用率不高,数据库数量众多但数据量很小。
信息系统数量众多,而且各个信息系统之间存在较为紧密的耦合关系。支撑内部业务运营的办公自动化、财务管理系统与对外提供服务的业务系统之间没有划分明确的运维管理边界,运维保障能力严重不足。
面对如此纷乱复杂的业务运营现状,信息化主管往往不知从何处着手,在确保不影响现有业务运营的前提下,高效率地开展服务器的虚拟化整合工作。笔者结合在进行服务器虚拟化整合过程中所积累的经验、教训,总结了开展服务器虚拟化整合工作的三大步骤。
梳理信息系统,完成信息收集
在信息收集阶段,需要完成如下几个方面的工作:
首先,掌握现有业务系统对应的应用服务器软、硬件配置,硬件配置主要包括服务器CPU型号及数量、内存容量、本地磁盘大小;软件配置主要包括安装的操作系统、Web服务器、中间件版本以及网络配置(包括IP地址、网关、DNS服务器)。同时还需要注意软件许可问题,需要向软件供应商了解迁移至虚拟机后如何重新注册软件许可证。最终形成信息系统的配置管理数据库CMDB。
其次,通过监控应用服务器的资源使用情况,了解应用服务器的现有配置对业务系统运营的支持能力。通常可以利用监控系统例如Zoho公司的Application Manager应用监控帮助我们实现对服务器性能信息的实时监控,为评估业务系统的硬件需求奠定基础。
最后,梳理信息系统之间的关联关系,随着信息系统的数量越来越多,信息系统之间的关联关系也变得越来越复杂。通过建立业务视图梳理业务系统之间的关联关系,并找出对应的配置信息,避免因为服务器虚拟化整合破坏信息系统之间的关联关系。
制定测试计划,开展迁移测试
通过第一阶段的信息收集,我们可以初步判断出信息系统运营所需要的服务器硬件配置。通常我们会发现在软件配置方面,操作系统及相关软件的版本普遍较低,与官方发布的最新稳定版本具有较大差距。从保证信息系统稳定、高效运行的角度考虑,建议在进行服务器整合的同时完成操作系统及相关软件版本的升级工作。同时对于存在关联关系的业务系统,在进行服务器虚拟化整合时,要进行相应的配置变更,并通过测试确保不对信息系统之间的关联关系造成破坏。
制定迁移测试计划需要开展如下几个方面的工作:
首先,如果原有的机架和塔式服务器的使用年限较长,硬件配置相差较大,那么建议新购刀片服务器取代原有的服务器。主流厂商IBM、HP以及Cisco的刀片服务器在电源使用效率、制冷以及硬件配置方面具有巨大优势,能够满足虚拟化管理程序hypervisor对硬件的要求,为实现高可用性、分布式资源调度扫清了障碍。通常虚拟化平台对服务器的内存要求较高,建议在采购刀片服务器时尽可能配置较多数量的内存,这样可以在一台物理服务器上运行更多的虚拟机。目前三大刀片服务器对内存的支持都达到了512GB以上,有的甚至达到了2TB。
其次,vSphere是目前使用最为广泛的虚拟化管理平台,目前最新的版本为vSphere 5。如果使用vSphere 5,需要注意的是其不同的软件版本所支持的虚拟CPU(vCPU)和虚拟内存(vRAM)是不同的。例如,如果信息系统对计算能力要求相当高,那可能要考虑采用vSphere 5的企业增强版,每台虚拟机支持32路的vCPU。另外,每颗物理CPU所支持的vRAM的数量不容忽略。例如,vSphere 5企业版,每颗物理CPU支持的vRAM为64GB。如果一片刀片服务器配置了4颗CPU,那么在使用vSphere 5企业版的情况下,最多可以使用的物理内存为256GB。
最后,确定将采用的服务器虚拟化整合方式。采用P2V方式,物理服务器与虚拟服务器之间是一一对应关系,完成虚拟化整合后,对配置进行的更改通常也较小。但是P2V不能解决软件版本升级问题,也容易导致服务器数量的蔓延。采用新建虚拟机方式,可以首先基于最新的操作系统、Web服务器、中间件版本构建虚拟机,然后按照重新部署应用的方式完成信息系统的部署。这种方法的优势在于在可以基于同一种应用类型在一台虚拟机上部署多个业务应用,同时完成软件版本的升级。但是采用新建虚拟机的方式往往难度较大,需要确定应用的部署配置并将业务系统的关联关系考虑在内,还要进行大量的应用部署测试等工作。如果企业自己具有信息系统开发团队,而且开发工作也是在企业内部完成的,那么建议采用新建虚拟机的方式。如果信息系统是由外部开发商所开发且不能提供良好的迁移技术支持,那么为降低虚拟化整合的风险,P2V可能是唯一的可行方式。
完成上述工作后,就可以编制服务器虚拟化迁移测试计划并报送信息化主管领导进行审批了。虚拟化迁移测试计划需要明确虚拟化整合测试的必要性以及相关软硬件要求,并请求测试部门、信息系统研发团队的配合,明确的测试时间周期等等,请信息化主管领导提供相应的支持。
最终的迁移测试结果需要明确以下事项:信息系统对硬件配置的要求,可行的服务器整合比率,信息系统采用的虚拟化整合方式是采用P2V还是新建虚拟机。
进行虚拟化整合,完成服务器整合
完成迁移测试,根据迁移测试结果,我们就可以编制相应的虚拟化整合计划了:明确虚拟化整合涉及哪些信息系统,将采用什么方式进行整合,需要对哪些配置信息进行修改,虚拟化整合工作将在什么时间进行,相关的部门与人员有哪些。为确保迁移成功,避免迁移失败,需要在完成迁移后进行业务测试并制定回退计划。
虚拟化整合计划经信息化主管领导审批同意后,就可以在非业务工作时间开展迁移工作了。虚拟化整合工作仍然要以信息系统作为处理单元,明确信息系统内部需要进行的配置变更以及为保证该系统正常工作在外部需要做出的其他配置更改。以通过互联网访问、向公众提供查询的某信息系统为例,我们将其中间件从物理服务器迁移至新建的虚拟机,在应用服务器的IP地址发生变更的情况下,通常需要修改内部域名服务器与IP地址之间的对应关系,确保原有的域名解析为现有的IP地址。与之关联的信息系统也要做出相应的IP地址配置调整,以确保它们之间的关联关系没有被破坏。