一种应用节点的批量部署方法及装置的制作方法

文档序号:6357842阅读:164来源:国知局
专利名称:一种应用节点的批量部署方法及装置的制作方法
技术领域
本申请涉及应用节点数据处理的技术领域,特别是涉及一种应用节点的批量部署方法及一种应用节点的批量部署装置。
背景技术
在拥有上百台乃至千台服务器的企业级网的络应用中,需要将开发好的应用节点在服务器集群上进行部署。如电子商务网站的广告运算引擎集群、展现前端集群、存储集群、Jboss (JBoss是一个开源的符合J2EE规范的应用服务器)集群、中间件服务集群等集群服务,在集群需要扩容、部署、升级、回滚、还原、重用时,对集群服务器上的应用节点进行批量分发、拷贝和配置等部署操作。在本申请申请中,应用节点是指,物理服务器或虚拟服 务器及其计算机操作系统,使用软件作为计算机应用服务的主机载体单位。以在Linux服务器上使用RPM (Redhat Package Manager,软件包管理器)进行软件部署为例,目前,普遍应用于服务器集群的应用节点批量部署方法主要有以下几种第一种,使用tar. gz格式的压缩包或同功能压缩包部署假设应用节点由软件a、b、c组成,其中,软件a需要修改配置a. confl,软件b、c无需修改配置,此应用节点需要部署至200台服务器上。采用tar. gz包的部署方式,首先分别解压缩软件a、b、c的三个tar. gz包,并拷贝至对应系统目录,然后手工修改a. confl,完成第I台服务器的部署;余下的199台服务器反复执行上述操作。通过编写批量脚本,可以略微提升这种部署方式的效率,但该部署方法的执行效率仍然十分低下,并且在部署过程中非常容易出错,尤其在处理大数量级应用节点的批量部署时,有极大的操作风险。第二种、使用Yum包部署公知的是,Yum全称为Yellow dog Updater, Modif ied。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。假设应用节点由软件a、b、c组成,其中,软件a需要修改配置a. confl,软件b、c无需修改配置,此应用节点需要部署至200台服务器上。采用Yum包的部署方式,使用yum install a b c命令安装三个软件包,文件自动按照软件包指定路径部署至目标目录,手工修改a. confl,完成第I台服务器的部署,余下的199台服务器反复执行上述操作。通过编写批量脚本,可以提升这种部署方式的效率。相对于使用tar. gz包部署的方法,Yum包部署方法的效率能有所提升,但在修改配置时容易出错,尤其在处理大数量级应用节点的批量部署时,错误时常会发生,有极大的操作风险。因此,目前需要本领域技术人员迫切解决的一个技术问题就是创造性地提出一种能快速、有效地在服务器集群上进行应用节点批量部署的机制,用以简化应用节点批量部署的流程,提高应用节点批量部署的效率,并大幅降低操作风险。

发明内容
本申请所要解决的技术问题是提供一种应用节点的批量部署方法和装置,用以简化应用节点批量部署的流程,提高应用节点批量部署的效率,并大幅降低操作风险。为了解决上述问题,本申请公开了ー种应用节点的批量部署方法,包括构造应用节点原型机,所述应用节点原型机中记录有应用节点的软件包列表信息,以及,软件包所含配置文件的修改信息;在所述应用节点原型机上,依据所述应用节点的软件包列表信息和软件包所含配置文件的修改信息生成应用节点的快照信息,所述快照信息包括修改后的软件包信息,被修改的软件包信息及其修改内容信息;在目标服务器上,依据所述应用节点的快照信息部署应用节点;所述部署操作包括依据所述修改后的软件包信息安装对应的软件包;以及, 依据所述被修改的软件包信息及其修改内容信息对相应软件包的对应内容进行修改。优选的,所述依据应用节点的软件包列表信息和软件包所含配置文件的修改信息生成应用节点的快照信息的步骤包括依据软件包所含配置文件的修改信息获取当前修改的软件包,并提取软件包中对应的修改内容信息;依据所述应用节点的软件包列表信息和当前被修改的软件包信息,获得修改后的软件包信息。优选的,所述软件包存储在软件仓库服务器中,所述依据应用节点的软件包列表信息和软件包所含配置文件的修改信息生成应用节点的快照信息的步骤包括依据所述应用节点的软件包列表信息确定满足预设条件的软件包;在所述满足预设条件的软件包中,依据软件包所含配置文件的修改信息确定当前被修改的软件包信息;依据当前被修改的软件包信息从软件仓库服务器中获取对应的软件包;按照所述软件包所含配置文件的修改信息提取所获取软件包中的对应内容,依据该内容生成所述软件包的修改内容信息;依据所述应用节点的软件包列表信息和当前被修改的软件包信息,获得修改后的软件包信息。优选的,所述应用节点的软件包列表信息包括软件包归属性,所述软件包归属性包括操作系统归属性和非操作系统归属性,所述满足预设条件的软件包为所述软件包归属性为非操作系统归属性的软件包。优选的,在目标服务器上依据应用节点的快照信息部署应用节点的步骤之前,还包括在应用节点原型机上保存所述应用节点的快照信息;在目标服务器上导入所述应用节点的快照信息。优选的,在目标服务器上依据应用节点的快照信息部署应用节点的步骤之前,还包括将所述应用节点的快照信息保存至中央快照存储服务器,并为所述应用节点的快照信息分配版本信息;
从所述中央快照存储服务器获取最新版本的应用节点的快照信息。优选的,所述应用节点的快照信息以文本文件的格式进行保存。优选的,所述依据被修改的软件包信息及其修改内容信息对相应软件包的对应内容进行修改的步骤包括在所述满足预设条件的软件包中,依据被修改的软件包信息确定相应的软件包;依据所述修改内容信息,提取所述软件包中的对应内容并进行修改。优选的,所述部署操作还包括依据软件包列表信息删除所述列表之外的已安装软件包。优选的,所述应用节点的软件包列表信息还包括软件包名称、软件包版本以及平台架构信息;所述应用节点的快照信息还包括快照信息标识、快照信息形成时间、满足预设条件的软件包数量、不满足预设条件的软件包数量、满足预设条件的软件包信息和不满足预设条件的软件包信息。本申请还公开了一种应用节点的批量部署装置,包括原型机构造模块,用于构造应用节点原型机,所述应用节点原型机中记录有应用节点的软件包列表信息,以及,软件包所含配置文件的修改信息;快照抓取模块,用于在所述应用节点原型机上,依据所述应用节点的软件包列表信息和软件包所含配置文件的修改信息生成应用节点的快照信息,所述快照信息包括修改后的软件包信息,被修改的软件包信息及其修改内容信息;应用克隆模块,用于在目标服务器上,依据所述应用节点的快照信息部署应用节占.所述应用克隆模块包括安装子模块,用于依据所述修改后的软件包信息安装对应的软件包;以及,配置修改子模块,用于依据所述被修改的软件包信息及其修改内容信息对相应软件包的对应内容进行修改。优选的,所述快照抓取模块包括 修改内容软件包获取子模块,用于依据软件包所含配置文件的修改信息获取当前修改的软件包,并提取软件包中对应的修改内容信息;目标主机与快照信息软件包补集列表获取子模块,用于依据所述应用节点的软件包列表信息和当前被修改的软件包信息,获得修改后的软件包信息。优选的,所述的装置还包括软件仓库服务器,用于存储所述软件包; 所述快照抓取模块包括软件包分类筛选子模块,用于依据所述应用节点的软件包列表信息确定满足预设条件的软件包;修改软件包确定子模块,用于在所述满足预设条件的软件包中,依据软件包所含配置文件的修改信息确定当前被修改的软件包信息;软件包获取子模块,用于依据当前被修改的软件包信息从软件仓库服务器中获取对应的软件包;生成软件包内容修改信息子模块,用于按照所述软件包所含配置文件的修改信息提取所获取软件包中的对应内容,依据该内容生成所述软件包的修改内容信息;目标主机与快照信息软件包补集列表获取子模块,用于依据所述应用节点的软件包列表信息和当前被修改的软件包信息,获得修改后的软件包信息。优选的,所述应用节点的软件包列表信息包括软件包归属性,所述软件包归属性包括操作系统归属性和非操作系统归属性,所述满足预设条件的软件包为所述软件包归属性为非操作系统归属性的软件包。优选的,所述的装置还包括本地保存模块,用于在应用节点原型机上保存所述应用节点的快照信息;快照信息配置模块,用于在目标服务器上导入所述应用节点的快照信息。优选的,所述的装置还包括 服务器存储模块,用于将所述应用节点的快照信息保存至中央快照存储服务器,并为所述应用节点的快照信息分配版本信息;快照信息获取模块,用于从所述中央快照存储服务器获取最新版本的应用节点的快照信息。优选的,所述应用节点的快照信息以文本文件的格式进行保存。优选的,所述配置修改子模块包括软件包定位单元,用于在所述满足预设条件的软件包中,依据被修改的软件包信息确定相应的软件包;内容修改单元,用于依据所述修改内容信息,提取所述软件包中的对应内容并进行修改。优选的,所述应用克隆模块还包括删除子模块,用于依据软件包列表信息删除所述列表之外的已安装软件包。优选的,所述应用节点的软件包列表信息还包括软件包名称、软件包版本以及平台架构信息;所述应用节点的快照信息还包括快照信息标识、快照信息形成时间、满足预设条件的软件包数量、不满足预设条件的软件包数量、满足预设条件的软件包信息和不满足预设条件的软件包信息。与现有技术相比,本申请具有以下优点I、本申请通过构建应用节点的软件包模型,并抓取应用节点的软件包状态实现应用节点的快照功能,以及,依据抓取的应用节点快照进行应用节点的克隆,实现操作系统软件包、应用软件包的部署;本申请能快速、有效地在服务器集群上进行应用节点批量部署,简化了应用节点批量部署的流程,提高了应用节点批量部署的效率,并大幅降低操作风险,尤其对大数量级应用节点的部署效率有极大提高,出错几率近乎为零,并能实现快照版本的升级和回滚功能。2、本申请大大降低了安装部署时操作失误引发的风险和复杂命令和不同场景行为差异带来的困惑;通过自身的功能和特征,将使得对应用和服务的重塑、还原、克隆、回滚等工作变得异常简单,使得开发到测试、生产之间的应用传递环节和过程变得更加简洁透明和轻松。


图I是本申请的ー种应用节点的批量部署方法实施例I的流程2是本申请的ー种应用节点的批量部署方法实施例2的流程图;图3是本申请的ー种应用节点的批量部署装置实施例的结构框图。
具体实施例方式为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式
对本申请作进一步详细的说明。本申请的主要思想包括提出一种基于软件包管理的应用节点快照和克隆机制,通过构建应用节点的软件包模型,并抓取应用节点的软件包状态实现应用节点的快照功能,以及,依据抓取的应用节点快照进行应用节点的克隆,实现操作系统软件包、应用软件包的部署。一种易于理解的比喻为提取应用服务的DNA信息并克隆出该应用服务。參考图1,示出了本申请的ー种应用节点的批量部署方法实施例I的流程图,具体可以包括以下步骤步骤101、构造应用节点原型机,所述应用节点原型机中记录有应用节点的软件包列表信息,以及,软件包所含配置文件的修改信息;所述应用节点原型机可以理解为应用节点的样本服务器。以在Linux系统中应用本申请实施例为例,用户可以使用yum/rpm等命令获取RPM软件包在系统上进行安装,并确定应用节点构成的所有软件均为RPM软件包,以及,按照当前开发或应用需求修改RPM软件包的配置文件,以完成整个应用节点原型机的构造。
作为本申请实施例的ー种具体应用的示例,所述应用节点的软件包列表信息可以包括软件包名称、软件包版本以及平台架构信息;例如,RPM软件包管理器所记录的软件名称、版本和平台架构信息。所述软件包所含配置文件的修改信息可以为修改的RPM软件包配置文件的具体内容,可以通过应用节点原型机上的软件配置和同版本未经修改的软件配置的归ー化比对输出获得。步骤102、在所述应用节点原型机上,依据所述应用节点的软件包列表信息和软件包所含配置文件的修改信息生成应用节点的快照信息,所述快照信息包括修改后的软件包信息、被修改的软件包信息及其修改内容信息;在本申请的ー种优选实施例中,所述步骤102可以包括如下子步骤子步骤1021、依据软件包所含配置文件的修改信息,获取当前修改的软件包,并提取软件包中对应的修改内容信息;子步骤1022、依据所述应用节点的软件包列表信息和当前被修改的软件包信息,获得修改后的软件包信息。以在Linux系统中应用本申请实施例为例,依据修改的RPM软件包配置文件的具体内容,可以获得当前需要修改的RPM软件包信息,如RPM软件包的名称,依据该信息获取对应的RPM软件包,如从预置的软件包存储服务器上下载对应的RPM软件包,然后依据需要修改的具体内容提取所述RPM软件包中的对应内容并进行相应修改。步骤103、在目标服务器上,依据所述应用节点的快照信息部署应用节点;所述部署操作包括以下子步骤子步骤1031、依据所述修改后的软件包信息安装对应的软件包;以及,
子步骤1032、依据所述被修改的软件包信息及其修改内容信息对相应软件包的对应内容进行修改。作为本申请的ー种优选实施例,在执行步骤103之前,可以包括以下步骤在应用节点原型机上保存所述应用节点的快照信息;在目标服务器上导入所述应用节点的快照信息。应用本实施例,在具体实现中,抓取的应用节点快照信息可以保存到应用节点原型机,在这种情况下,在部署应用节点之前,可以采用文件拷贝的方式在目标服务器上导入所述应用节点的快照信息。作为本申请的另ー种优选实施例,在执行步骤103之前,可以包括以下步骤 将所述应用节点的快照信息保存至中央快照存储服务器,并为所述应用节点的快照信息分配版本信息;从所述中央快照存储服务器获取最新版本的应用节点的快照信息。应用本实施例,在具体实现中,抓取的应用节点快照信息可以通过postAPI接ロ(基于提交的应用程序编程接ロ)提交到中央快照存储服务器进行存储和版本控制,在这种情况下,则可以通过getAPI接ロ(基于获取的应用程序编程接ロ)从所述中央快照存储服务器获取最新版本的应用节点的快照信息进行应用节点的部署。在具体实现中,为提高平台适用性,所述应用节点的快照信息可以以文本文件的格式进行保存。
參考图2,示出了本申请的ー种应用节点的批量部署方法实施例2的流程图,具体可以包括以下步骤步骤201、构造应用节点原型机,所述应用节点原型机中记录有应用节点的软件包列表信息,以及,软件包所含配置文件的修改信息;步骤202、在所述应用节点原型机上,依据所述应用节点的软件包列表信息和软件包所含配置文件的修改信息生成应用节点的快照信息,所述快照信息包括修改后的软件包信息,被修改的软件包信息及其修改内容信息;本步骤具体可以包括以下子步骤子步骤2021、依据所述应用节点的软件包列表信息确定满足预设条件的软件包;子步骤2022、在所述满足预设条件的软件包中,依据软件包所含配置文件的修改信息确定当前被修改的软件包信息;子步骤2023、依据当前被修改的软件包信息从软件仓库服务器中获取对应的软件包;子步骤2024、按照所述软件包所含配置文件的修改信息提取所获取软件包中的对应内容,依据该内容生成所述软件包的修改内容信息;子步骤2025、依据所述应用节点的软件包列表信息和当前被修改的软件包信息,获得修改后的软件包信息。作为ー种具体应用的示例,所述应用节点的软件包列表信息包括软件包归属性,所述软件包归属性可以包括操作系统归属性和非操作系统归属性,所述满足预设条件的软件包则可以为所述软件包归属性为非操作系统归属性的软件包。以在Linux系统中应用本申请实施例为例,首先可以通过RPM相关命令(RPMDB)获取操作系统上所有的RPM软件包列表,然后根据RPM软件包的组命名和用户指定的归属性(CUSt)参数,或者,根据RPM软件包的组(Group)标签,将所有的RPM软件包划分为操作系统归属性的软件包(Base RPMS)和非操作系统归属性的软件包(Cust RPMS)。依据修改的RPM软件包配置文件的具体内容,对非操作系统归属性的软件包(Cust RPMS)进行校验,获得当前需要修改的非操作系统归属性的软件包信息,如RPM软件包的名称,然后从软件仓库服务器上下载对应的软件包,依据需要修改的具体内容提取所述RPM软件包中的对应内容并进行相应修改。例如,对于非操作系统归属性的软件包(Cust RPMS)的校验可以使用unix的比较命令(diff)进行文本比较实现,对于操作系统归属性的软件包(Base RPMS)则不进行校验。需要修改的软件包信息是根据修改软件包配置文件的内容而产生的,修改的内容可以使用diff-u标准输出记录在应用节点的快照信息中。在本申请的一种优选实施例中,所述应用节点的快照信息还可以包括快照信息标识、快照信息形成时间、满足预设条件的软件包数量、不满足预设条件的软件包数量、满 足预设条件的软件包信息和不满足预设条件的软件包信息。当然,上述应用节点的快照信息的内容及生成方式仅仅用作示例,本领域技术人员根据实际情况设置应用节点快照信息的内容,并采用任一种合适的生成方式都是可行的,例如,还可以在所述应用节点快照信息中设置注释信息等,本申请对此无需加以限制。步骤203、在目标服务器上,依据所述应用节点的快照信息部署应用节点;所述部署操作包括以下子步骤子步骤2031、依据所述修改后的软件包信息安装对应的软件包;子步骤2032、在所述满足预设条件的软件包中,依据被修改的软件包信息确定相应的软件包;依据所述修改内容信息,提取所述软件包中的对应内容并进行修改;子步骤2033、依据软件包列表信息删除所述列表之外的已安装软件包。本步骤用以完成应用节点的克隆,实现操作系统软件包、应用软件包的部署。在具体实现中,可以在在目标服务器上安装克隆组件程序,并触发执行,安装克隆组件从软件仓库服务器获取RPM软件包并执行安装,根据应用节点的快照信息还原更改过的配置,一次克隆的过程即执行完毕。具体而言,克隆过程执行时,首先通过中央快照存储服务器或存储在本地的快照信息文件获取快照信息,然后根据应用节点的快照信息检查已存在、需卸载、需更改的软件包,进行安装、卸载、修改配置等自动化处理工作。在本实施例中,对于具有操作系统归属性的软件包(Base RPMS)可以执行安装操作,对于具有非操作系统归属性的软件包(Cust RPMS)可以执行安装和配置修改操作,对于多余的软件包则执行删除操作。例如,在目标服务器上已有A,B,C,D,e, f,x, y, z九个软件包,应用节点快照信息中记录的Base RPMS列表为A,B,C ;Cust RPMS列表为e,f,g, h ;应用本实施例在当前服务上部署应用节点时,则需要安装D,g,h ;需要配置e,f软件包,需要删除x,y, z软件包。为使本领域技术人员更好地理解本申请,以下提供一种实现本申请实施例的具体示例。(I)在一个应用节点服务器上使用软件包构建所需应用节点;(2)对该应用节点命名,命名方式为主机名、主机组名、应用模型;(3)对该应用节点进行快照信息的抓取
首先获取操作系统上的全部软件列表,根据RPM分组标签将分为操作系统归属性软件包(Base RPMS)列表和(非操作系统归属性软件包)Cust RPMS列表,然后对有改动的⑶ST软件包进行校验,和软件仓库服务器上的未改动软件包进行对比,保存修改的内容至应用节点的快照信息中,并将Base RPMS列表、Cust RPMS列表、改变的软件包列表和修改内容、主机名和抓取时间写入应用节点的快照信息中,将快照信息存放在本地或者提交至中央快照存储服务器。(4)获取应用节点的快照信息,针对Base RPMS软件包做存在检查,系统上不存在则存入需要安装的Base RPMS ;Cust RPMS包列表作版本、和存在检查,系统上不存在则存入需要安装的Cust RPMS,对有变化的软件包中的文件按照快照信息中提供的修改信息进行修改,将属性还原为软件包中的文件属性;合并待删除列表和待安装列表,执行删除多余RPM和安装所需RPM的操作,以及,删除因命令产生的临时文件。为进ー步说明本申请,以下通过与现有技术对比进ー步阐述本申请实施例的优点I、应用服务节点服务器部署效率的提升使用传统yum命令将经过软件包在yum服务器上的逐一检索、与用户准确度的交互确认、执行安装的过程,用户需要记忆软件包名称、版本和安装顺序,安装完毕后需要手エ修改相应的配置文件以便达到所需的软件配置。而使用本申请实施例则无需人工记忆软件包列表、安装步骤、配置修改内容,避开了软件在服务器上的逐一检索、交互和确认;2、应用服务节点服务器构造作业的传递效率提升现有技术中的应用服务节点服务器部署需要长达十几甚至几十页的的部署手册,ー个典型的手册中记录了服务器环境信息、注意事项、安装命令、软件配置的修改方法、修改内容,以及操作步骤和顺序,效率低下、无助于生产效率的改进和提高,在操作上浪费大 量的工程师时间;而本申请实施例的快照传递信息为ー个快照名称,系统自动识别服务器环境、自动安装获取软件、自动对安装顺序进行排序处理、自动修改软件配置。3、应用服务节点服务器构造作业的学习成本降低现有技术中的部署作业需要ー个具备丰厚系统管理工程师背景的工程师对软件包管理、软件配置、系统配置的学习,而本申请实施例将这些学习成本转化为系统的自动流程和机制——依据快照的软件获取过程、软件安装过程、软件配置过程,从而使得用户无需学习yum/rpm等复杂的系统管理命令和软件配置方法即可对应用服务节点服务器进行部署和安装。需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。參考图3,示出了ー种应用节点的批量部署装置实施例的结构框图,具体可以包括以下模块原型机构造模块301,用于构造应用节点原型机,所述应用节点原型机中记录有应用节点的软件包列表信息,以及,软件包所含配置文件的修改信息;快照抓取模块302,用于在所述应用节点原型机上,依据所述应用节点的软件包列表信息和软件包所含配置文件的修改信息生成应用节点的快照信息,所述快照信息包括修改后的软件包信息,被修改的软件包信息及其修改内容信息;应用克隆模块303,用于在目标服务器上,依据所述应用节点的快照信息部署应用节点;所述应用克隆模块303可以包括以下子模块安装子模块,用于依据所述修改后的软件包信息安装对应的软件包;以及,配置修改子模块,用于依据所述被修改的软件包信息及其修改内容信息对相应软件包的对应内容进行修改。作为本申请的一种优选实施例,所述快照抓取模块可以包括以下子模块修改内容软件包获取子模块,用于依据软件包所含配置文件的修改信息获取当前修改的软件包,并提取软件包中对应的修改内容信息;目标主机与快照信息软件包补集列表获取子模块,用于依据所述应用节点的软件包列表信息和当前被修改的软件包信息,获得修改后的软件包信息。作为本申请的另一种优选实施例,本申请的应用节点批量部署装置还可以包括用于存储所述软件包的软件仓库服务器304,所述快照抓取模块可以包括以下子模块软件包分类筛选子模块,用于依据所述应用节点的软件包列表信息确定满足预设条件的软件包;修改软件包确定子模块,用于在所述满足预设条件的软件包中,依据软件包所含配置文件的修改信息确定当前被修改的软件包信息;软件包获取子模块,用于依据当前被修改的软件包信息从软件仓库服务器中获取 对应的软件包;生成软件包内容修改信息子模块,用于按照所述软件包所含配置文件的修改信息提取所获取软件包中的对应内容,依据该内容生成所述软件包的修改内容信息;目标主机与快照信息软件包补集列表获取子模块,用于依据所述应用节点的软件包列表信息和当前被修改的软件包信息,获得修改后的软件包信息。作为一种具体应用的示例,所述应用节点的软件包列表信息可以包括软件包归属性,所述软件包归属性可以包括操作系统归属性和非操作系统归属性,在本实施例中,所述满足预设条件的软件包可以为所述软件包归属性为非操作系统归属性的软件包。在具体实现中,还可以采用本地保存模块在应用节点原型机上保存所述应用节点的快照信息;在这种情况下,在部署应用节点之前,可以采用快照信息配置模块在目标服务器上导入所述应用节点的快照信息。作为另一种具体实现的方式,还可以采用服务器存储模块将所述应用节点的快照信息保存至中央快照存储服务器305,并为所述应用节点的快照信息分配版本信息;在这种情况下,则可以通过快照信息获取模块从所述中央快照存储服务器获取最新版本的应用节点的快照信息。优选的是,在本申请实施例中,所述应用节点的快照信息可以以文本文件的格式进行保存。在本申请的一种优选实施例中,所述配置修改子模块可以包括软件包定位单元,用于在所述满足预设条件的软件包中,依据被修改的软件包信息确定相应的软件包;内容修改单元,用于依据所述修改内容信息,提取所述软件包中的对应内容并进行修改。在具体应用中,所述应用克隆模块还可以包括删除子模块,用于依据软件包列表信息删除所述列表之外的已安装软件包。作为一种具体应用的示例,所述应用节点的软件包列表信息还可以包括软件包名称、软件包版本以及平台架构信息;所述应用节点的快照信息还可以包括快照信息标识、快照信息形成时间、满足预设条件的软件包数量、不满足预设条件的软件包数量、满足预设条件的软件包信息和不满足预设条件的软件包信息。由于本实施例基本相应于前述图I和图2所不的方法实施例,故本实施例的描述 中未详尽之处,可以参见前述实施例中的相关说明,在此就不赘述了。需要说明的是,本申请装置实施例和系统实施例中所涉及的模块、子模块和单元可以为软件,可以为硬件,也可以为软件和硬件的组合。本申请可用于众多通用或专用的计算系统环境或配置中。例如个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。以上对本申请所提供的一种应用节点的批量部署方法和一种应用节点的批量部署装置进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式
及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
权利要求
1.一种应用节点的批量部署方法,其特征在于,包括 构造应用节点原型机,所述应用节点原型机中记录有应用节点的软件包列表信息,以及,软件包所含配置文件的修改信息; 在所述应用节点原型机上,依据所述应用节点的软件包列表信息和软件包所含配置文件的修改信息生成应用节点的快照信息,所述快照信息包括修改后的软件包信息,被修改的软件包信息及其修改内容信息; 在目标服务器上,依据所述应用节点的快照信息部署应用节点;所述部署操作包括 依据所述修改后的软件包信息安装对应的软件包;以及, 依据所述被修改的软件包信息及其修改内容信息对相应软件包的对应内容进行修改。
2.如权利要求I所述的方法,其特征在于,所述依据应用节点的软件包列表信息和软件包所含配置文件的修改信息生成应用节点的快照信息的步骤包括 依据软件包所含配置文件的修改信息获取当前修改的软件包,并提取软件包中对应的修改内容信息; 依据所述应用节点的软件包列表信息和当前被修改的软件包信息,获得修改后的软件包信息。
3.如权利要求I所述的方法,其特征在于,所述软件包存储在软件仓库服务器中,所述依据应用节点的软件包列表信息和软件包所含配置文件的修改信息生成应用节点的快照信息的步骤包括 依据所述应用节点的软件包列表信息确定满足预设条件的软件包; 在所述满足预设条件的软件包中,依据软件包所含配置文件的修改信息确定当前被修改的软件包信息; 依据当前被修改的软件包信息从软件仓库服务器中获取对应的软件包; 按照所述软件包所含配置文件的修改信息提取所获取软件包中的对应内容,依据该内容生成所述软件包的修改内容信息; 依据所述应用节点的软件包列表信息和当前被修改的软件包信息,获得修改后的软件包信息。
4.如权利要求3所述的方法,其特征在于,所述应用节点的软件包列表信息包括软件包归属性,所述软件包归属性包括操作系统归属性和非操作系统归属性,所述满足预设条件的软件包为所述软件包归属性为非操作系统归属性的软件包。
5.如权利要求I所述的方法,其特征在于,在目标服务器上依据应用节点的快照信息部署应用节点的步骤之前,还包括 在应用节点原型机上保存所述应用节点的快照信息; 在目标服务器上导入所述应用节点的快照信息。
6.如权利要求I所述的方法,其特征在于,在目标服务器上依据应用节点的快照信息部署应用节点的步骤之前,还包括 将所述应用节点的快照信息保存至中央快照存储服务器,并为所述应用节点的快照信息分配版本信息; 从所述中央快照存储服务器获取最新版本的应用节点的快照信息。
7.如权利要求5或6所述的方法,其特征在于,所述应用节点的快照信息以文本文件的格式进行保存。
8.如权利要求3所述的方法,其特征在于,所述依据被修改的软件包信息及其修改内容信息对相应软件包的对应内容进行修改的步骤包括 在所述满足预设条件的软件包中,依据被修改的软件包信息确定相应的软件包; 依据所述修改内容信息,提取所述软件包中的对应内容并进行修改。
9.如权利要求I所述的方法,其特征在于,所述部署操作还包括 依据软件包列表信息删除所述列表之外的已安装软件包。
10.如权利要求3所述的方法,其特征在于,所述应用节点的软件包列表信息还包括软件包名称、软件包版本以及平台架构信息;所述应用节点的快照信息还包括快照信息标识、快照信息形成时间、满足预设条件的软件包数量、不满足预设条件的软件包数量、满足预设条件的软件包信息和不满足预设条件的软件包信息。
11.一种应用节点的批量部署装置,其特征在于,包括 原型机构造模块,用于构造应用节点原型机,所述应用节点原型机中记录有应用节点的软件包列表信息,以及,软件包所含配置文件的修改信息; 快照抓取模块,用于在所述应用节点原型机上,依据所述应用节点的软件包列表信息和软件包所含配置文件的修改信息生成应用节点的快照信息,所述快照信息包括修改后的软件包信息,被修改的软件包信息及其修改内容信息; 应用克隆模块,用于在目标服务器上,依据所述应用节点的快照信息部署应用节点; 所述应用克隆模块包括 安装子模块,用于依据所述修改后的软件包信息安装对应的软件包;以及, 配置修改子模块,用于依据所述被修改的软件包信息及其修改内容信息对相应软件包的对应内容进行修改。
12.如权利要求11所述的装置,其特征在于,所述快照抓取模块包括 修改内容软件包获取子模块,用于依据软件包所含配置文件的修改信息获取当前修改的软件包,并提取软件包中对应的修改内容信息; 目标主机与快照信息软件包补集列表获取子模块,用于依据所述应用节点的软件包列表信息和当前被修改的软件包信息,获得修改后的软件包信息。
13.如权利要求11所述的装置,其特征在于,还包括 软件仓库服务器,用于存储所述软件包; 所述快照抓取模块包括 软件包分类筛选子模块,用于依据所述应用节点的软件包列表信息确定满足预设条件的软件包; 修改软件包确定子模块,用于在所述满足预设条件的软件包中,依据软件包所含配置文件的修改信息确定当前被修改的软件包信息; 软件包获取子模块,用于依据当前被修改的软件包信息从软件仓库服务器中获取对应的软件包; 生成软件包内容修改信息子模块,用于按照所述软件包所含配置文件的修改信息提取所获取软件包中的对应内容,依据该内容生成所述软件包的修改内容信息; 目标主机与快照信息软件包补集列表获取子模块,用于依据所述应用节点的软件包列表信息和当前被修改的软件包信息,获得修改后的软件包信息。
14.如权利要求13所述的装置,其特征在于,所述应用节点的软件包列表信息包括软件包归属性,所述软件包归属性包括操作系统归属性和非操作系统归属性,所述满足预设条件的软件包为所述软件包归属性为非操作系统归属性的软件包。
15.如权利要求11所述的装置,其特征在于,还包括 本地保存模块,用于在应用节点原型机上保存所述应用节点的快照信息; 快照信息配置模块,用于在目标服务器上导入所述应用节点的快照信息。
16.如权利要求11所述的装置,其特征在于,还包括 服务器存储模块,用于将所述应用节点的快照信息保存至中央快照存储服务器,并为所述应用节点的快照信息分配版本信息; 快照信息获取模块,用于从所述中央快照存储服务器获取最新版本的应用节点的快照信息。
17.如权利要求15或16所述的装置,其特征在于,所述应用节点的快照信息以文本文件的格式进行保存。
18.如权利要求13所述的装置,其特征在于,所述配置修改子模块包括 软件包定位单元,用于在所述满足预设条件的软件包中,依据被修改的软件包信息确定相应的软件包; 内容修改单元,用于依据所述修改内容信息,提取所述软件包中的对应内容并进行修改。
19.如权利要求11所述的装置,其特征在于,所述应用克隆模块还包括 删除子模块,用于依据软件包列表信息删除所述列表之外的已安装软件包。
20.如权利要求13所述的装置,其特征在于,所述应用节点的软件包列表信息还包括软件包名称、软件包版本以及平台架构信息;所述应用节点的快照信息还包括快照信息标识、快照信息形成时间、满足预设条件的软件包数量、不满足预设条件的软件包数量、满足预设条件的软件包信息和不满足预设条件的软件包信息。
全文摘要
本申请提供了一种应用节点的批量部署方法及装置,其中,所述方法包括构造应用节点原型机,所述原型机中记录有应用节点的软件包列表信息,以及,软件包所含配置文件的修改信息;在所述原型机上,依据所述软件包列表信息和软件包所含配置文件的修改信息生成应用节点的快照信息,所述快照信息包括修改后的软件包信息,被修改的软件包信息及其修改内容信息;在目标服务器上,依据所述应用节点的快照信息部署应用节点;包括依据修改后的软件包信息安装对应的软件包;以及,依据所述被修改的软件包信息及其修改内容信息对相应软件包的对应内容进行修改。本发明可以简化应用节点批量部署的流程,提高应用节点批量部署的效率,并大幅降低操作风险。
文档编号G06F9/46GK102736946SQ20111008949
公开日2012年10月17日 申请日期2011年4月11日 优先权日2011年4月11日
发明者陆研 申请人:阿里巴巴集团控股有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1