基于自动回滚的临时配置管理系统及方法转让专利

申请号 : CN201610213073.8

文献号 : CN105915372B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 成龙刘太强何跃明

申请人 : 烽火通信科技股份有限公司

摘要 :

本发明公开了一种基于自动回滚的临时配置管理系统及方法,涉及平面配置管理技术领域。该系统的临时配置管理模块创建配置组管理结构;该系统执行临时配置时,临时配置管理模块生成临时配置的管理信息,临时配置存储模块存储管理信息;该系统执行临时配置回滚时,临时配置管理模块在配置组管理结构确定回滚配置及其逆配置,临时配置存储模块存储逆配置;当配置组管理结构中的所有临时配置执行完毕后,临时配置管理模块在配置组管理结构中清空所有临时配置的信息。本发明在临时配置管理时,能够简化存在主观依赖的临时配制的回滚过程,降低临时配置管理的复杂程度;工作量较小,性能较高。

权利要求 :

1.一种基于自动回滚的临时配置管理系统,包括执行模块、临时配置管理模块和临时配置存储模块;其特征在于:所述临时配置管理系统进行临时配置管理时,若存在主观依赖的临时配置,则需要进行:创建配置组管理结构、执行配置组管理结构中的临时配置、临时配置返回错误时进行回滚和删除配置组管理结构;

所述临时配置管理系统创建配置组管理结构时:

执行模块用于:若存在主观依赖的临时配置,向临时配置管理模块发送start;接收临时配置管理模块发送的执行结果;

临时配置管理模块用于:收到执行模块发送的start后,创建配置组管理结构、并向执行模块返回执行结果;配置组管理结构中包括所有存在主观依赖的临时配置信息;

所述临时配置管理系统执行配置组管理结构中的临时配置时:

执行模块用于:执行临时配置,向临时配置管理模块发送当前临时配置;接收临时配置管理模块发送的执行结果;

临时配置管理模块用于:接收执行模块发送的临时配置,生成当前临时配置的管理信息后,向临时配置存储模块发送管理信息存储信号;将临时配置存储模块通知的执行结果返回至执行模块;

临时配置存储模块用于:收到管理信息存储信号后,存储临时配置管理模块生成的管理信息、并向临时配置管理模块通知执行结果;

所述临时配置管理系统执行临时配置返回错误时进行回滚时:

执行模块用于:接收临时配置管理模块发送的执行结果;

临时配置管理模块用于:若当前临时配置发生错误,在配置组管理结构确定所有与当前临时配置存在主观依赖的临时配置,定义所有与当前临时配置存在主观依赖的临时配置为回滚配置;在临时配置存储模块中获取所有回滚配置的管理信息,根据每个管理信息获取对应的逆配置,向临时配置存储模块发送逆配置存储信号;收到临时配置存储模块反馈的存储结果后,向执行模块反馈执行结果;

临时配置存储模块用于:收到逆配置存储信号后,存储临时配置管理模块获取的所有逆配置、并向临时配置管理模块反馈存储结果;

所述临时配置管理系统删除配置组管理结构时:

执行模块用于:当配置组管理结构中的所有临时配置执行完毕后,向临时配置管理模块发送end;接收临时配置管理模块发送的执行结果;

临时配置管理模块用于:收到执行模块发送的end后,在配置组管理结构中清空所有临时配置的信息、并向执行模块返回执行结果。

2.如权利要求1所述的基于自动回滚的临时配置管理系统,其特征在于:所述临时配置管理系统执行临时配置返回错误时进行回滚时,所述临时配置管理模块收到临时配置存储模块反馈的存储结果后,还需要删除所有回滚配置的管理信息。

3.一种用于权利要求1所述系统的基于自动回滚的临时配置管理方法,其特征在于,该方法包括以下步骤:A、指定存在主观依赖的临时配置的配置组管理结构;

B、执行配置组管理结构中的临时配置;临时配置管理模块生成执行每条临时配置的管理信息,临时配置存储模块记录每条临时配置的管理信息;

C、若执行配置组管理结构中的临时配置时返回错误,临时配置管理模块在配置组管理结构中,确定与返回错误的临时配置存在主观依赖的所有回滚配置;在临时配置存储模块中获取所有回滚配置的管理信息,根据每个管理信息获取对应的逆配置;临时配置存储模块所有逆配置后,临时配置管理模块向执行模块反馈执行结果。

4.如权利要求3所述的基于自动回滚的临时配置管理方法,其特征在于,步骤B的具体流程为:执行模块执行临时配置,向临时配置管理模块发送当前临时配置;临时配置管理模块生成当前临时配置的管理信息后,向临时配置存储模块发送管理信息存储信号;临时配置存储模块收到管理信息存储信号后,存储临时配置管理模块生成的管理信息、并向临时配置管理模块通知执行结果;临时配置管理模块将临时配置存储模块通知的执行结果返回至执行模块。

5.如权利要求3或4所述的基于自动回滚的临时配置管理方法,其特征在于:步骤C中所述临时配置存储模块所有逆配置后,还包括以下步骤临时配置管理模块删除所有回滚配置的管理信息。

6.如权利要求3或4所述的基于自动回滚的临时配置管理方法,其特征在于:步骤C之后还包括以下步骤:判断所有配置组管理结构中的临时配置是否执行完毕,若是,结束,否则继续执行步骤B。

说明书 :

基于自动回滚的临时配置管理系统及方法

技术领域

[0001] 本发明涉及平面配置管理技术领域,具体涉及一种基于自动回滚的临时配置管理系统及方法。

背景技术

[0002] 平面配置管理时,一般采用两阶段生效模式(即通过两个阶段的操作过程配置才能生效),两阶段生效模式为:
[0003] 第一阶段:用户输入配置命令,生成临时配置,对于语法或者语义错误的临时配置语句,系统将在终端上显示提示信息,提醒用户配置错误及错误原因。
[0004] 第二阶段:用户提交配置,系统进入配置的提交阶段。系统提交临时配置为正式配置。
[0005] 临时配置就是第一阶段中的配置操作,正式配置是保存的配置操作且重启系统依然能够继续生效。
[0006] 配置回滚是将配置恢复到某个历史配置状态,是一项提高系统配置可靠性、提升运维效率的技术。配置回滚的基本操作单元是逆配置,逆配置与配置是相对的,逆配置的作用是抵消配置产生的效果。比如配置是使能OSPF业务开关,则回滚时需要的逆配置就是去使能OSPF业务开关。
[0007] 两阶段生效模式带来了批量配置生效,给系统带来高吞吐量的同时,给业务部署带来了便利。鉴于此经验,大批量少部署的方式具有更优的性能,更受配置人员和业务开发人员的青睐。
[0008] 批量临时配置中的各条临时配置在执行上是独立的,但逻辑上可能会存在着某些联系;这些联系有些是客观的,比如业务的硬性配置要求;有些是主观的,比如配置人员的特定场景需求。对于客观联系,也许可以通过建立配置间的关联关系来增加逻辑;但是对于主观联系则无法通过建立配置关联来增加逻辑。
[0009] 先将临时配置的主观联系称为临时配置的主观依赖,其依赖关系仅与特定的配置场景有关。主观依赖的各临时配置之间应当保证整体的原子性。
[0010] 例如:若某场景需要部署服务FTP(File Transfer Protocol,文件传输协议),且计划增加安全性考虑;目前有两种方案:1.使用FTP+NAT(Network Address Translation,网络地址转换);2.直接使用SFTP(Secure File Transfer Protocol,完全文件传输协议);且方案1的优先级高。在临时配置执行时,配置FTP+NAT若存在限制等原因发生错误,则此时需要回滚所有的FTP+NAT配置,转而部署SFTP。
[0011] 此时,方案1中的FTP业务和NAT业务之间就存在主观依赖,二者的主观依赖仅存在于当前的特定场景下,其他场景无此依赖。
[0012] 现有的临时配置管理采用以单一配置作为基本的管理单元,当配置失误或者配置错误发生时,配置人员需要构造逆配置、并利用逆配置逐条回滚所有主观依赖的配置(即临时配置回滚)。参见图1所示,现有的临时配置回滚方法使用时,例如有3个临时配置,其中配置2和3存在主观依赖。在二阶段配置生效模式下,配置人员依次执行临时配置1、2、3,当临时配置3返回错误时,需要回滚临时配置3主观依赖的所有配置,也就是临时配置2。
[0013] 由此可知,现有的临时配置管理方法在回滚时,存在以下缺点:
[0014] (1)回滚构造逆配置的工作量较大,用户需要知晓配置之前的状态。
[0015] (2)回滚历史配置状态越远,工作量成倍增长且极易出错。
[0016] 综上所述,现有的临时配置管理方法为业务部署带来方便的同时,给配置人员的管理工作带来了不便,尤其是存在主观依赖的临时配置场景时,不便于人们使用。

发明内容

[0017] 针对现有技术中存在的缺陷,本发明解决的技术问题为:在临时配置管理时,简化存在主观依赖的临时配置的回滚过程,降低临时配置管理的复杂程度。本发明对存在主观依赖的临时配置进行回滚时,无需人工干预,也无需配置人员构造逆配置;工作量较小,性能较高。
[0018] 为达到以上目的,本发明提供的基于自动回滚的临时配置管理系统,包括执行模块、临时配置管理模块和临时配置存储模块;所述临时配置管理系统进行临时配置管理时,若存在主观依赖的临时配置,则需要进行:创建配置组管理结构、执行配置组管理结构中的临时配置、临时配置返回错误时进行回滚和删除配置组管理结构;
[0019] 所述临时配置管理系统创建配置组管理结构时:
[0020] 执行模块用于:若存在主观依赖的临时配置,向临时配置管理模块发送start;接收临时配置管理模块发送的执行结果;
[0021] 临时配置管理模块用于:收到执行模块发送的start后,创建配置组管理结构、并向执行模块返回执行结果;配置组管理结构中包括所有存在主观依赖的临时配置信息;
[0022] 所述临时配置管理系统执行配置组管理结构中的临时配置时:
[0023] 临时配置管理模块用于:生成临时配置的管理信息;
[0024] 临时配置存储模块用于:存储临时配置管理模块生成的管理信息;
[0025] 所述临时配置管理系统执行临时配置返回错误时进行回滚时:
[0026] 执行模块用于:接收临时配置管理模块发送的执行结果;
[0027] 临时配置管理模块用于:若当前临时配置发生错误,在配置组管理结构确定所有与当前临时配置存在主观依赖的临时配置,定义所有与当前临时配置存在主观依赖的临时配置为回滚配置;在临时配置存储模块中获取所有回滚配置的管理信息,根据每个管理信息获取对应的逆配置,向临时配置存储模块发送逆配置存储信号;收到临时配置存储模块反馈的存储结果后,向执行模块反馈执行结果;
[0028] 临时配置存储模块用于:收到逆配置存储信号后,存储临时配置管理模块获取的所有逆配置、并向临时配置管理模块反馈存储结果;
[0029] 所述临时配置管理系统删除配置组管理结构时:
[0030] 执行模块用于:当配置组管理结构中的所有临时配置执行完毕后,向临时配置管理模块发送end;接收临时配置管理模块发送的执行结果;
[0031] 临时配置管理模块用于:收到执行模块发送的end后,在配置组管理结构中清空所有临时配置的信息、并向执行模块返回执行结果。
[0032] 在上述技术方案的基础上,所述临时配置管理系统执行配置组管理结构中的临时配置时:
[0033] 执行模块用于:执行临时配置,向临时配置管理模块发送当前临时配置;接收临时配置管理模块发送的执行结果;
[0034] 临时配置管理模块具体用于:接收执行模块发送的临时配置,生成当前临时配置的管理信息后,向临时配置存储模块发送管理信息存储信号;将临时配置存储模块通知的执行结果返回至执行模块;
[0035] 临时配置存储模块具体用于:收到管理信息存储信号后,存储临时配置管理模块生成的管理信息、并向临时配置管理模块通知执行结果。
[0036] 在上述技术方案的基础上,所述临时配置管理系统执行临时配置返回错误时进行回滚时,所述临时配置管理模块收到临时配置存储模块反馈的存储结果后,还需要删除所有回滚配置的管理信息。
[0037] 本发明提供的用于上述系统的基于自动回滚的临时配置管理方法,该方法包括以下步骤:
[0038] A、指定存在主观依赖的临时配置的配置组管理结构;
[0039] B、执行配置组管理结构中的临时配置;临时配置管理模块生成执行每条临时配置的管理信息,临时配置存储模块记录每条临时配置的管理信息;
[0040] C、若执行配置组管理结构中的临时配置时返回错误,临时配置管理模块在配置组管理结构中,确定与返回错误的临时配置存在主观依赖的所有回滚配置;在临时配置存储模块中获取所有回滚配置的管理信息,根据每个管理信息获取对应的逆配置;临时配置存储模块所有逆配置后,临时配置管理模块向执行模块反馈执行结果。
[0041] 在上述技术方案的基础上,步骤B的具体流程为:执行模块执行临时配置,向临时配置管理模块发送当前临时配置;临时配置管理模块生成当前临时配置的管理信息后,向临时配置存储模块发送管理信息存储信号;临时配置存储模块收到管理信息存储信号后,存储临时配置管理模块生成的管理信息、并向临时配置管理模块通知执行结果;临时配置管理模块将临时配置存储模块通知的执行结果返回至执行模块。
[0042] 在上述技术方案的基础上,步骤C中所述临时配置存储模块所有逆配置后,还包括以下步骤临时配置管理模块删除所有回滚配置的管理信息。
[0043] 在上述技术方案的基础上,步骤C之后还包括以下步骤:判断所有配置组管理结构中的临时配置是否执行完毕,若是,结束,否则继续执行步骤B。
[0044] 与现有技术相比,本发明的优点在于:
[0045] 本发明在现有的临时配置管理方法的基础上,为所有存在主观依赖的临时配置创建配置组管理结构,配置组的粒度介于单条配置和配置块之间,配置组与功能点相对应;本发明执行临时配置时,记录执行每条临时配置的管理信息;当配置组中某条临时配置发生错误时,本发明能够根据配置组和管理信息,自动对与发生错误的临时配置存在主观依赖的所有临时配置进行回滚,无需人工干预,也无需配置人员构造逆配置。
[0046] 例如参见图2所示,配置人员依次执行临时配置1、2、3,临时配置2和3存在主观依赖,当临时配置3返回错误时,本发明根据临时配置2和3的配置组,自动回滚临时2之前的状态。
[0047] 有鉴于此,本发明能够简化临时配置管理的回滚过程,尤其是存在主观依赖的临时配置回滚过程,降低临时配置管理的复杂程度,便于人们使用。
[0048] 参见表1所示,表1通过粒度、工作量和性能对现有和本发明的系统临时配置管理方法进行比较。
[0049] 表1、现有和本发明系统的临时配置管理方法的参数比较表
[0050]参数 现有的临时配置管理方法 本发明的临时配置管理方法
管理/回滚粒度 配置 配置+配置组
单条配置组回滚工作量 无需手动回滚 无需手动回滚
单条配置组回滚时间性能 无需交互 无需交互
单条配置组回滚空间性能 无空间变化 无空间变化
批量配置组回滚工作量 构造N条逆配置 无需手动回滚
批量配置组回滚时间性能 N次交互 无需交互
批量配置组回滚空间性能 增加N条临时配置 减小N条临时配置
[0051] 通过表1可得出结论:本发明在临时配置管理时,在执行单条临时配置和回滚时,工作量和性能与现有的临时配置管理方法相同,但是本发明在执行批量临时配置和回滚时,无需构造拟配置,也无需交互,还能够减小临时配置的条数。因此,本发明在在执行批量临时配置(存在主观依赖)和回滚时,工作量较小,性能较高,解决了现有的临时配置管理方法中临时配置管理比较复杂的技术问题。

附图说明

[0052] 图1为现有的临时配置回滚方法的流程示意图;
[0053] 图2为本发明进行临时配置回滚时的流程示意图;
[0054] 图3为本发明实施例中基于自动回滚的临时配置管理系统的工作流程图;
[0055] 图4为本发明实施例中配置组的结构图;
[0056] 图5为本发明实施例中start和end创建位置的示意图;
[0057] 图6为本发明实施例中基于自动回滚的临时配置管理方法的流程图。

具体实施方式

[0058] 以下结合附图及实施例对本发明作进一步详细说明。
[0059] 参见图3所示,本发明实施例中的基于自动回滚的临时配置管理系统,包括执行模块(即命令行)、临时配置管理模块和临时配置存储模块。
[0060] 临时配置管理系统进行临时配置管理时,若存在主观依赖的临时配置,则需要依次进行以下流程:创建配置组管理结构、执行配置组管理结构中的临时配置、临时配置返回错误时进行回滚、删除配置组管理结构。
[0061] 一、创建配置组管理结构时:
[0062] 执行模块用于:
[0063] 1、若存在主观依赖的临时配置,向临时配置管理模块发送配置组创建开始边界start。
[0064] 2、接收临时配置管理模块发送的执行结果。
[0065] 临时配置管理模块用于:收到执行模块发送的start后,创建配置组管理结构、并向执行模块返回执行结果。
[0066] 参见图4所示,配置组管理结构中包括所有存在主观依赖的临时配置信息(配置人员借助配置组,可以由配置管理保证主观依赖的原子性,主观依赖中有配置项错误时自动回滚依赖的所有配置,不再需要人工干预)。
[0067] 二、执行配置组管理结构中的临时配置时:
[0068] 执行模块用于:
[0069] 1、执行临时配置,向临时配置管理模块发送当前临时配置。
[0070] 2、接收临时配置管理模块发送的执行结果。
[0071] 临时配置管理模块用于:
[0072] 1、接收执行模块发送的临时配置,生成当前临时配置的管理信息后,向临时配置存储模块发送管理信息存储信号。
[0073] 2、将临时配置存储模块通知的执行结果返回至执行模块。
[0074] 临时配置存储模块用于:收到管理信息存储信号后,存储临时配置管理模块生成的管理信息、并向临时配置管理模块通知执行结果。
[0075] 三、临时配置返回错误时进行回滚时:
[0076] 执行模块用于:接收临时配置管理模块发送的执行结果。
[0077] 临时配置管理模块用于:
[0078] 1、若当前临时配置发生错误,在配置组管理结构确定所有回滚配置(即所有与当前临时配置存在主观依赖的临时配置)。
[0079] 2、在临时配置存储模块中获取所有回滚配置的管理信息,根据每个管理信息获取对应的逆配置,向临时配置存储模块发送逆配置存储信号。
[0080] 3、收到临时配置存储模块反馈的存储结果后,删除所有回滚配置的管理信息、并向执行模块反馈执行结果。
[0081] 临时配置存储模块用于:收到逆配置存储信号后,存储临时配置管理模块获取的所有逆配置(相当于临时配置的回滚操作)、并向临时配置管理模块反馈存储结果。
[0082] 四、删除配置组管理结构时:
[0083] 执行模块用于:
[0084] 1、当配置组管理结构中的所有临时配置执行完毕后,向临时配置管理模块发送配置组结束边界end。
[0085] 参见图5所示,配置组在使用时需要指定明确的边界start和end,配置管理根据此来识别配置组来保证主观依赖配置的原子性;若配置组仅有一条配置组成,则无需划分为配置组也无需指定边界,因为配置错误时无配置需回滚,当然强行划分也是允许的。
[0086] 2、接收临时配置管理模块发送的执行结果。
[0087] 临时配置管理模块用于:收到执行模块发送的end后,在配置组管理结构中清空所有临时配置的信息、并向执行模块返回执行结果。
[0088] 参见图6所示,本发明实施例中用于上述系统的基于自动回滚的临时配置管理方法,包括以下步骤:
[0089] S1:配置人员选择二阶段配置生效模式,转到S2。
[0090] S2:配置人员指定存在主观依赖的临时配置的配置组管理结构,转到S3。
[0091] S3:配置人员执行配置组管理结构中的临时配置,临时配置管理模块生成执行每条临时配置的管理信息,临时配置存储模块记录每条临时配置的管理信息,转到S3。
[0092] S4:当执行配置组管理结构中的临时配置时,若临时配置返回错误,转到S5。
[0093] S5:临时配置管理模块在配置组管理结构中,确定与返回错误的临时配置存在主观依赖的所有回滚配置;定义返回错误的临时配置为B,与临时配置B存在主观依赖的回滚配置为1个,回滚配置A。在临时配置存储模块中获取回滚配置A的管理信息,根据回滚配置A的管理信息获取对应的逆配置;临时配置存储模块存储回滚配置A的逆配置后(相当于回滚配置A的回滚操作),临时配置管理模块删除回滚配置A的管理信息、并向执行模块反馈执行结果,转到S6。
[0094] S6:判断所有配置组管理结构中的临时配置是否执行完毕,若是,结束,否则继续执行S3。
[0095] 本发明不局限于上述实施方式,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围之内。本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。