虚拟原动力:服务器效率
目前,一般企业内的服务器仅能达到15%~30%的系统处理能力,绝大部分的服务器负载都低于40%,大部分的服务器处理能力并没有得到利用,IT投资回报率偏低。正如41年前IBM研发虚拟技术的出发点,让一台机器尽可能多地让更多用户和应用程序有效使用,一直都是虚拟技术发展的原动力。
中科院物理所量子模拟科学中心(量子中心)的徐力方研究员对此感触颇深。2002年底,物理所定购了两台满配32颗Power4的IBM p690服务器,一台用于后台作业运算,一台作为登录节点和交互作业运算。但到了2003年9月,由于研究所的科研项目和学生迅速增加,交互作业节点作业拥挤,导致整机效率下降。
怎么办?徐力方咨询了IBM的技术人员,得到的答复是可以采用逻辑分区的技术,将登录节点机划分为8/24两个分区,8颗CPU的分区用于节点登录,另24颗CPU用于后台作业。但这样做仍然存在问题,因为8颗CPU又不够交互作业使用,徐力方介绍说,由于科研项目运行的并行程序众多, 其中有学生们自行编写或修改自开放源码,难以避免多数子作业运行完毕,而少数子作业还在运算的情况,这样就会出现计算能力的浪费。如果用逻辑分区把分区细分,又会出现某些项目在细分区上无法计算的情况——分区资源变更又浪费时间。
这一问题最终得到了圆满解决,2003年10月,IBM发布了AIX 5L v5.2,IBM的工程师随后以动态逻辑分区的方式配置了5个动态分区,高峰时每个研究组各占20%的资源,但闲暇时则每个分区都能调用所有的计算资源,这样,既做到资源的合理分配,又做到了资源的充分利用。
量子中心的案例中,虽然使用了5个分区,但都采用的是AIX操作系统,那么多操作系统的虚拟应用情况如何?据中国惠普CSG企业服务器产品经理王镝介绍,国内已有实际用户实施了多操作系统虚拟。王镝介绍说,2005年,国内某用户采购了1台配置32颗安腾2处理器的(其中16颗为待激活状态)HP Integrity Superdome服务器,系统先以硬分区技术划分为两个物理分区,然后每个物理分区用vPAR和HP Virtual Machine技术划分为三类逻辑分区,分别运行社保交易服务器、BEA Weblogic应用服务器、Oracle数据库服务器,分别运行在HP-UX和Linux平台上,统一以HP Workload Management管理。这样,当日常白天医保交易繁忙时,可将数据库服务器分区的计算资源调配到社保交易分区,晚上进行批处理业务的时候再调配;而在月末各分区的业务都繁忙时,以iCOD(按需扩容)或TiCOD(购买待激活CPU若干小时的点卡)的方式,将待激活CPU临时调配到各个分区。这样,用户既获得了足够的计算资源和安全性,但又只需较低的成本,保证了投资回报率。
实施虚拟应注意什么?
虚拟技术虽然成熟,但实施起来可不能想当然。那么在虚拟实施过程中应该注意些什么?
中国人民银行清算总中心是IBM大型主机和p系列服务器的老用户,从1992年前后开始使用大型主机,算来也有14年的历史。清算中心开发部的副总经理贝劲松在谈起实施虚拟技术时,认为尤其应该关注两点。
首先是实施前要对业务系统、对计算资源的需求有明确了解。贝劲松笑谈,清算总中心在这方面是摸索出来的经验。2002年时,清算总中心曾购买了两台配置8颗1.1GHz Power4处理器的IBM eServer p690服务器,当时按照4/2/2的方式划分为了三个逻辑分区,但通过压力测试发现第一个分区负载较小,反而是第二个分区经常过载,于是将分区调整为2/4/2的配置,解决了这个问题。
其次是实施前要有充分的测试期。贝劲松认为,像银行这样的自行开发业务系统的行业,相对比较容易了解业务系统对计算资源的压力,但即使这样,也需要进行充分测试,如不具备对等配置测试环境,也应在处理能力稍低的同类硬件平台上进行测试。例如,清算总中心2005年购买了8路IBM eServer p570(用于生产)和两路的eServer p570 p550(用于测试),分别按照2/6和0.5/1.5的配置进行分区,在系统的开发期和测试期,p550上的测试数据有助于他们了解业务系统对计算资源的需求。如果是不自行开发业务系统的行业,就更有必要在近似系统上进行测试,毕竟生产系统的安全性是第一位的。
除了老用户的经验之谈,笔者认为在实施虚拟技术之前,还应参照左表,决定采用哪种虚拟技术最合适。从表中容易得知,如果是简单的单机应用开发,那么采用应用虚拟技术最合适;如果需要开发Web应用,那么软件虚拟技术才能满足需求。