摘 要:针对传统开发环境管理模式存在的问题,利用基于虚拟化技术的开发环境全生命周期管理模式,有效的解决了环境搭建时间较长、系统的可靠性较弱、环境变更操作繁琐和开发环境不可恢复的问题。在此基础上,分析了全新的管理模式所存在的问题,并指出了解决问题的方向。
关键词:虚拟化;开发环境;全生命周期管理
1、背景
长期以来,很多软件企业特别是从事定制软件开发、集成的企业,一直面临这样一个问题:出于成本等方面的考虑,一个项目的开发环境通常不会长期保存,一旦用户在使用过程中出现问题,项目开发人员只能重新搭建开发环境进行调试,甚至在用户的生产系统中进行调试,时间成本、经济成本和技术风险都很大。
近几年来,随着虚拟化技术的兴起和单位容量存储价格的不断下降,使软件开发环境整体归档和一键式整体恢复成为可能。
2、虚拟化技术概述
虚拟化(Virtualization)技术诞生至今已有四十多年,历史上第一台虚拟机是上世纪六十年代IBM公司开发的System/360 Model 40 VM,其最初的设计目的是为了搭建一个时分共享的系统,以实现大型机资源的共享。近年来,随着计算机性能的不断提升,在大型机上沉寂一时的虚拟化技术,在小型机、PCServer和个人PC等领域迅速升温。小型机和微机领域的虚拟化经过十多年的发展,今天已经形成了一个良好的生态系统,包括从各有特色的各种虚拟化软件,到各个层次的硬件(如处理器、芯片组和设备等)对虚拟化的支持等[1]。
目前主流的主机虚拟化软件有VMware的VMware、Citrix的XenServer、微软的Hyper-V等,此外,在存储、网络以及虚拟化平台的自动化管理等领域目前也都出现了很多新兴技术和产品。
3、基于虚拟化技术的开发环境全生命周期管理
3.1基于虚拟化技术的开发环境
基于虚拟化技术的开发环境是数据中心的管理人员通过主机虚拟化、存储虚拟化和网络虚拟化等技术将物理资源虚拟化,抽象为虚拟的逻辑资源,并按照开发人员的需求,将虚拟主机、虚拟存储和虚拟网络等资源组成一个完整的开发环境,提供给开发人员使用。虚拟开发环境的生成过程如图1所示:
图1-虚拟开发环境生成示意图
使用虚拟化技术生成开发环境有以下几点明显的优势:
1)显著提高资源的使用效率。
所有的开发资源由数据中心统一管理、统一调配,企业不再需要为不同的项目反复购买昂贵的服务器,也不需要为开发人员配置多个不同的开发终端,开发人员只需要一台瘦客户机,甚至是无盘工作站,只要接入公司网络提供的开发环境即可进行开发。新的开发模式能大大降低公司在设备购买上所投入的资金。
2)提高开发环境的数据安全性。
所有的开发数据都保存在数据中心,开发人员所使用的本地终端进行任何数据交换行为都需要进行审核与安全性检查,能有效避免病毒对环境的破坏和技术泄密事件的发生。
3)提高开发环境部署和变更的灵活性。
使用虚拟化技术一个明显的优点就是资源能够按需分配并且能动态调配,数据中心的管理人员能方便为开发环境增加CPU、内存、存储空间等,无需更换硬件,大大降低了时间成本。
3.2传统模式下开发环境全生命周期管理
在传统的开发模式下,开发环境的管理模式如图2所示:
图2-传统模式开发环境全生命周期管理模式示意图
从图2可以看出传统模式下的开发环境管理模式存在以下几点不足:
1)环境搭建时间较长。
传统模式下,搭建环境先要进行开发需要规划环境配置,根据环境配置清单协调场地、设备、甚至电力供应等多项资源,经过硬件组装,网络调试,操作系统安装,开发工具、数据库、中间件安装等等一系列繁琐的过程才能完成环境搭建,费时费力。
2)系统的可靠性较弱。
一般的开发环境不会采取级别较高的备份或是容灾手段来保护系统的可靠性,一旦发生不可预见的情况,系统的可靠性难以保障,很多珍贵的开发数据面临着丢失的风险。
3)环境变更操作繁琐。
在项目的开发过程中,经常出现因用户需求变更带来的环境变更需求,在传统模式下,开发环境的重大变更(如拓扑变更、平台变更等)或是规模较小的变更(如增加内存等)都需要进行繁琐的操作,并且面临着系统不可用或是数据丢失的风险。
4)项目完成后,环境不可恢复。
在项目完成环境下线后,受限于设备成本、场地成本、时间成本等诸多因素,一般来说,项目的开发环境是不可恢复的。这是传统管理模式和基于虚拟化技术的开发环境全生命周期管理模式相比诸多弱点当中最为突出的一个。
3.3基于虚拟化技术的开发环境全生命周期管理
上述诸多问题一直以来都没有得到很好的解决,但是虚拟化技术的广泛应用使我们可以尝试一种完全不同以往的管理模式来解决这些问题。
基于虚拟化技术的开发环境全生命周期管理模式如图3所示:
图3-基于虚拟化技术的开发环境全生命周期管理模式示意图
综合图1和图3所示内容,可以看出基于虚拟化技术的开发环境全生命周期管理模式有以下特点和优点:
1)环境的迅速生成能力。
数据中心的管理人员根据开发人员提供的配置需求,从虚拟资源池中选择合规的资源组成开发环境。绝大部分资源可以使用资源池中已有的模板,只有极少部分的配置需要重新生成,极大的提高了开发环境的生成效率。
2)系统的高可靠性。
数据中心统一进行容灾、备份规划,各个开发环境无需单独考虑容灾、备份问题,提高了系统的可靠性,也降低了容灾、备份的成本。
3)变更操作简单、可靠。
利用虚拟化技术,可以对在线调整系统的CPU、内存、硬盘等资源的容量,无需更换硬件,也不存在因此带来的数据丢失的风险。
4)开发环境一键式恢复。
当项目完成开发并交付用户后,在虚拟化环境中,管理员将开发环境的配置文件和开发所产生的数据文件打包转储在离线存储中,当开发人员需要恢复环境进行调试或再开发时,管理员将配置文件和数据文件调出,一键式恢复开发环境,实现“跨项目生命周期”的环境维护保障。
4、存在的问题
虽然虚拟化技术的优点很多,但是在使用过程中还是要注重解决以下两个问题:
一是系统的可靠性。采用虚拟化技术带来了资源的集中,资源的集中往往意味着风险的集中,对于一个软件开发企业来将,开发数据的价值怎么强调都不为过,因此,在预算允许的情况下,至少需要建设一套容灾系统和一套备份系统。在单位容量存储价格的不断下降和容灾备份技术不断发展的今天,系统的可靠性已经得到了很好的解决。
二是系统配置的有效管理。虚拟化为我们带来了全新的解决方案,同是也带来了管理上的风险,最为突出的一个问题就是所谓的“虚拟化散乱”(virtualization sprawl),它是指在网络中的虚拟机数量达到某个点时,这时管理员无法有效管理这些虚拟机。为解决这一问题,需要严格执行基于ITIL的配置管理。配置管理流程负责核实IT基础设施中实施的变更以及配置项之间的关系是否已被正确地记录下来了;监控IT组建的运行状态,以确保配置管理数据库能够准确地反映现存配置项的实际版本状况[2]。简单的说就是管理员应该了解运行了多少虚拟机、哪台物理机在托管它们、它们的存储设备安置在哪、与它们相关的软件或操作系统许可是什么,为什么最初它们会被创建和谁创建了它们等等。在当前阶段,解决这一问题不能完全寄希望于技术,一方面要利用虚拟化管理技术,另一方面还要执行严格的管理审查制度才能实现对系统配置的有效管理。
5、总结
基于虚拟化技术的开发环境全生命周期管理模式与传统模式相比具有很多不可替代的优势,随着技术的不断发展和成本的不断下降,目前存在的一些问题也已经或正在得到很好的解决。相信随着虚拟化技术的进步,与之相应的各种管理模式也将得到进一步的发展。
参考文献:
[1]英特尔开源软件技术中心,复旦大学并行处理研究所。系统虚拟化——原理与实现[M],北京:清华大学出版社。2009.3-1
[2]Jan van Bon。基于ITIL的IT服务管理基础篇[M],北京:清华大学出版社。2007.8-1
中国论文网(www.lunwen.net.cn)免费学术期刊论文发表,目录,论文查重入口,本科毕业论文怎么写,职称论文范文,论文摘要,论文文献资料,毕业论文格式,论文检测降重服务。 返回电子论文列表