云计算平台解决方案——软件开发测试云平台二〇一〇年九月一、业务挑战.............................................1二、云计算软件开发平台解决方案...........................22.1云计算整合架构....................................22.1.1虚拟化平台...................................22.1.2云服务管理平台...............................32.2云计算网络结构....................................42.2.1网络设计原则.................................42.2.2核心网络设计.................................42.3存储与备份........................................5三、用户价值分析.........................................6四、设备清单............................................104.1基础设施及网络部分...............................104.2服务器...........................................104.3云计算软件.......................................11-1-一、业务挑战无锡华夏计算机技术有限公司于2000年1月成立,是无锡软件出口外包骨干企业。公司主要以面向日本的软件外包开发为中心,致力于不断开拓国内市场、为客户提供优质的系统集成等业务。随着企业的发展,IT投入不断加大,随之而来的PC管理问题也越来越突出。华夏目前PC总拥有数1000台,主要用于研发和测试,由于项目多、任务紧,一台PC经常要用于不同的项目开发,而每次更换都要对PC系统进行重新安装和环境搭建。根据实际统计,华夏一个员工平均每年参与4个项目的开发,也就是每年要重新搭建四次开发环境,对测试人员来说这个数量还要更多;平均每次更换环境花费时间10个小时,华夏每年大约花费4万小时用于PC系统和环境搭建,按照人均工资15元/小时,每年花费在60万左右。除此之外,由于PC的使用寿命较短,更新升级频繁,大量的PC就意味着每年都要有很多PC需要淘汰和更新,现在这个数字大约是10台/月,而随着华夏的发展壮大,这个数字会进一步增加,这就意味着华夏每年花在PC升级和更新的费用最少在50~60万。与此同时,大量的PC也是的企业的能源消耗巨大,电力花费居高不下;按照平均180W/台,一台PC工作8小时/天,工业用电0.9元/度,华夏每年的电费就将近15万元。与巨大的IT投入相对应的就是IT资源利用率较低,PC分布在企业各个项目小组的开发人员手中,很难进行统一的管理调度,也无从得知PC的使用情况。软件开发的各个阶段对IT的需求都是不同的,我们无法得知某个正在进行的项目使用的PC资源是否有多余,无法将项目完成用不到的PC资源及时收回,以便给下一个项目小组使用,造成大量的IT资源浪费。-2-二、云计算软件开发平台解决方案软件开发云平台的建立需要分别考虑现有物理集中的IT资源,更需要考虑如何利用云计算的平台建立一个面向将来需求,面向发展的动态计算资源分配管理和服务自动化平台。这就需要充分考虑整个平台的延展性和可扩充性,从而帮助用户可以以最小的成本来搭建具有高度伸缩性的平台。2.1云计算整合架构下图为云计算平台的框架图,由云计算资源池、基础架构管理服务器及应用软件组成。云计算资源池:由一组可以实现自动供应和回收的预先定制的CPU和存储资源形成,具体包括服务器节点设备和元存储设备。由于云平台的很多特性,需要再一个大的资源池中才能够体现,比如动态迁移、负载均衡和高可用性,所以我们建议,最少采用2台X3850服务器,一台磁盘阵列搭建云平台。云计算基础架构管理服务器:为一台X86服务器,安装操作和管理整个云基础设施的工具包。云计算应用软件(基本软件包):基于Web2.0、根据服务请求进行资源供应和回收(如Web服务器、Web应用服务器、数据库服务器、目录服务等)。2.1.1虚拟化平台云计算平台可以整合XenServer作为计算资源的虚拟化平台。也可以扩展支-3-持KVM、IBMAIX虚拟化、Vmware等其他虚拟化技术。有了虚拟化平台后,利用云服务管理能力就可以实现从服务申请到虚拟化部署、从系统标准化安装到软件部署等。为充分利用云计算的优势,建议硬件资源全部采用X86架构的服务器作为服务器的资源池。服务器的整合在保持原有的服务器平台硬件和软件的前提下,在服务器裸设备上安装虚拟化管理软件,再虚拟化出来若干系统环境,相当于多个云主机。。2.1.2云服务管理平台利用云计算服务平台提供了面向管理员和使用者的服务门户。这些基础服务包括以下部分:用户管理系统中有两大类用户,分别为:云计算平台管理员,云计算平台使用者数据中心服务平台管理员能够对数据中心云平台上所有资源分配请求进行审批,增加或减少资源数目,变更项目时间,终止或删除项目。数据中心服务平台使用者能够对资源分配提出申请,对资源的增加或减少提出申请,提出变更项目时间的申请,提出终止项目的申请。同时他们可以进行一些自服务操作,比如重启属于他们项目的服务器、重置系统口令等。软件管理维护可部署的操作系统镜像及软件包。这通常由云计算平台管理员来负责实现,某些应用软件或者商业软件的部署需要定制或者客户化实现。存储管理用于维护外接存储服务器及存储资源池。使用计量用于对每个客户使用的物理资源数量、时间和利用率进行统计。这通常由云计算平台管理员来负责实现。而云计算平台使用者则是获得报告,了解自己申请的资源的使用情况。部署管理部署管理提供对用户请求的自动化部署。部署按照特定时间,根据云计算平台使用者获得的申请来实际部署。部署的实际工作由云计算服务管理平台的供应-4-引擎来自动实现。管理源需要做的是监督部署任务的执行情况。运行监控主要提供对当前申请使用的虚拟服务器的当前状态进行实时监控,了解基本的性能状况,并在自服务界面上呈现给相应用户。安全管理云计算平台提供了完善的手段保证每个项目的安全性和隔离性。用户对系统的访问有两个渠道:访问Web管理界面和访问项目虚拟机。对于Web界面的访问需要使用用户名和密码。对于虚拟机的访问通过以下手段进行控制:系统对外的接口上由一个VPN设备对用户进行认证。每个项目对应一个vLan。每个项目的虚拟机位于该vLan内部。vLan的隔离性由交换机及各主机上的hypervior保证。虚拟机的隔离性由虚拟化引擎本身保证。此外,操作系统的用户认证也可以对用户信息进行保护。2.2云计算网络结构云计算系统是众多服务器集中的管理系统,其系统特点是主机存放密集、服务范围广、网络结构复杂、安全程度要求高。在云计算中心的网络设计中应充分考虑这些特性。2.2.1网络设计原则云计算网络建设要实现内部全方位的资源共享,应用三层交换,使网络安全可靠,必须具备高性能、高安全性、高可靠性,可管理、可增值特性以及开放性、兼容性、可扩展性。2.2.2核心网络设计基于云计算平台的需要,把整个云计算网络分为两个区域,其中出口和核心作为一个整体区域,采用两台核心交换机,并部署2台防火墙实现冗余连接;接入汇聚作为另一个区域,整个网络就是由上述系列产品构成了三层网络架构。网络采用双核心,两台核心交换机之间通过特殊协议互为备份。在核心层与汇聚层之间所选用的设备建议支持万兆平滑过渡的设备,充分考虑了设备的投资-5-以及对下一代技术发展趋势的兼容性,真正做到了可平滑过渡到骨干网。在骨干层设计的时候充分考虑冗余设计,在两台核心交换机之间通过千兆链路连接起来。这样就构成了一个全冗余式的骨干层,充分保证了整个云计算网络业务的稳定。在云计算就网络设计出口时,我们主要考虑了以下几个需求:首先,对于双出口的网络,要求出口设备支持策略路由;其次,其次要求对于队列以及业务类型的QoS有良好的控制,可以提供灵活的控制方法;第三,要在保证双出口之间的灵活切换的同时,保证整个云计算网络的安全。2.3存储与备份云计算平台充分可以利用现有的存储设备,形成一个可以充分利用的存储资源池。如果没有存储设备,也可根据用户存储容量和数据传输效率要求,配备专门的云平台共享存储设备。由于基于云计算平台的搭建方案,所有虚拟机的操作系统和应用程序等都存储在共享存储中,所以对于存储设备本身和传输网络都有一定的要求。根据我们的经验,建议用户选择光纤SAN的存储结构,以满足云计算平台对数据传输和存储的需求。因为数据集中,为了更好的保证数据的安全性,建议配备一台备份存储设备。在所有业务服务器上部署相应的备份代理软件模块。这样,在定义好备份系统资源和策略后,在指定的时间,备份系统就会自动的将数据库服务器上的数据从共享存储上、采用指定的方式备份到备份存储设备中。-6-三、用户价值分析采用云计算技术,整合IT资源,将所有IT资源作为一个资源池,并将所有应用软件,作为一个软件资源池,项目负责人根据使用需要,提交资源使用申请,填写资源申请表,云计算会自动化帮助安装部署所有IT资源,用户即可领用,项目完成后,云计算自动回收资源,放入资源池,用于下一个项目开发使用。开发云平台中,软件开发测试的系统和环境部署如下表所示:任务项描述投入资源调度用户通过基于角色的Web门户网站来实现资源自动化供应,提交请求之后,数据中心管理员会得到通知,并登录以批准、修改或拒绝该请求。一旦批准,系统就会启动一个定义好的自动化工作流程来完成整个部署工作。完全自动化的供应流程符合安全要求,减少了人为原因造成的错误,大大缩短了系统部署的时间。5分钟操作系统安装系统会根据使用者提出的要求,通过后台的方式,自动的为用户部署操作系统,用户也可以启用一个存储在镜像库中的操作系统15分钟环境搭建同一个项目组中的所有人,可以启用一个已搭建好的环境镜像,也可以通过应用资源池,选择需要使用的应用程序30分钟网络配置自动化配置5分钟安全防范自动化安装5分钟变更云计算平台的资源变更功能非常灵活,用户可以在原有的系统中添加或删除软件组件或者连同操作系统完全重新部署。用户也可以向现有项目资源中添加服务器或者去除服务器,或者在符合要求的硬件系统上,也可以选择增加或减少分配给一个或多个虚拟机的资源数量。当变更申请提交后,整个系统的变更操作都是自动进行的,无需人工介入,系统可以在很短的时间内完成变更申请,提供给用户使用。30分钟回收IT资源在提交申请时需要用户填写服务的开始和结束时间,这样便于数据中心的管理人员对于资源使用情况有所了解。在服务到达结束时间时,系统会自动将资源收回,以便可以给其他需要资源的服务来使用。当然用户可以变更服务的结束时间,这也是管理平台的重要功能之一。10分钟硬件生命周期服务器使用寿命比PC较长,并且随着计算能力需求增大,可以减少一台服务器上的虚拟机数量,以延长服务器使用生命周期5——8年-7-使用云计算平台为软件开发提供IT支持,可以实现以下目标:1、提高IT资源利用率使用云计算平台,将所有IT资源集中到数据中心资源池,开发人员根据实际使用需要申请IT资源,管理人员能够监控到IT资源的使用情况,包括CPU、内存和存储的使用率;云计算平台的IT资源调度管理和资源回收功能,能够最大限度提高资源的使用效率,避免IT资源的浪费。根据调查显示,人均PC的IT资源利用率不足20%,而是用云计算平台,可将IT资源利用率提高到70%。2、降低软件开发生命周期使用云计算平台部署软件开发系统和环境,完全通过自动化和标准化流程,整个软件开发IT资源的部署时间只需要90分钟,并可对同一项目组所有人员同时部署,平台自带的变更管理大大减少了资源变更所需的人力物力,降低软件开发生命周期,节省人员成本。3