CN112532415B - 一种配置变更的方法及相关装置 - Google Patents
一种配置变更的方法及相关装置 Download PDFInfo
- Publication number
- CN112532415B CN112532415B CN201911252740.3A CN201911252740A CN112532415B CN 112532415 B CN112532415 B CN 112532415B CN 201911252740 A CN201911252740 A CN 201911252740A CN 112532415 B CN112532415 B CN 112532415B
- Authority
- CN
- China
- Prior art keywords
- configuration
- server
- information
- patch
- change
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 230000008859 change Effects 0.000 title claims abstract description 371
- 238000000034 method Methods 0.000 title claims description 159
- 230000004044 response Effects 0.000 claims description 88
- 238000012545 processing Methods 0.000 claims description 62
- 230000037430 deletion Effects 0.000 claims description 58
- 238000012217 deletion Methods 0.000 claims description 58
- 238000012508 change request Methods 0.000 claims description 55
- 238000005096 rolling process Methods 0.000 claims description 6
- 230000008569 process Effects 0.000 description 51
- 238000010586 diagram Methods 0.000 description 18
- 230000004048 modification Effects 0.000 description 10
- 238000012986 modification Methods 0.000 description 10
- 239000000284 extract Substances 0.000 description 7
- 230000010365 information processing Effects 0.000 description 7
- 238000004891 communication Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Stored Programmes (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请公开一种配置变更的方法及相关装置,当客户端需要对服务器数据库进行配置变更时,服务器数据库可先接收来自服务器代理的配置信息,并通过比对接收到的配置信息和本地配置信息,从接收到的配置信息所指向的目标对象中,确定出需要进行配置变更的配置对象。然后,服务器数据库可根据配置对象对应的配置操作和配置对象的新数据构造再配置补丁报文,并将再配置补丁报文返回至服务器代理后再执行配置变更,由于该再配置补丁报文所包含了配置对象所对应的配置操作和配置对象的新数据,服务器可基于该再配置补丁报文向客户端指示服务器数据库的配置变更情况,不再需保存所有目标对象变更前的数据,可节省服务器的存储空间,有效利用存储资源。
Description
本申请为2019年09月19日提交中国专利局、申请号为201910888312.3、发明名称为“一种配置变更的方法及相关装置”的中国专利申请的分案申请。
技术领域
本申请涉及计算机技术领域,尤其涉及一种配置变更的方法及相关装置。
背景技术
网络配置协议(network configuration protocol,NETCONF)是一种基于可扩展标记语言(extensive markup language,XML)的网络管理协议,它提供了对网络设备进行配置和管理的方法。
当需要对网络设备的配置进行变更操作时,可以通过NETCONF客户端向网络设备上的NETCONF服务器发送一个配置信息,NETCONF服务器内的数据库可根据该配置信息对各个目标对象进行配置变更,执行完变更后NETCONF服务器通常会将通知NETCONF客户端配置变更完成。NETCONF客户端为了确定目标对象的配置变更情况,通常需要先后从NETCONF服务器中获取变更前所有目标对象的配置数据和变更后所有目标对象的配置数据,然后将两种配置数据进行比对,进而确定NETCONF服务器中哪些目标对象的配置发生了变化。
上述配置变更的过程中,为了令NETCONF客户端可以获取目标对象的配置变更情况,NETCONF服务器的数据库需要在完成配置变更操作后,同时存储变更前的配置数据和变更后的配置数据,占用了较大的存储空间。
发明内容
本申请实施例提供了一种配置变更的方法,可节省服务器的存储空间,有效利用存储资源。
本申请实施例第一方面提供了一种配置变更的方法,包括:
服务器数据库接收来自服务器代理的配置信息,配置信息包括目标对象,对应目标对象的配置操作,以及用于指示需要获取再配置补丁报文的补丁信息;
服务器数据库根据接收的配置信息以及本地配置信息从目标对象中确定出需要进行配置变更的配置对象;
服务器数据库保存配置对象在配置信息中对应的配置操作和配置对象的新数据,并根据保存的配置对象对应的配置操作和配置对象的新数据构造再配置补丁报文;
服务器数据库将再配置补丁报文发送给服务器代理;
服务器数据库接收来自服务器代理的变更请求,变更请求用于指示服务器数据库执行配置变更;
服务器数据库根据保存的配置对象对应的配置操作执行配置变更。
从上述配置变更的方法中,可以看出:服务器数据库所构造的再配置补丁报文所包含了配置对象所对应的配置操作和配置对象的新数据,因此,服务器基于该再配置补丁报文可以确定服务器数据库的配置变更情况,不需要存储所有目标节点变更前的配置数据,可节省服务器的存储空间,有效利用存储资源。
在第一方面的一种可能的实施方式中,服务器数据库将再配置补丁报文发送给服务器代理之后,还包括:
服务器数据库接收来自服务器代理的删除请求;
服务器数据库根据删除请求删除保存的配置对象对应的配置操作和配置对象的新数据。
上述实施方式中,在服务器数据库向服务器代理发送再配置补丁报文后,若接收到来自服务器代理的删除请求,则删除保存的配置对象对应的配置操作和配置对象的新数据。当目标应用不接受服务器数据库即将发生的配置变更情况时,服务器代理可通知服务器数据库拒绝进行配置变更,即删除保存的配置对象对应的配置操作和配置对象的新数据,不执行配置变更,使得服务器数据库维持原始状态。
在第一方面的一种可能的实施方式中,再配置补丁报文采用树形结构,其中,所有配置对象的新数据,以及所有配置对象对应的配置操作以树形结构呈现。
上述实施方式中,再配置补丁报文可采用树形结构的方式存储配置对象的相关信息,提高了方案的灵活度和可选择性。
在第一方面的一种可能的实施方式中,再配置补丁报文采用条目记录,其中,一个条目包括一个配置对象的新数据,以及一个配置对象对应的配置操作或一个条目包括对一个配置对象执行的配置操作。
上述实施方式中,再配置补丁报文可采用条目记录的方式存储配置对象的相关信息,提高了方案的灵活度和可选择性。
本申请实施例第二方面提供了一种配置变更的方法,包括:
服务器代理接收来自客户端的配置请求,并根据配置请求生成配置信息发送给服务器数据库,配置信息包括目标对象,对应目标对象的配置操作,以及用于指示需要获取再配置补丁报文的补丁信息;
服务器代理接收来自服务器数据库的再配置补丁报文,再配置补丁报文为服务器数据库根据配置信息从目标对象中确定需要进行配置变更的配置对象后构造的,再配置补丁报文包括配置对象在配置信息中对应的配置操作和配置对象的新数据;
服务器代理从再配置补丁报文中获取配置变更信息,配置变更信息包括配置对象对应的配置操作;
服务器代理将配置变更信息发送至目标应用,目标应用为订阅配置变更信息的应用;
若服务器代理接收来自目标应用的第一应答信息,第一应答信息用于指示目标应用接受配置对象对应的配置操作;
服务器代理发送变更请求至服务器数据库,变更请求用于指示服务器数据库执行配置变更。
从上述配置变更的方法中,可以看出:服务器数据库进行配置变更前,可构造再配置补丁报文并发送至服务器代理,由于该再配置补丁报文所包含了配置对象所对应的配置操作和配置对象的新数据,因此,服务器基于该再配置补丁报文可以确定服务器数据库的配置变更情况,不需要存储所有目标节点变更前的配置数据,可节省服务器的存储空间,有效利用存储资源。
在第二方面的一种可能的实施方式中,若配置请求包括用于指示需要获取再配置补丁报文的补丁信息,则服务器代理接收来自目标应用的第一应答信息之后,还包括:
服务器代理将再配置补丁报文发送至客户端。
上述实施方式中,在客户端向服务器代理下发的配置请求中,包含了用于指示需要获取再配置补丁报文的补丁信息,由于服务器代理已经具有服务器数据库返回的再配置补丁报文,则可直接将该再配置补丁报文发送至客户端。服务器通过该补丁报文可直接通知客户端关于服务器数据库的配置变更情况,可以有效减轻客户端的逻辑分析压力。
更进一步地,客户端还可以通过该再配置补丁报文对其余服务器进行相同的配置变更,客户端基于该再配置变更报文所生成的配置请求,仅包含配置对象的相关信息,不包含有其他非配置对象的相关信息,可有效避免信息冗余,降低服务器的信息处理压力。
在第二方面的一种可能的实施方式中,若配置请求包括用于指示需要获取变更补丁报文的补丁信息,则服务器代理接收来自目标应用的第一应答信息之后,还包括:
服务器代理根据配置对象对应的配置操作构造变更补丁报文;
服务器代理将变更补丁报文发送至客户端。
上述实施方式中,上述实施方式中,在客户端向服务器代理下发的配置请求中,包含了用于指示需要获取变更补丁报文的补丁信息,故服务器代理可根据对配置对象执行的配置操作构造变更补丁报文,并发送至客户端。服务器通过变更补丁报文可直接通知客户端关于服务器数据库的配置变更情况,因此,客户端不需再获取并比对变更前后的配置数据从而得到服务器数据库的配置变更情况,可以有效减轻客户端的逻辑分析压力。
在第二方面的一种可能的实施方式中,服务器代理将配置变更信息发送至目标应用之后,还包括:
若服务器代理接收来自目标应用的第二应答信息,第二应答信息用于指示目标应用不接受对配置对象对应的配置操作;
服务器代理发送删除请求至服务器数据库,删除请求用于指示服务器数据库删除保存的配置对象对应的配置操作和配置对象的新数据;
服务器代理将第二应答信息发送至客户端。
上述实施方式中,当服务器确定目标应用不接受配置数据集即将发生的配置变更情况后,服务器可自主拒绝执行配置变更操作,维持配置数据集的原始状态,提高了方案的灵活度。
本申请第三方面提供了一种配置变更的方法,包括:
服务器接收来自客户端的配置请求,并根据配置请求生成配置信息,配置信息包括目标对象,对应目标对象的配置操作,以及用于指示需要获取再配置补丁报文的补丁信息;
服务器根据配置信息以及本地配置信息从目标对象中确定出需要进行配置变更的配置对象;
服务器保存配置对象在配置信息中对应的配置操作和配置对象的新数据,并根据保存的配置对象对应的配置操作和配置对象的新数据构造再配置补丁报文;
服务器从再配置补丁报文中获取配置变更信息,配置变更信息包括配置对象对应的配置操作;
服务器将配置变更信息发送至目标应用,目标应用为订阅配置变更信息的应用;
若服务器接收来自目标应用的第一应答信息,第一应答信息用于指示目标应用接受配置对象对应的配置操作;
服务器根据保存的配置对象对应的配置操作执行配置变更。
从上述配置变更的方法中,可以看出:服务器所构造的再配置补丁报文所包含了配置对象所对应的配置操作和配置对象的新数据,因此,服务器基于该再配置补丁报文可以确定服务器数据库的配置变更情况,不需要存储所有目标节点变更前的配置数据,可节省服务器的存储空间,有效利用存储资源。
在第三方面的一种可能的实施方式中,若配置请求包括用于指示需要获取再配置补丁报文的补丁信息,则服务器接收来自目标应用的第一应答信息之后,还包括:
服务器将再配置补丁报文发送至客户端。
上述实施方式中,在客户端向服务器下发的配置请求中,包含了用于指示需要获取再配置补丁报文的补丁信息,由于服务器已经具有服务器数据库返回的再配置补丁报文,则可直接将该再配置补丁报文发送至客户端。服务器通过该补丁报文可直接通知客户端关于服务器数据库的配置变更情况,可以有效减轻客户端的逻辑分析压力。
在第三方面的一种可能的实施方式中,若配置请求包括用于指示需要获取变更补丁报文的补丁信息,则服务器接收来自目标应用的第一应答信息之后,还包括:
服务器根据配置对象对应的配置操作构造变更补丁报文;
服务器将变更补丁报文发送至客户端。
上述实施方式中,上述实施方式中,在客户端向服务器下发的配置请求中,包含了用于指示需要获取变更补丁报文的补丁信息,故服务器可根据对配置对象执行的配置操作构造变更补丁报文,并发送至客户端。服务器通过变更补丁报文可直接通知客户端关于服务器数据库的配置变更情况,因此,客户端不需再获取并比对变更前后的配置数据从而得到服务器数据库的配置变更情况,可以有效减轻客户端的逻辑分析压力。
在第三方面的一种可能的实施方式中,服务器将配置变更信息发送至目标应用之后,还包括:
若服务器接收来自目标应用的第二应答信息,第二应答信息用于指示目标应用不接受对配置对象对应的配置操作;
服务器删除保存的配置对象对应的配置操作和配置对象的新数据;
服务器将第二应答信息发送至客户端。
上述实施方式中,当服务器确定目标应用不接受配置数据集即将发生的配置变更情况后,服务器可自主拒绝执行配置变更操作,维持配置数据集的原始状态,提高了方案的灵活度。
在第三方面的一种可能的实施方式中,再配置补丁报文用于指示客户端对其余服务器进行配置变更。
上述实施方式中,客户端还可以通过该再配置补丁报文对其余服务器进行相同的配置变更,客户端基于该再配置变更报文所生成的配置请求,仅包含配置对象的相关信息,不包含有其他非配置对象的相关信息,可有效避免信息冗余,降低服务器的信息处理压力。
本申请实施例第四方面还提供了一种配置变更的方法,包括:
服务器数据库接收来自服务器代理的配置信息,配置信息包括目标对象,对应目标对象的配置操作,以及用于指示需要获取回滚补丁报文的补丁信息;
服务器数据库根据接收的配置信息以及本地配置信息从目标对象中确定出需要进行配置变更的配置对象;
服务器数据库保存配置对象的新数据、配置对象在配置信息中对应的配置操作、配置对象的旧数据以及配置对象在配置信息中对应的配置操作的逆操作;
服务器数据库根据保存的配置对象的旧数据和配置对象对应的配置操作的逆操作构造回滚补丁报文;
服务器数据库将回滚补丁报文发送至服务器代理;
服务器数据库接收来自服务器代理的变更请求,变更请求用于指示服务器数据库执行配置变更;
服务器数据库根据保存的配置对象对应的配置操作执行配置变更。
在第四方面的一种可能的实施方式中,服务器数据库根据保存的配置对象对应的配置操作执行配置变更之后,还包括:
服务器数据库根据保存的配置对象的新数据和配置对象对应的配置操作构造再配置补丁报文;
服务器数据删除保存的配置对象的新数据和配置对象对应的配置操作;
服务器数据库将再配置补丁报文发送服务器代理。
上述实现方式中,服务器数据库所构造的再配置补丁报文所包含了配置对象所对应的配置操作和配置对象的新数据,因此,服务器基于该再配置补丁报文可以确定服务器数据库的配置变更情况,不需要存储所有目标节点变更前的配置数据,可节省服务器的存储空间,有效利用存储资源。
更进一步地,客户端还可以通过该再配置补丁报文对其余服务器进行相同的配置变更,客户端基于该再配置变更报文所生成的配置请求,仅包含配置对象的相关信息,不包含有其他非配置对象的相关信息,可有效避免信息冗余,降低服务器的信息处理压力。
在第四方面的一种可能的实施方式中,服务器数据库根据保存的配置对象的旧数据和配置对象对应的配置操作的逆操作构造回滚补丁报文之后,服务器数据库将回滚补丁报文发送至服务器代理之前,还包括:
服务器数据库删除保存的配置对象的旧数据和配置对象对应的配置操作的逆操作。
上述实施方式中,服务器数据库在构造回滚补丁报文后,可删除保存的配置对象的旧数据和配置对象在配置信息中对应的配置操作的逆操作,能够有效节省服务器数据库的存储空间。
在第四方面的一种可能的实施方式中,服务器数据库将回滚补丁报文发送至服务器代理之后,还包括:
服务器数据库接收来自服务器代理的删除请求;
服务器数据库根据删除请求删除保存的配置对象对应的配置操作和配置对象的新数据。
上述实施方式中,在服务器数据库向服务器代理发送再配置补丁报文后,若接收到来自服务器代理的删除请求,则删除保存的配置对象对应的配置操作和配置对象的新数据。当目标应用不接受服务器数据库即将发生的配置变更情况时,服务器代理可通知服务器数据库拒绝进行配置变更,即删除保存的配置对象对应的配置操作和配置对象的新数据,不执行配置变更,使得服务器数据库维持原始状态。
在第四方面的一种可能的实施方式中,回滚补丁报文采用树形结构,其中,所有配置对象的旧数据,以及所有配置对象对应的配置操作的逆操作以树形结构呈现。
上述实施方式中,回滚补丁报文可采用树形结构的方式存储配置对象的相关信息,提高了方案的灵活度和可选择性。
在第四方面的一种可能的实施方式中,回滚补丁报文采用条目记录,其中,一个条目包括一个配置对象的旧数据,以及一个配置对象对应的配置操作的逆操作或一个条目包括一个配置对象对应的配置操作的逆操作。
上述实施方式中,回滚补丁报文可采用条目记录的方式存储配置对象的相关信息,提高了方案的灵活度和可选择性。
在第四方面的一种可能的实施方式中,再配置补丁报文采用树形结构,其中,所有配置对象的新数据,以及所有配置对象对应的配置操作以树形结构呈现。
上述实施方式中,再配置补丁报文可采用树形结构的方式存储配置对象的相关信息,提高了方案的灵活度和可选择性。
在第四方面的一种可能的实施方式中,再配置补丁报文采用条目记录,其中,一个条目包括一个配置对象的新数据,以及一个配置对象对应的配置操作或一个条目包括一个配置对象对应的配置操作。
上述实施方式中,再配置补丁报文可采用条目记录的方式存储配置对象的相关信息,提高了方案的灵活度和可选择性。
本申请实施例第五方面提供了一种配置变更的方法,包括:
服务器代理接收来自客户端的配置请求,并根据配置请求生成配置信息发送给服务器数据库,配置信息包括目标对象,对应目标对象的配置操作,以及用于指示需要获取回滚补丁报文的补丁信息;
服务器代理接收来自服务器数据库的回滚补丁报文,回滚补丁报文为服务器数据库根据配置信息从目标对象中确定需要进行配置变更的配置对象后构造的,回滚补丁报文包括配置对象在配置信息中对应的配置操作的逆操作和配置对象的旧数据;
服务器代理对回滚补丁报文进行逆解析,得到配置变更信息,配置变更信息包括对配置对象执行的配置操作;
服务器代理将配置变更信息发送至目标应用,目标应用为订阅配置变更信息的应用;
若服务器代理接收来自目标业务的第一应答信息,第一应答信息用于指示目标业务接受配置对象对应的配置操作;
服务器代理发送变更请求至服务器数据库,变更请求用于指示服务器数据库执行配置变更。
在第五方面的一种可能的实施方式中,配置请求包括用于指示需要获取再配置补丁报文的补丁信息,服务器代理发送变更请求至服务器数据库之后,还包括:服务器代理接收来自服务器数据库的再配置补丁报文,再配置补丁报文包括配置对象的新数据和配置对象在配置信息中对应的配置操作;
服务器代理发送再配置补丁报文至客户端。
上述实现方式中,服务器数据库所构造的再配置补丁报文所包含了配置对象所对应的配置操作和配置对象的新数据,因此,服务器基于该再配置补丁报文可以确定服务器数据库的配置变更情况,不需要存储所有目标节点变更前的配置数据,可节省服务器的存储空间,有效利用存储资源。
更进一步地,客户端还可以通过该再配置补丁报文对其余服务器进行相同的配置变更,客户端基于该再配置变更报文所生成的配置请求,仅包含配置对象的相关信息,不包含有其他非配置对象的相关信息,可有效避免信息冗余,降低服务器的信息处理压力。
在第五方面的一种可能的实施方式中,服务器代理将配置变更信息发送至目标应用之后,还包括:
若服务器代理接收来自目标应用的第二应答信息,第二应答信息用于指示目标应用不接受对配置对象对应的配置操作;
服务器代理发送删除请求至服务器数据库,删除请求用于指示服务器数据库删除保存的配置对象对应的配置操作和配置对象的新数据;
服务器代理将第二应答信息发送至客户端。
上述实现方式中,当服务器确定目标应用不接受配置数据集即将发生的配置变更情况后,服务器可自主拒绝执行配置变更操作,维持配置数据集的原始状态,提高了方案的灵活度。
本申请第六方面提供了一种配置变更的方法,包括:
服务器接收来自客户端的配置请求,并根据配置请求生成配置信息,配置信息包括目标对象,对应目标对象的配置操作,以及用于指示需要获取回滚补丁报文的补丁信息;
服务器根据配置信息以及本地配置信息从目标对象中确定出需要进行配置变更的配置对象;
服务器保存配置对象的新数据、配置对象在配置信息中对应的配置操作、配置对象的旧数据以及配置对象在配置信息中对应的配置操作的逆操作;
服务器根据保存的配置对象的旧数据和配置对象对应的配置操作的逆操作构造回滚补丁报文;
服务器对回滚补丁报文进行逆解析,得到配置变更信息,配置变更信息包括对配置对象执行的配置操作;
服务器将配置变更信息发送至目标应用,目标应用为订阅配置变更信息的应用;
若服务器接收来自目标业务的第一应答信息,第一应答信息用于指示目标业务接受配置对象对应的配置操作;
服务器根据保存的配置对象对应的配置操作执行配置变更。
在第六方面的一种可能的实施方式中,配置请求包括用于指示需要获取再配置补丁报文的补丁信息,服务器根据保存的配置对象对应的配置操作执行配置变更之后,还包括:
服务器根据保存的配置对象的新数据和配置对象在配置信息中对应的配置操作构造再配置补丁报文。
服务器发送再配置补丁报文至客户端。
上述实现方式中,服务器所构造的再配置补丁报文所包含了配置对象所对应的配置操作和配置对象的新数据,因此,服务器基于该再配置补丁报文可以确定服务器数据库的配置变更情况,不需要存储所有目标节点变更前的配置数据,可节省服务器的存储空间,有效利用存储资源。
更进一步地,客户端还可以通过该再配置补丁报文对其余服务器进行相同的配置变更,客户端基于该再配置变更报文所生成的配置请求,仅包含配置对象的相关信息,不包含有其他非配置对象的相关信息,可有效避免信息冗余,降低服务器的信息处理压力。
在第六方面的一种可能的实施方式中,服务器根据保存的配置对象的旧数据和配置对象对应的配置操作的逆操作构造回滚补丁报文之后,还包括:
服务器删除保存的配置对象的旧数据和配置对象对应的配置操作的逆操作。
上述实施方式中,服务器在构造回滚补丁报文后,可删除保存的配置对象的旧数据和配置对象在配置信息中对应的配置操作的逆操作,能够有效节省服务器数据库的存储空间。
在第六方面的一种可能的实施方式中,服务器将配置变更信息发送至目标应用之后,还包括:
若服务器接收来自目标应用的第二应答信息,第二应答信息用于指示目标应用不接受对配置对象对应的配置操作;
服务器删除保存的配置对象对应的配置操作和配置对象的新数据;
服务器将第二应答信息发送至客户端。
上述实现方式中,当服务器确定目标应用不接受配置数据集即将发生的配置变更情况后,服务器可自主拒绝执行配置变更操作,维持配置数据集的原始状态,提高了方案的灵活度。
本申请实施例第七方面提供了一种服务器数据库,包括:
接收模块,用于接收来自服务器代理的配置信息,配置信息包括目标对象,对应目标对象的配置操作,以及用于指示需要获取再配置补丁报文的补丁信息;
处理模块,用于根据接收的配置信息以及本地配置信息从目标对象中确定出需要进行配置变更的配置对象;
处理模块,还用于保存配置对象在配置信息中对应的配置操作和配置对象的新数据,并根据保存的配置对象对应的配置操作和配置对象的新数据构造再配置补丁报文;
发送模块,用于将再配置补丁报文发送给服务器代理;
接收模块,还用于接收来自服务器代理的变更请求,变更请求用于指示服务器数据库执行配置变更;
处理模块,还用于根据保存的配置对象对应的配置操作执行配置变更。
在第七方面的一种可能的实施方式中,接收模块,还用于接收来自服务器代理的删除请求;
处理模块,还用于根据删除请求删除保存的配置对象对应的配置操作和配置对象的新数据。
在第七方面的一种可能的实施方式中,再配置补丁报文采用树形结构,其中,所有配置对象的新数据,以及所有配置对象对应的配置操作以树形结构呈现。
在第七方面的一种可能的实施方式中,再配置补丁报文采用条目记录,其中,一个条目包括一个配置对象的新数据,以及一个配置对象对应的配置操作或一个条目包括对一个配置对象执行的配置操作。
本申请实施例第八方面提供了一种服务器代理,包括:
第一接收模块,用于接收来自客户端的配置请求;
处理模块,用于根据配置请求生成配置信息;
发送模块,用于将配置信息发送给服务器数据库,配置信息包括目标对象,对应目标对象的配置操作,以及用于指示需要获取再配置补丁报文的补丁信息;
第二接收模块,用于接收来自服务器数据库的再配置补丁报文,再配置补丁报文为服务器数据库根据配置信息从目标对象中确定需要进行配置变更的配置对象后构造的,再配置补丁报文包括配置对象在配置信息中对应的配置操作和配置对象的新数据;
处理模块,还用于从再配置补丁报文中获取配置变更信息,配置变更信息包括配置对象对应的配置操作;
发送模块,还用于将配置变更信息发送至目标应用,目标应用为订阅配置变更信息的应用;
第二接收模块,还用于若接收来自目标应用的第一应答信息,第一应答信息用于指示目标应用接受配置对象对应的配置操作;
发送模块,还用于发送变更请求至服务器数据库,变更请求用于指示服务器数据库执行配置变更。
在第八方面的一种可能的实施方式中,若配置请求包括用于指示需要获取再配置补丁报文的补丁信息,则发送模块,还用于将再配置补丁报文发送至客户端。
在第八方面的一种可能的实施方式中,若配置请求包括用于指示需要获取变更补丁报文的补丁信息,则处理模块,还用于根据配置对象对应的配置操作构造变更补丁报文;
发送模块,还用于将变更补丁报文发送至客户端。
在第八方面的一种可能的实施方式中,第二接收模块,还用于若接收来自目标应用的第二应答信息,第二应答信息用于指示目标应用不接受对配置对象对应的配置操作;
发送模块,还用于发送删除请求至服务器数据库,删除请求用于指示服务器数据库删除保存的配置对象对应的配置操作和配置对象的新数据;
发送模块,还用于将第二应答信息发送至客户端。
本申请实施例第九方面还提供了一种服务器,包括如第七方面所述的服务器数据库和如第八方面所述的服务器代理。
从再配置补丁报文中获取配置变更信息,配置变更信息包括配置对象对应的配置操作将配置变更信息发送至目标应用本申请实施例第十方面提供了一种服务器数据库,包括:
接收模块,用于接收来自服务器代理的配置信息,配置信息包括目标对象,对应目标对象的配置操作,以及用于指示需要获取回滚补丁报文的补丁信息;
处理模块,用于根据接收的配置信息以及本地配置信息从目标对象中确定出需要进行配置变更的配置对象;
处理模块,还用于保存配置对象的新数据、配置对象在配置信息中对应的配置操作、配置对象的旧数据以及配置对象在配置信息中对应的配置操作的逆操作;
处理模块,还用于根据保存的配置对象的旧数据和配置对象对应的配置操作的逆操作构造回滚补丁报文;
发送模块,用于将回滚补丁报文发送至服务器代理;
接收模块,还用于接收来自服务器代理的变更请求,变更请求用于指示服务器数据库执行配置变更;
处理模块,还用于根据保存的配置对象对应的配置操作执行配置变更。
在第十方面的一种可能的实施方式中,处理模块,还用于根据保存的配置对象的新数据和配置对象对应的配置操作构造再配置补丁报文;
处理模块,还用于删除保存的配置对象的新数据和配置对象对应的配置操作;
发送模块,还用于将再配置补丁报文发送服务器代理。
在第十方面的一种可能的实施方式中,处理模块,还用于删除保存的配置对象的旧数据和配置对象对应的配置操作的逆操作。
在第十方面的一种可能的实施方式中,接收模块,还用于接收来自服务器代理的删除请求;
处理模块,还用于根据删除请求删除保存的配置对象对应的配置操作和配置对象的新数据。
在第十方面的一种可能的实施方式中,回滚补丁报文采用树形结构,其中,所有配置对象的旧数据,以及所有配置对象对应的配置操作的逆操作以树形结构呈现。
在第十方面的一种可能的实施方式中,回滚补丁报文采用条目记录,其中,一个条目包括一个配置对象的旧数据,以及一个配置对象对应的配置操作的逆操作或一个条目包括一个配置对象对应的配置操作的逆操作。
在第十方面的一种可能的实施方式中,再配置补丁报文采用树形结构,其中,所有配置对象的新数据,以及所有配置对象对应的配置操作以树形结构呈现。
在第十方面的一种可能的实施方式中,再配置补丁报文采用条目记录,其中,一个条目包括一个配置对象的新数据,以及一个配置对象对应的配置操作或一个条目包括一个配置对象对应的配置操作。
本申请实施例第十一方面还提供了一种服务器代理,包括:
第一接收模块,用于接收来自客户端的配置请求;
处理模块,用于根据配置请求生成配置信息;
发送模块,用于将配置信息发送给服务器数据库,配置信息包括目标对象,对应目标对象的配置操作,以及用于指示需要获取回滚补丁报文的补丁信息;
第二接收模块,用于接收来自服务器数据库的回滚补丁报文,回滚补丁报文为服务器数据库根据配置信息从目标对象中确定需要进行配置变更的配置对象后构造的,回滚补丁报文包括配置对象在配置信息中对应的配置操作的逆操作和配置对象的旧数据;
处理模块,还用于对回滚补丁报文进行逆解析,得到配置变更信息,配置变更信息包括对配置对象执行的配置操作;
发送模块,还用于将配置变更信息发送至目标应用,目标应用为订阅配置变更信息的应用;
第二接收模块,还用于若接收来自目标业务的第一应答信息,第一应答信息用于指示目标业务接受配置对象对应的配置操作;
发送模块,还用于发送变更请求至服务器数据库,变更请求用于指示服务器数据库执行配置变更。
在第十一方面的一种可能的实施方式中,配置请求包括用于指示需要获取再配置补丁报文的补丁信息,所述服务器代理,还包括:
第二接收模块,还用于接收来自服务器数据库的再配置补丁报文,再配置补丁报文包括配置对象的新数据和配置对象在配置信息中对应的配置操作;
发送模块,还用于发送再配置补丁报文至客户端。
在第十一方面的一种可能的实施方式中,第二接收模块,还用于若接收来自目标应用的第二应答信息,第二应答信息用于指示目标应用不接受对配置对象对应的配置操作;
发送模块,还用于发送删除请求至服务器数据库,删除请求用于指示服务器数据库删除保存的配置对象对应的配置操作和配置对象的新数据;
发送模块,还用于将第二应答信息发送至客户端。
本申请第十二方面提供了一种服务器,包括如第十方面所述的服务器数据库和如第十一方面所述的服务器代理。
本申请实施例第十三方面还提供了一种服务器,包括:一个或一个以上处理器,输入输出接口,电源;
处理器用于执行第一方面及第一方面任意一种可能的实施方式,第二方面及第二方面任意一种可能的实施方式,第三方面及第三方面任意一种可能的实施方式,第四方面及第四方面任意一种可能的实施方式,第五方面及第五方面任意一种可能的实施方式,第六方面及第六方面任意一种可能的实施方式中的方法。
本申请实施例第十四方面提供了一种计算机可读存储介质,包括程序指令,其特征在于,当程序指令在计算机设备上运行时,使得计算机设备执行如第一方面及第一方面任意一种可能的实施方式,第二方面及第二方面任意一种可能的实施方式,第三方面及第三方面任意一种可能的实施方式,第四方面及第四方面任意一种可能的实施方式,第五方面及第五方面任意一种可能的实施方式,第六方面及第六方面任意一种可能的实施方式中的方法。
本申请实施例第十五方面提供了一种网络架构,该网络架构包括客户端和如第九方面、第十二方面或第十三方面所述的服务器。
从以上技术方案可以看出,本申请实施例具有以下优点:
本申请实施例提供了一种配置变更的方法及相关装置,其中,该方法包括:服务器数据库接收来自服务器代理的配置信息,配置信息包括目标对象,对应目标对象的配置操作,以及用于指示需要获取再配置补丁报文的补丁信息;服务器数据库根据接收的配置信息以及本地配置信息从目标对象中确定出需要进行配置变更的配置对象;服务器数据库保存配置对象在配置信息中对应的配置操作和配置对象的新数据,并根据保存的配置对象对应的配置操作和配置对象的新数据构造再配置补丁报文;服务器数据库将再配置补丁报文发送给服务器代理;服务器数据库接收来自服务器代理的变更请求,变更请求用于指示服务器数据库执行配置变更;服务器数据库根据保存的配置对象对应的配置操作执行配置变更。上述配置变更过程中,服务器数据库所构造的再配置补丁报文所包含了配置对象所对应的配置操作和配置对象的新数据,服务器基于该再配置补丁报文可以确定哪一部分目标对象(即配置对象)执行了配置变更,即服务器数据库的配置变更情况,不需要存储所有目标对象变更前的配置数据,可节省服务器的存储空间,有效利用存储资源。
附图说明
图1为本申请实施例提供的网络架构的一个结构示意图;
图2为本申请实施例提供的配置变更的方法的另一个流程示意图;
图3为本申请实施例提供的配置变更的方法的另一个流程示意图;
图4为本申请实施例提供的配置变更的方法的另一个流程示意图;
图5为本申请实施例提供的配置变更的方法的另一个流程示意图;
图6为本申请实施例提供的配置变更的方法的另一个流程示意图;
图7为本申请实施例中回滚补丁报文的一个示意图;
图8为本申请实施例中回滚补丁报文的另一个示意图;
图9为本申请实施例提供的服务器数据库的一个结构示意图;
图10为本申请实施例提供的服务器代理的一个结构示意图;
图11为本申请实施例提供的服务器的一个结构示意图;
图12为本申请实施例提供的服务器数据库的另一个结构示意图;
图13为本申请实施例提供的服务器代理的另一个结构示意图;
图14为本申请实施例提供的服务器的另一个结构示意图。
具体实施方式
本申请实施例提供了一种配置变更的方法,可节省服务器的存储空间,有效利用存储资源。
本申请实施例的技术方案应用于NETCONF的网络架构中,图1为本申请实施例提供的网络架构的一个结构示意图,如图1所示,该网络架构包括NETCONF客户端和多台网络设备,其中,NETCONF客户端可以对多台网络设备进行集中管理和配置,每一台网络设备上设置有NETCONF服务器,NETCONF服务器可与NETCONF客户端进行信息交互。为了便于说明,以其中一台设置有NETCONF服务器的网络设备进行介绍,该设备上的NETCONF服务器包括服务器代理、服务器数据库和应用。其中,应用可为安装于NETCONF服务器上的软件,服务器代理为NETCONF服务器的信息转发中心,例如将来自NETCONF客户端的信息转发至业务模块或服务器数据库,又如将来自业务模块或服务器数据库的信息发送至NETCONF客户端。服务器数据库用于存储Yang(yet another next generation)建模数据,该服务器数据库可包括多个配置数据集,例如运行配置数据集(running configuration datastore),候选配置数据集(candidate configuration datastore)等等,需要说明的是,本申请实施例中后续介绍中,需要进行配置变更的配置数据集均为运行配置数据集,该配置数据集用于存放网络设备当前运行所使用的配置数据,配置数据通常指配置数据集所包含的多个配置节点的数据值。
NETCONF客户端和NETCONF服务器通信连接,二者之间的通信内容是NETCONF协议定义的双向的可扩展标记语言(extensible markup language,XML)式的远程过程调用(remote procedure call,RPC)消息,包括从NETCONF客户端向NETCONF服务器发送的请求报文,以及NETCONF服务器向NETCONF客户端返回的应答报文,例如,NETCONF客户端向NETCONF服务器下发一个配置请求报文,NETCONF服务器根据该报文对配置数据集进行配置变更后,则向NETCONF客户端返回一个应答报文,用于通知NETCONF客户端变更操作完成。RPC消息的消息格式由Yang模型定义,Yang模型可以定义消息的格式以及消息中包含的配置数据的格式。
为了便于说明,NETCONF客户端和NETCONF服务器在以下说明过程中简称为客户端和服务器。本申请实施例提供的配置变更的方法可应用于多种场景,例如,配置变更检测、再配置和拒绝配置等等,本申请实施例为了实现上述多种场景,对客户端与服务器端之间的RPC进行了拓展,以配置变更报文(也可以称为配置请求报文)为例,该配置变更报文(edit-config)可以为标准的RPC消息,本申请实施例在配置变更报文中添加了补丁信息,该补丁信息用于指示服务器生成并返回Yang补丁报文(yang-patch),Yang补丁报文为承载服务器数据库的配置变更情况的载体。更进一步的,补丁信息可以为一个标识,该标识可以有多种取值,例如,当补丁信息取值为需要获取变更补丁报文(need change-patch)时,服务器需向客户端返回的yang-patch即为变更补丁报文(change-patch),补丁信息取值为需要获取再配置补丁报文(need redo-patch)时,服务器需向客户端返回的yang-patch即为再配置补丁报文(redo-patch),当补丁信息取值为需要获取回滚补丁报文(need undo-patch)时,服务器需向客户端返回的yang-patch即为回滚补丁报文(undo-patch)。
下面先从本申请实施例用于实现配置变更检测的场景开始介绍,并以服务器的角度对本申请实施例提供的配置变更的方法进行具体说明。图2为本申请实施例提供的配置变更的方法的一个流程示意图,请参阅图2,该方法包括:
201、服务器代理接收来自客户端的配置请求,并根据配置请求生成配置信息发送给服务器数据库;
当客户端需要对服务器进行配置变更时,可先向服务器下发一个配置请求(也可称为配置请求报文),该配置请求通常包括配置数据集中的至少一个目标对象、对应目标对象的配置操作、目标对象的新数据和用于指示需要获取变更补丁报文的补丁信息。需要说明的是,配置请求中所包含的目标对象通常指配置数据集的配置节点的名称(标识)。
服务器代理在接收到来自客户端的配置请求后,可对该配置请求进行解析,提取目标对象、目标对象的新数据、对应目标对象的配置操作以及用于指示需要获取变更补丁报文的补丁信息。当服务器代理接收并解析该配置请求后,可将补丁信息的取值进行修改,使得补丁信息用于指示需要获取再配置补丁报文,即将补丁信息的取值由need change-patch修改为need redo-patch。然后根据目标对象、目标对象的新数据、对应目标对象的配置操作以及取值为need redo-patch的补丁信息生成配置信息。服务器代理生成配置信息后,则可将配置信息发送至服务器数据库。
具体的,服务器数据库的配置数据集中包含有多个配置节点,配置信息可对配置数据集中的全部或部分节点进行配置变更,该全部或部分待进行配置变更的节点即为配置信息所指向的目标对象。在配置信息中,每一个目标对象对应一个配置操作,该配置操作可以为创建、删除或修改中的任意一种。配置信息中还包括目标对象的新数据,需要说明的是,当某个目标对象对应的配置操作为创建或修改时,则在配置信息中,该目标对象具有相应的新数据,例如,创建一个取值为8的节点A,此时,8则为目标对象节点A的新数据。又如,将节点B的值从2修改为4,此时,4则为目标对象节点B的新数据,2则为节点B的旧数据。当某个目标对象对应的配置操作为删除时,则在配置信息中,该目标对象不具有相应新数据,例如,删除节点C,在配置信息中,则不会写入节点C的新数据。
202、服务器数据库根据接收的配置信息以及本地配置信息从目标对象中确定出需要进行配置变更的配置对象;
服务器数据库接受到配置信息后,则将接受的配置信息与本地配置信息进行比对,从目标对象中确定出需要进行配置变更的配置对象。可以理解的是,配置对象为目标对象中的全部或部分对象,本地配置信息即为配置数据集上各个目标对象现存的数据(即目标对象的旧数据)。
具体的,由于配置信息包含目标对象的新数据,而配置数据集存储有目标对象的旧数据,服务器数据库可根据目标对象的新数据和旧数据之间的变化在目标对象中确定需要进行配置变更的配置对象。例如,当目标对象对应的配置操作为修改时,若该目标对象的新数据和旧数据不同,则将该目标对象确定为需要进行配置变更的配置对象,若该目标对象的新数据和旧数据相同,则将该目标对象确定为不需要进行配置变更的非配置对象。当目标对象对应的配置操作为创建时,未变更前的配置数据集中并不存在该目标对象,即不存在该目标对象的旧数据,而配置信息中包含该目标对象的新数据,故可将该目标对象确定为需要进行配置变更的配置对象。当目标对象对应的配置操作为删除时,未变更前的配置数据集中存在该目标对象,即存有该目标对象的旧数据,而配置信息中不存在该目标对象的新数据,则也可将该目标对象确定为需要进行配置变更的配置对象。
203、服务器数据库保存配置对象在配置信息中对应的配置操作和配置对象的新数据;
服务器数据库在确定配置对象前,可先根据补丁信息(取值为need redo-patch)开设一个临时数据集。服务器数据库在确定出配置对象时,则将配置对象、配置对象的新数据,以及配置对象在配置信息中对应的配置操作临时数据集。
例如,当确定节点X为配置对象时,若节点X在配置信息中对应的配置操作为修改时,则将节点X的新数据、节点X的名称和节点X对应的配置操作存入临时数据集,若节点X在配置信息中对应的配置操作为创建时,则将节点X的新数据、节点X的名称和节点X对应的配置操作存入临时数据集,若节点X在配置信息中对应的配置操作为删除时,则将节点X的名称和节点X对应的配置操作存入临时数据集。
应理解,上述例子中仅用仅用一个配置对象即节点X进行示意性说明,并不对配置对象的数量构成限制。
204、服务器数据库根据保存的配置对象对应的配置操作和配置对象的新数据构造再配置补丁报文;
当服务器数据库完成存储操作后,可从临时数据集中提取配置对象、配置对象的新数据和配置对象所对应的配置操作,然后将配置对象、配置对象的新数据和配置对象所对应的配置操作构建在再配置补丁报文中,即redo-patch。
redo-patch所承载的信息也可通过多种方式进行编辑,以下将分别进行介绍:
在一种可能实现的方式中,redo-patch采用树形结构,其中,树形结构包括所有配置对象,所有配置对象的新数据,以及对所有配置对象执行的配置操作。需要说明的是,redo-patch仅包含一个编辑信息,所有配置对象的相关信息均记录在该编辑信息中,以树形结构呈现。具体的,在树形结构的redo-patch中,若某个配置对象所对应的配置操作为删除,则报文中不包含有该配置对象的新数据,相反的,若某个配置对象所对应的配置操作为创建或修改,则报文中包含有该配置对象的新数据。
在一种可能实现的方式中,redo-patch采用条目记录,其中,一个条目包括一个配置对象,一个配置对象的新数据,以及对一个配置对象执行的配置操作或一个条目包括一个配置对象以及对一个配置对象执行的配置操作。需要说明的是,redo-patch包含多个并列的编辑信息,每一个编辑信息相当于一个条目,每一个条目用于记录一个配置对象的相关信息。具体的,若某个条目所存储的配置对象所对应的配置操作为删除,则该条目中不包含有该配置对象的新数据,若某个条目所存储的配置对象所对应的配置操作为创建或修改,则该条目中包含有该配置对象的新数据。
205、服务器数据库将再配置补丁报文发送给服务器代理;
服务器数据库得到redo-patch后,则将redo-patch发送至服务器代理。
206、服务器代理从再配置补丁报文中获取配置变更信息;
服务器代理接收来自服务器数据库的redo-patch后,可对redo-patch进行解析,得到配置对象所对应的配置操作,并根据配置对象所对应的配置操作生成配置变更信息。需要说明的是,由于配置数据集的配置对象还未执行配置变更,故配置对象所对应的配置操作即服务器数据库对配置对象即将执行的配置操作。此时,配置对象所对应的配置操作可表征配置数据集即将发生的配置变更情况。
207、服务器代理将配置变更信息发送至目标应用;
服务器代理得到配置对象所对应的配置操作后,则将配置对象和配置对象所对应的配置操作构造在配置变更信息中,并发送至目标应用,以通知目标应用关于配置数据集即将发生的配置变更情况。
208、服务器代理接收来自目标应用的第一应答信息;
目标应用接收到配置对象和配置对象所对应的配置操作后,可确定配置数据集中哪一部分配置节点准备执行配置变更,进而对业务数据进行相应的处理,若处理成功则表明目标应用接受服务器数据库对配置对象即将执行的配置操作,即接受配置数据集即将发生的配置变更情况,则目标应用可向服务器代理返回第一应答信息,用于向服务器代理指示目标应用接受服务器数据库对配置对象即将执行的配置操作。
209、服务器代理发送变更请求至服务器数据库;
当服务器代理接收到第一应答消息时,可确定目标应用接受配置数据集即将发生的配置变更情况,故服务器代理可以通知服务器数据库执行配置变更。具体的,服务器代理可生成一个用于指示服务器数据库执行配置变更的变更请求,并发送至服务器数据库,以使得服务器数据库执行配置变更。
210、服务器数据库根据保存的配置对象对应的配置操作执行配置变更;
当服务器数据库接收到变更请求后,基于该变更请求,服务器数据库从临时数据集中提取配置对象、配置对象的新数据以及配置对象所对应的配置操作,并根据配置对象的新数据以及配置对象所对应的配置操作对配置对象执行配置变更。
应理解,服务器数据库可以只对目标对象中需要进行配置变更的所有配置对象执行配置变更,而目标对象中其余非配置对象则不执行任何操作,服务器数据库也可以对所有目标对象均进行配置变更,但非配置对象并未发生变化,相当于执行了无效的配置变更,此处对非配置对象的具体处理方式不做限制。
211、服务器代理根据配置对象对应的配置操作构造变更补丁报文;
在客户端向服务器代理下发的配置请求中,其包含的原始补丁信息指示客户端需要获取变更补丁报文,表明客户端需要获取服务器数据库的配置变更情况,故服务器代理可以基于该原始补丁信息,根据配置对象和配置对象所对应的配置操作构造变更补丁报文,即change-patch。
change-patch所承载的信息也可通过多种方式进行编辑,以下将分别进行介绍:
在一种可能实现的方式中,change-patch采用树形结构,其中,树形结构包括所有配置对象以及对所有配置对象执行的配置操作。需要说明的是,change-patch仅包含一个编辑信息,所有配置对象的相关信息均记录在该编辑信息中,以树形结构呈现。具体的,在树形结构的change-patch中,任意一个配置对象所对应的配置操作无论是删除、创建或修改中的哪一种,报文中均不包含有该配置对象的新数据,仅包含该配置对象以及该配置对象所对应的配置操作。
在一种可能实现的方式中,change-patch采用条目记录,其中,一个条目包括一个配置对象以及对一个配置对象执行的配置操作。需要说明的是,change-patch包含多个并列的编辑信息,每一个编辑信息相当于一个条目,每一个条目用于记录一个配置对象的相关信息。具体的,change-patch中的任意一个条目仅包含一个配置对象以及该配置对象所对应的的配置操作,并不包含该配置对象的新数据。
应理解,步骤611和步骤609可同步进行也可异步进行,若两个步骤异步进行,两个步骤的执行先后顺序可根据实际需求进行设置,此处不做限制。
212、服务器代理将变更补丁报文发送至客户端。
服务器代理得到change-patch后,则将change-patch返回至客户端。客户端可解析change-patch,根据change-patch所包含的信息确定服务器数据库的配置变更情况。
本申请实施例中,服务器可自主生成变更补丁报文,通过该补丁报文可直接通知客户端关于服务器数据库的配置变更情况,因此,客户端不需再获取并比对变更前后的配置数据从而得到服务器数据库的配置变更情况,可以有效减轻客户端的逻辑分析压力。
以上具体介绍了本申请实施例用于实现配置变更检测的场景,接下来将继续介绍本申请实施例用于实现再配置的场景,并以服务器的角度对本申请实施例提供的配置变更的方法进行具体说明。图3为本申请实施例提供的配置变更的方法的另一个流程示意图,请参阅图3,该方法包括:
301、服务器代理接收来自客户端的配置请求,并根据配置请求生成配置信息发送给服务器数据库;
步骤301的具体说明可参考上述实施例中步骤201的相关说明内容,步骤301与步骤201的区别在于,客户端向服务器下发的配置请求中,其所包含的补丁信息用于指示需要获取再配置补丁报文。当服务器代理接收并解析该配置请求后,则不需要修改补丁信息的取值。
302、服务器数据库根据接收的配置信息以及本地配置信息从目标对象中确定出需要进行配置变更的配置对象;
303、服务器数据库保存配置对象在配置信息中对应的配置操作和配置对象的新数据;
304、服务器数据库根据保存的配置对象对应的配置操作和配置对象的新数据构造再配置补丁报文;
305、服务器数据库将再配置补丁报文发送给服务器代理;
306、服务器代理从再配置补丁报文中获取配置变更信息;
307、服务器代理将配置变更信息发送至目标应用;
308、服务器代理接收来自目标应用的第一应答信息;
309、服务器代理发送变更请求至服务器数据库;
310、服务器数据库根据保存的配置对象对应的配置操作执行配置变更;
步骤302至步骤310的具体说明可参考上述实施例步骤202至步骤210的相关说明部分,此处不再赘述。
311、服务器代理将再配置补丁报文发送至客户端。
在客户端向服务器代理下发的配置请求中,其包含的补丁信息指示客户端需要获取再配置补丁报文,表明客户端需要对其余台服务器进行相同配置变更操作的需求,故服务器代理可将已经生成的redo-patch直接发送至客户端。需要说明的是,redo-patch包含配置对象所对应的配置操作,故客户端也可通过从redo-patch提取配置对象所对应的配置操作,进而确定服务器数据库的配置变更情况。
应理解,步骤311和步骤309可同步进行也可异步进行,若两个步骤异步进行,两个步骤的执行先后顺序可根据实际需求进行设置,此处不做限制。
本申请实施例中,服务器可自主生成再配置补丁报文,通过该补丁报文可直接通知客户端关于服务器数据库的配置变更情况,可以有效减轻客户端的逻辑分析压力。更进一步地,客户端还可以通过该再配置补丁报文对其余服务器进行相同的配置变更,客户端基于该再配置变更报文所生成的配置请求,仅包含配置对象的相关信息,不包含有其他非配置对象的相关信息,可有效避免信息冗余,降低服务器的信息处理压力。
以上具体介绍了本申请实施例用于实现再配置的场景,接下来将继续介绍本申请实施例用于实现拒绝配置的场景,并以服务器的角度对本申请实施例提供的配置变更的方法进行具体说明。图4为本申请实施例提供的配置变更的方法的另一个流程示意图,请参阅图4,该方法包括:
401、服务器代理接收来自客户端的配置请求,并根据配置请求生成配置信息发送给服务器数据库;
步骤401的具体说明可参考上述实施例中步骤201的相关说明内容,步骤401与步骤201的区别在于,客户端向服务器下发的配置请求中,其所包含的补丁信息的取值为needredo-patch或need change-patch。当服务器代理接收并解析该配置请求后,若补丁信息的取值为need change-patch,则将其修改为need redo-patch,若补丁信息的取值为needredo-patch,则不修改补丁信息的取值。
402、服务器数据库根据接收的配置信息以及本地配置信息从目标对象中确定出需要进行配置变更的配置对象;
403、服务器数据库保存配置对象在配置信息中对应的配置操作和配置对象的新数据;
404、服务器数据库根据保存的配置对象对应的配置操作和配置对象的新数据构造再配置补丁报文;
405、服务器数据库将再配置补丁报文发送给服务器代理;
406、服务器代理从再配置补丁报文中获取配置变更信息;
407、服务器代理将配置变更信息发送至目标应用;
步骤402至步骤407的具体说明可参考上述实施例步骤202至步骤210的相关说明部分,此处不再赘述。
408、服务器代理接收来自目标应用的第二应答信息;
目标应用接收到配置对象和配置对象所对应的配置操作后,可确定配置数据集中哪一部分配置节点准备执行配置变更,进而对业务数据进行相应的处理,若处理失败则表明目标应用不接受服务器数据库对配置对象即将执行的配置操作,即不接受配置数据集即将发生的配置变更情况,则目标应用可向服务器代理返回第二应答信息,用于向服务器代理指示目标应用不接受服务器数据库对配置对象即将执行的配置操作。
409、服务器代理发送删除请求至服务器数据库;
当服务器代理接收到第二应答消息时,可确定目标应用不接受配置数据集即将发生的配置变更情况,故服务器代理可以通知服务器数据库不执行配置变更。具体的,服务器代理可生成一个用于指示服务器数据库不执行配置变更的删除请求,并发送至服务器数据库,以使得服务器数据删除临时数据库,即删除保存的所述配置对象对应的配置操作和所述配置对象的新数据。
410、服务器数据库删除保存的配置对象对应的配置操作和配置对象的新数据;
当服务器数据库接收到删除请求后,基于该删除请求,服务器数据库删除整个临时数据库,即删除保存的配置对象对应的配置操作和配置对象的新数据。至此,服务器数据库并未执行配置变更,即拒绝执行配置变更操作。
411、服务器代理将第二应答信息发送至客户端。
服务器代理接收到来自目标应用的第二应答信息后,可将第二应答消息发送至客户端,以向客户端指示其对服务器的配置变更操作失败。
应理解,步骤411和步骤409可同步进行也可异步进行,若两个步骤异步进行,两个步骤的执行先后顺序可根据实际需求进行设置,此处不做限制。
本申请实施例中,当服务器确定目标应用不接受配置数据集即将发生的配置变更情况后,服务器可自主拒绝执行配置变更操作,维持配置数据集的原始状态,提高了方案的灵活度。
在上述各个实施例中,服务器数据库所生成的Yang-patch仅为undo-patch或redo-patch,为了提高本申请技术方案的灵活度和可选择性,服务器数据库所生成的Yang-patch还可以同时包括undo-patch和redo-patch,该情况可用于实现再配置和拒绝配置两种场景,以下将对两种场景分别进行介绍。
下面先从本申请实施例用于实现再配置的场景开始介绍,并以服务器的角度对本申请实施例提供的配置变更的方法进行具体说明。图5为本申请实施例提供的配置变更的方法的一个流程示意图,请参阅图5,该方法包括:
501、服务器代理接收来自客户端的配置请求,并根据配置请求生成配置信息发送给服务器数据库;
当客户端需要对服务器进行配置变更时,可先向服务器下发一个配置请求(也可称为配置请求报文),该配置请求通常包括配置数据集中的至少一个目标对象、对应目标对象的配置操作、目标对象的新数据和用于指示需要获取再配置补丁报文的补丁信息。需要说明的是,配置请求中所包含的目标对象通常指配置数据集的配置节点的名称(标识)。
服务器代理在接收到来自客户端的配置请求后,可对该配置请求进行解析,提取目标对象、目标对象的新数据、对应目标对象的配置操作以及用于指示需要获取再配置补丁报文的补丁信息。当服务器代理接收并解析该配置请求后,可将补丁信息的取值进行修改,使得补丁信息用于指示需要获取回滚补丁报文,即将补丁信息的取值由need redo-patch修改为need undo-patch,然后根据目标对象、目标对象的新数据、对应目标对象的配置操作以及取值为need undo-patch的补丁信息生成配置信息。服务器代理生成配置信息后,则可将配置信息发送至服务器数据库。
具体的,服务器数据库的配置数据集中包含有多个配置节点,配置信息可对配置数据集中的全部或部分节点进行配置变更,该全部或部分待进行配置变更的节点即为配置信息所指向的目标对象。在配置信息中,每一个目标对象对应一个配置操作,该配置操作可以为创建、删除或修改中的任意一种。配置信息中还包括目标对象的新数据,需要说明的是,当某个目标对象对应的配置操作为创建或修改时,则在配置信息中,该目标对象具有相应的新数据,例如,创建一个取值为8的节点A,此时,8则为目标对象节点A的新数据。又如,将节点B的值从2修改为4,此时,4则为目标对象节点B的新数据,2则为节点B的旧数据。当某个目标对象对应的配置操作为删除时,则在配置信息中,该目标对象不具有相应新数据,例如,删除节点C,在配置信息中,则不会写入节点C的新数据。
502、服务器数据库根据接收的配置信息以及本地配置信息从目标对象中确定出需要进行配置变更的配置对象;
服务器数据库接受到配置信息后,则将接受的配置信息与本地配置信息进行比对,从目标对象中确定出需要进行配置变更的配置对象。可以理解的是,配置对象为目标对象中的全部或部分对象,本地配置信息即为配置数据集上各个目标对象现存的数据(即目标对象的旧数据)。
具体的,由于配置信息包含目标对象的新数据,而配置数据集存储有目标对象的旧数据,服务器数据库可根据目标对象的新数据和旧数据之间的变化在目标对象中确定需要进行配置变更的配置对象。例如,当目标对象对应的配置操作为修改时,若该目标对象的新数据和旧数据不同,则将该目标对象确定为需要进行配置变更的配置对象,若该目标对象的新数据和旧数据相同,则将该目标对象确定为不需要进行配置变更的非配置对象。当目标对象对应的配置操作为创建时,未变更前的配置数据集中并不存在该目标对象,即不存在该目标对象的旧数据,而配置信息中包含该目标对象的新数据,故可将该目标对象确定为需要进行配置变更的配置对象。当目标对象对应的配置操作为删除时,未变更前的配置数据集中存在该目标对象,即存有该目标对象的旧数据,而配置信息中不存在该目标对象的新数据,则也可将该目标对象确定为需要进行配置变更的配置对象。
503、服务器数据库保存配置对象的新数据、配置对象在配置信息中对应的配置操作、配置对象的旧数据以及配置对象在配置信息中对应的配置操作的逆操作;
需要说明的是,在服务器代理接收到配置请求之后,在服务器代理生成配置信息之前,服务器代理会先发送事务开始请求至服务器数据库。服务器数据库基于该事务开始请求,可以预先开设第一临时数据集。在服务器数据库接收到服务器代理发送的配置信息之后,在服务器数据库确定配置对象之前,服务器数据库可以解析配置信息,得到取值为need undo-patch的补丁信息,并基于该补丁信息,再开设第二临时数据集。
服务器数据库确定配置对象之后,可将配置对象、配置对象的新数据以及配置对象在配置信息中对应的配置操作存入第一临时数据集,并将配置对象、配置对象的旧数据以及配置对象在配置信息中对应的配置操作的逆操作存入第二临时数据集。
504、服务器数据库根据保存的配置对象的旧数据和配置对象对应的配置操作的逆操作构造回滚补丁报文;
服务器数据库完成配置变更后,则从第二临时数据集中提取配置对象、配置对象的旧数据和配置对象所对应的配置操作的逆操作,并将配置对象、配置对象的旧数据以及配置对象所对应的配置操作的逆操作构造在回滚补丁报文中,即undo-patch。
在Yang-patch这一数据结构中,其承载的信息可通过多种方式进行编辑,因此,undo-patch所承载的信息也可通过多种方式进行编辑,以下将分别进行介绍:
在一种可能实现的方式中,undo-patch采用树形结构,其中,树形结构包括所有配置对象,所有配置对象的旧数据,以及对所有配置对象执行的配置操作的逆操作。需要说明的是,图7为本申请实施例中回滚补丁报文的一个示意图,如图7所示,undo-patch仅包含一个编辑信息,所有配置对象的相关信息均记录在该编辑信息中,以树形结构呈现。具体的,在树形结构的undo-patch中,若某个配置对象所对应的配置操作的逆操作为删除,则报文中不包含有该配置对象的旧数据,相反的,若某个配置对象所对应的配置操作的逆操作为创建或修改,则报文中包含有该配置对象的旧数据。
在一种可能实现的方式中,undo-patch采用条目记录,其中,一个条目包括一个配置对象,一个配置对象的旧数据,以及对一个配置对象执行的配置操作的逆操作或一个条目包括一个配置对象以及一个配置对象执行的配置操作的逆操作。需要说明的是,图8为本申请实施例中回滚补丁报文的另一个示意图,如图8所示,undo-patch包含多个并列的编辑信息,每一个编辑信息相当于一个条目,每一个条目用于记录一个配置对象的相关信息。具体的,若某个条目所存储的配置对象所对应的配置操作的逆操作为删除,则该条目中不包含有该配置对象的旧数据,若某个条目所存储的配置对象所对应的配置操作的逆操作为创建或修改,则该条目中包含有该配置对象的旧数据。
505、服务器数据库删除保存的配置对象的旧数据和配置对象对应的配置操作的逆操作;
服务器数据库得到undo-patch后,则删除第二临时数据集,即删除配置对象、保存的配置对象的旧数据和配置对象对应的配置操作的逆操作。
506、服务器数据库将回滚补丁报文发送至服务器代理;
服务器数据库删除第二临时数据集后,则将undo-patch发送至服务器代理。
507、服务器代理对回滚补丁报文进行逆解析,得到配置变更信息;
服务器代理接收来自服务器数据库的undo-patch后,可对undo-patch进行逆解析,得到配置对象所对应的配置操作,需要说明的是,由于配置数据集的配置对象还未执行配置变更,故配置对象所对应的配置操作即服务器数据库对配置对象即将执行的配置操作。此时,配置变更信息所包括的配置对象所对应的配置操作可表征配置数据集即将发生的配置变更情况。
508、服务器代理将配置变更信息发送至目标应用;
服务器代理得到配置对象所对应的配置操作后,则将配置对象和配置对象所对应的配置操作构造在配置变更信息中,并发送至目标应用,以通知目标应用关于配置数据集即将发生的配置变更情况。
509、服务器代理接收来自目标业务的第一应答信息;
目标应用接收到配置对象和配置对象所对应的配置操作后,可确定配置数据集中哪一部分配置节点准备执行配置变更,进而对业务数据进行相应的处理,若处理成功则表明目标应用接受服务器数据库对配置对象即将执行的配置操作,即接受配置数据集即将发生的配置变更情况,则目标应用可向服务器代理返回第一应答信息,用于向服务器代理指示目标应用接受服务器数据库对配置对象即将执行的配置操作。
510、服务器代理发送变更请求至服务器数据库;
当服务器代理接收到第一应答消息时,可确定目标应用接受配置数据集即将发生的配置变更情况,故服务器代理可以通知服务器数据库执行配置变更。具体的,服务器代理可生成一个事务结束请求,例如一个用于指示服务器数据库执行配置变更的变更请求,并发送至服务器数据库,以使得服务器数据库执行配置变更。
511、服务器数据库根据保存的配置对象对应的配置操作执行配置变更;
当服务器数据库接收到变更请求后,基于该变更请求,服务器数据库从第一临时数据集中提取配置对象、配置对象的新数据以及配置对象所对应的配置操作,并根据配置对象的新数据以及配置对象所对应的配置操作对配置对象执行配置变更。
应理解,服务器数据库可以只对目标对象中需要进行配置变更的所有配置对象执行配置变更,而目标对象中其余非配置对象则不执行任何操作,服务器数据库也可以对所有目标对象均进行配置变更,但非配置对象并未发生变化,相当于执行了无效的配置变更,此处对非配置对象的具体处理方式不做限制。
512、服务器数据库根据保存的配置对象的新数据和配置对象对应的配置操作构造再配置补丁报文;
在客户端向服务器代理下发的配置请求中,其包含的原始补丁信息指示客户端需要获取再配置补丁报文,表明客户端需要进行再配置。服务器代理所生成的变更请求,还可用于指示服务器数据库生成redo-patch。故在服务器数据库执行配置变更后,可根据配置对象和配置对象所对应的配置操作构造再配置补丁报文,即redo-patch。
513、服务器数据库删除保存的配置对象的新数据和配置对象对应的配置操作;
服务器数据库生成redo-patch,则删除第一临时数据库,即删除保存的配置对象、配置对象的新数据和配置对象对应的配置操作。
514、服务器数据库将再配置补丁报文发送服务器代理;
服务器数据库删除第一临时数据库后,则将redo-patch返回至服务器代理。
515、服务器代理发送再配置补丁报文至客户端。
在客户端向服务器代理下发的配置请求中,其包含的补丁信息指示客户端需要获取再配置补丁报文,表明客户端需要对其余台服务器进行相同配置变更操作的需求,故服务器代理可将已经生成的redo-patch直接发送至客户端。需要说明的是,redo-patch包含配置对象所对应的配置操作,故客户端也可通过从redo-patch提取配置对象所对应的配置操作,进而确定服务器数据库的配置变更情况。
本申请实施例中,服务器可自主生成再配置补丁报文,通过该补丁报文可直接通知客户端关于服务器数据库的配置变更情况,可以有效减轻客户端的逻辑分析压力。更进一步地,客户端还可以通过该再配置补丁报文对其余服务器进行相同的配置变更,客户端基于该再配置变更报文所生成的配置请求,仅包含配置对象的相关信息,不包含有其他非配置对象的相关信息,可有效避免信息冗余,降低服务器的信息处理压力。
以上具体介绍了本申请实施例用于实现再配置的场景,接下来将继续介绍本申请实施例用于实现拒绝配置的场景,并以服务器的角度对本申请实施例提供的配置变更的方法进行具体说明。图6为本申请实施例提供的配置变更的方法的另一个流程示意图,请参阅图6,该方法包括:
601、服务器代理接收来自客户端的配置请求,并根据配置请求生成配置信息发送给服务器数据库;
602、服务器数据库根据接收的配置信息以及本地配置信息从目标对象中确定出需要进行配置变更的配置对象;
603、服务器数据库保存配置对象的新数据、配置对象在配置信息中对应的配置操作、配置对象的旧数据以及配置对象在配置信息中对应的配置操作的逆操作;
604、服务器数据库根据保存的配置对象的旧数据和配置对象对应的配置操作的逆操作构造回滚补丁报文;
605、服务器数据库删除保存的配置对象的旧数据和配置对象对应的配置操作的逆操作;
606、服务器数据库将回滚补丁报文发送至服务器代理;
607、服务器代理对回滚补丁报文进行逆解析,得到配置变更信息;
608、服务器代理将配置变更信息发送至目标应用;
步骤601至步骤608的具体说明可参考上述实施例步骤501至步骤508的相关说明部分,此处不再赘述。
609、服务器代理接收来自目标业务的第二应答信息;
目标应用接收到配置对象和配置对象所对应的配置操作后,可确定配置数据集中哪一部分配置节点准备执行配置变更,进而对业务数据进行相应的处理,若处理失败则表明目标应用不接受服务器数据库对配置对象即将执行的配置操作,即不接受配置数据集即将发生的配置变更情况,则目标应用可向服务器代理返回第二应答信息,用于向服务器代理指示目标应用不接受服务器数据库对配置对象即将执行的配置操作。
610、服务器代理发送删除请求至服务器数据库;
当服务器代理接收到第二应答消息时,可确定目标应用不接受配置数据集即将发生的配置变更情况,故服务器代理可以通知服务器数据库不执行配置变更。具体的,服务器代理可生成一个事务结束请求,例如一个用于指示服务器数据库不执行配置变更的删除请求,并发送至服务器数据库,以使得服务器数据删除临时数据库,即删除保存的所述配置对象对应的配置操作和所述配置对象的新数据。
611、服务器数据库删除保存的配置对象对应的配置操作和配置对象的新数据;
当服务器数据库接收到删除请求后,基于该删除请求,服务器数据库删除整个第一临时数据库,即删除保存的配置对象对应的配置操作和配置对象的新数据。至此,服务器数据库并未执行配置变更,即拒绝执行配置变更操作。
612、服务器代理发送第二应答信息至客户端。
服务器代理接收到来自目标应用的第二应答信息后,可将第二应答消息发送至客户端,以向客户端指示其对服务器的配置变更操作失败。
应理解,步骤612和步骤610可同步进行也可异步进行,若两个步骤异步进行,两个步骤的执行先后顺序可根据实际需求进行设置,此处不做限制。
本申请实施例中,当服务器确定目标应用不接受配置数据集即将发生的配置变更情况后,服务器可自主拒绝执行配置变更操作,维持配置数据集的原始状态,提高了方案的灵活度。
以上是对本申请实施例提供的配置变更的方法进行的详细说明,以下将对本申请实施例提供的服务器的结构和连接关系进行具体介绍,图9为本申请实施例提供的服务器数据库的一个结构示意图,请参阅图9,该服务器数据库900可以为上述图2至图4所示任一实施例中的服务器数据库,该服务器数据库900包括:
接收模块901,用于接收来自服务器代理的配置信息,配置信息包括目标对象,对应目标对象的配置操作,以及用于指示需要获取再配置补丁报文的补丁信息,具体实现过程可以参考上述图2所示实施例中步骤201的具体描述,此处不再赘述;
处理模块902,用于根据接收的配置信息以及本地配置信息从目标对象中确定出需要进行配置变更的配置对象,具体实现过程可以参考上述图2所示实施例中步骤202的具体描述,此处不再赘述;
处理模块902,还用于保存配置对象在配置信息中对应的配置操作和配置对象的新数据,并根据保存的配置对象对应的配置操作和配置对象的新数据构造再配置补丁报文,具体实现过程可以参考上述图2所示实施例中步骤203和步骤204的具体描述,此处不再赘述;
发送模块903,用于将再配置补丁报文发送给服务器代理,具体实现过程可以参考上述图2所示实施例中步骤205的具体描述,此处不再赘述;
接收模块901,还用于接收来自服务器代理的变更请求,变更请求用于指示服务器数据库执行配置变更,具体实现过程可以参考上述图2所示实施例中步骤209的具体描述,此处不再赘述;
处理模块902,还用于根据保存的配置对象对应的配置操作执行配置变更,具体实现过程可以参考上述图2所示实施例中步骤210的具体描述,此处不再赘述。
可选的,接收模块901,还用于接收来自服务器代理的删除请求,具体实现过程可以参考上述图4所示实施例中步骤409的具体描述,此处不再赘述;
处理模块902,还用于根据删除请求删除保存的配置对象对应的配置操作和配置对象的新数据,具体实现过程可以参考上述图4所示实施例中步骤410的具体描述,此处不再赘述。
可选的,再配置补丁报文采用树形结构,其中,所有配置对象的新数据,以及所有配置对象对应的配置操作以树形结构呈现。
可选的,再配置补丁报文采用条目记录,其中,一个条目包括一个配置对象的新数据,以及一个配置对象对应的配置操作或一个条目包括对一个配置对象执行的配置操作。
图10为本申请实施例提供的服务器代理的一个结构示意图,请参阅图10,该服务器代理1000可以为上述图2至图4所示任一实施例中的服务器代理,该服务器代理1000包括:
第一接收模块1001,用于接收来自客户端的配置请求,具体实现过程可以参考上述图2所示实施例中步骤201的具体描述,此处不再赘述;
处理模块1002,用于根据配置请求生成配置信息,具体实现过程可以参考上述图2所示实施例中步骤201的具体描述图3所示实施例中步骤301的具体描述或图4所示实施例中步骤401的具体描述,此处不再赘述;
发送模块1003,用于将配置信息发送给服务器数据库,配置信息包括目标对象,对应目标对象的配置操作,以及用于指示需要获取再配置补丁报文的补丁信息,具体实现过程可以参考上述图2所示实施例中步骤201的具体描述,此处不再赘述;
第二接收模块1004,用于接收来自服务器数据库的再配置补丁报文,再配置补丁报文为服务器数据库根据配置信息从目标对象中确定需要进行配置变更的配置对象后构造的,再配置补丁报文包括配置对象在配置信息中对应的配置操作和配置对象的新数据,具体实现过程可以参考上述图2所示实施例中步骤205的具体描述,此处不再赘述;
处理模块1002,还用于从再配置补丁报文中获取配置变更信息,配置变更信息包括配置对象对应的配置操作,具体实现过程可以参考上述图2所示实施例中步骤206的具体描述,此处不再赘述;
发送模块1003,还用于将配置变更信息发送至目标应用,目标应用为订阅配置变更信息的应用,具体实现过程可以参考上述图2所示实施例中步骤207的具体描述,此处不再赘述;
第二接收模块1004,还用于若接收来自目标应用的第一应答信息,第一应答信息用于指示目标应用接受配置对象对应的配置操作,具体实现过程可以参考上述图2所示实施例中步骤208的具体描述,此处不再赘述;
发送模块1003,还用于发送变更请求至服务器数据库,变更请求用于指示服务器数据库执行配置变更,具体实现过程可以参考上述图2所示实施例中步骤209的具体描述,此处不再赘述。
可选的,若配置请求包括用于指示需要获取再配置补丁报文的补丁信息,则发送模块1003,还用于将再配置补丁报文发送至客户端,具体实现过程可以参考上述图3所示实施例中步骤311的具体描述,此处不再赘述。
可选的,若配置请求包括用于指示需要获取变更补丁报文的补丁信息,则处理模块1002,还用于根据配置对象对应的配置操作构造变更补丁报文,具体实现过程可以参考上述图2所示实施例中步骤211的具体描述,此处不再赘述;
发送模块1003,还用于将变更补丁报文发送至客户端,具体实现过程可以参考上述图2所示实施例中步骤212的具体描述,此处不再赘述。
可选的,第二接收模块1004,还用于若接收来自目标应用的第二应答信息,第二应答信息用于指示目标应用不接受对配置对象对应的配置操作,具体实现过程可以参考上述图4所示实施例中步骤408的具体描述,此处不再赘述;
发送模块1003,还用于发送删除请求至服务器数据库,删除请求用于指示服务器数据库删除保存的配置对象对应的配置操作和配置对象的新数据,具体实现过程可以参考上述图4所示实施例中步骤409的具体描述,此处不再赘述;
发送模块1003,还用于将第二应答信息发送至客户端,具体实现过程可以参考上述图4所示实施例中步骤411的具体描述,此处不再赘述。
图11为本申请实施例提供的服务器的一个结构示意图,请参阅图11,该服务器1100包括如图9所示的服务器数据库900和图10所示的服务器代理1000。
图12为本申请实施例提供的服务器数据库的另一个结构示意图,请参阅图12,该服务器数据库1200可以为上述图5至图6所示任一实施例中的服务器数据库,该服务器数据库1200包括:
接收模块1201,用于接收来自服务器代理的配置信息,配置信息包括目标对象,对应目标对象的配置操作,以及用于指示需要获取回滚补丁报文的补丁信息,具体实现过程可以参考上述图5所示实施例中步骤501的具体描述,此处不再赘述;
处理模块1202,用于根据接收的配置信息以及本地配置信息从目标对象中确定出需要进行配置变更的配置对象,具体实现过程可以参考上述图5所示实施例中步骤502的具体描述,此处不再赘述;
处理模块1202,还用于保存配置对象的新数据、配置对象在配置信息中对应的配置操作、配置对象的旧数据以及配置对象在配置信息中对应的配置操作的逆操作,具体实现过程可以参考上述图5所示实施例中步骤503的具体描述,此处不再赘述;
处理模块1202,还用于根据保存的配置对象的旧数据和配置对象对应的配置操作的逆操作构造回滚补丁报文,具体实现过程可以参考上述图5所示实施例中步骤504的具体描述,此处不再赘述;
发送模块1203,用于将回滚补丁报文发送至服务器代理,具体实现过程可以参考上述图5所示实施例中步骤506的具体描述,此处不再赘述;
接收模块1201,还用于接收来自服务器代理的变更请求,变更请求用于指示服务器数据库执行配置变更,具体实现过程可以参考上述图5所示实施例中步骤510的具体描述,此处不再赘述;
处理模块1202,还用于根据保存的配置对象对应的配置操作执行配置变更,具体实现过程可以参考上述图5所示实施例中步骤511的具体描述,此处不再赘述。
可选的,处理模块1202,还用于根据保存的配置对象的新数据和配置对象对应的配置操作构造再配置补丁报文,具体实现过程可以参考上述图5所示实施例中步骤512的具体描述,此处不再赘述;
处理模块1202,还用于删除保存的配置对象的新数据和配置对象对应的配置操作,具体实现过程可以参考上述图5所示实施例中步骤513的具体描述,此处不再赘述;
发送模块1203,还用于将再配置补丁报文发送服务器代理,具体实现过程可以参考上述图9所示实施例中步骤514的具体描述,此处不再赘述。
可选的,处理模块1202,还用于删除保存的配置对象的旧数据和配置对象对应的配置操作的逆操作,具体实现过程可以参考上述图5所示实施例中步骤505的具体描述,此处不再赘述。
可选的,接收模块1201,还用于接收来自服务器代理的删除请求,具体实现过程可以参考上述图6所示实施例中步骤610的具体描述,此处不再赘述;
处理模块1202,还用于根据删除请求删除保存的配置对象对应的配置操作和配置对象的新数据,具体实现过程可以参考上述图6所示实施例中步骤611的具体描述,此处不再赘述。
可选的,回滚补丁报文采用树形结构,其中,所有配置对象的旧数据,以及所有配置对象对应的配置操作的逆操作以树形结构呈现。
可选的,回滚补丁报文采用条目记录,其中,一个条目包括一个配置对象的旧数据,以及一个配置对象对应的配置操作的逆操作或一个条目包括一个配置对象对应的配置操作的逆操作。
可选的,再配置补丁报文采用树形结构,其中,所有配置对象的新数据,以及所有配置对象对应的配置操作以树形结构呈现。
可选的,再配置补丁报文采用条目记录,其中,一个条目包括一个配置对象的新数据,以及一个配置对象对应的配置操作或一个条目包括一个配置对象对应的配置操作。
图13为本申请实施例提供的服务器代理的另一个结构示意图,请参阅图13,该服务器代理1300可以为上述图5至图6所示任一实施例中的服务器代理,该服务器代理1300包括:
第一接收模块1301,用于接收来自客户端的配置请求,具体实现过程可以参考上述图5所示实施例中步骤501的具体描述,此处不再赘述;
处理模块1302,用于根据配置请求生成配置信息,具体实现过程可以参考上述图5所示实施例中步骤501的具体描述,此处不再赘述;
发送模块1303,用于将配置信息发送给服务器数据库,配置信息包括目标对象,对应目标对象的配置操作,以及用于指示需要获取回滚补丁报文的补丁信息,具体实现过程可以参考上述图5所示实施例中步骤501的具体描述,此处不再赘述;
第二接收模块1304,用于接收来自服务器数据库的回滚补丁报文,回滚补丁报文为服务器数据库根据配置信息从目标对象中确定需要进行配置变更的配置对象后构造的,回滚补丁报文包括配置对象在配置信息中对应的配置操作的逆操作和配置对象的旧数据,具体实现过程可以参考上述图5所示实施例中步骤506的具体描述,此处不再赘述;
处理模块1302,还用于对回滚补丁报文进行逆解析,得到配置变更信息,配置变更信息包括对配置对象执行的配置操作,具体实现过程可以参考上述图5所示实施例中步骤507的具体描述,此处不再赘述;
发送模块1303,还用于将配置变更信息发送至目标应用,目标应用为订阅配置变更信息的应用,具体实现过程可以参考上述图5所示实施例中步骤508的具体描述,此处不再赘述;
第二接收模块1304,还用于若接收来自目标业务的第一应答信息,第一应答信息用于指示目标业务接受配置对象对应的配置操作,具体实现过程可以参考上述图5所示实施例中步骤509的具体描述,此处不再赘述;
发送模块1303,还用于发送变更请求至服务器数据库,变更请求用于指示服务器数据库执行配置变更,具体实现过程可以参考上述图5所示实施例中步骤510的具体描述,此处不再赘述。
可选的,配置请求包括用于指示需要获取再配置补丁报文的补丁信息,服务器代理1300,还包括:
第二接收模块1304,还用于接收来自服务器数据库的再配置补丁报文,再配置补丁报文包括配置对象的新数据和配置对象在配置信息中对应的配置操作,具体实现过程可以参考上述图5所示实施例中步骤514的具体描述,此处不再赘述;
发送模块1303,还用于发送再配置补丁报文至客户端,具体实现过程可以参考上述图5所示实施例中步骤515的具体描述,此处不再赘述。
可选的,第二接收模块1304,还用于若接收来自目标应用的第二应答信息,第二应答信息用于指示目标应用不接受对配置对象对应的配置操作,具体实现过程可以参考上述图6所示实施例中步骤609的具体描述,此处不再赘述;
发送模块1303,还用于发送删除请求至服务器数据库,删除请求用于指示服务器数据库删除保存的配置对象对应的配置操作和配置对象的新数据;
发送模块1303,还用于将第二应答信息发送至客户端。
图14为本申请实施例提供的服务器的另一个结构示意图,请参阅图14,该服务器1400包括如图12所示的服务器数据库1200和如图13所示的服务器代理1300。
需要说明的是,上述装置各模块/单元之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其带来的技术效果与本申请方法实施例相同,具体内容可参见本申请前述所示的方法实施例中的叙述,此处不再赘述。
本申请实施例还提供了一种服务器,包括:一个或一个以上处理器,输入输出接口,电源;
处理器用于执行图2至图6所对应的方法。
本申请实施例还涉及一种计算机可读存储介质,包括程序指令,其特征在于,当所述程序指令在计算机设备上运行时,使得所述计算机设备执行如图2至图6所对应的方法。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
Claims (52)
1.一种配置变更的方法,其特征在于,所述方法包括:
服务器数据库接收来自服务器代理的配置信息,配置信息包括目标对象,对应目标对象的配置操作,以及用于指示需要获取再配置补丁报文的补丁信息;
服务器数据库根据接收的配置信息以及本地配置信息从目标对象中确定出需要进行配置变更的配置对象;
服务器数据库保存配置对象在接收的配置信息中对应的配置操作和配置对象的新数据,并根据保存的配置对象对应的配置操作和配置对象的新数据构造再配置补丁报文;
服务器数据库将再配置补丁报文发送给服务器代理;
服务器数据库接收来自服务器代理的变更请求,变更请求用于指示服务器数据库执行配置变更;
服务器数据库根据保存的配置对象对应的配置操作执行配置变更。
2.根据权利要求1所述的方法,其特征在于,服务器数据库将再配置补丁报文发送给服务器代理之后,还包括:
服务器数据库接收来自服务器代理的删除请求;
服务器数据库根据删除请求删除保存的配置对象对应的配置操作和配置对象的新数据。
3.根据权利要求1或2所述的方法,其特征在于,再配置补丁报文采用树形结构,其中,所有配置对象的新数据,以及所有配置对象对应的配置操作以树形结构呈现。
4.根据权利要求1或2所述的方法,其特征在于,再配置补丁报文采用条目记录,其中,一个条目包括一个配置对象的新数据,以及一个配置对象对应的配置操作或一个条目包括对一个配置对象执行的配置操作。
5.一种配置变更的方法,其特征在于,所述方法包括:
服务器代理接收来自客户端的配置请求,并根据配置请求生成配置信息发送给服务器数据库,配置信息包括目标对象,对应目标对象的配置操作,以及用于指示需要获取再配置补丁报文的补丁信息;
服务器代理接收来自服务器数据库的再配置补丁报文,再配置补丁报文为服务器数据库根据配置信息从目标对象中确定需要进行配置变更的配置对象后构造的,再配置补丁报文包括配置对象在配置信息中对应的配置操作和配置对象的新数据;
服务器代理从再配置补丁报文中获取配置变更信息,配置变更信息包括配置对象对应的配置操作;
服务器代理将配置变更信息发送至目标应用,目标应用为订阅配置变更信息的应用;
若服务器代理接收来自目标应用的第一应答信息,第一应答信息用于指示目标应用接受配置对象对应的配置操作;
服务器代理发送变更请求至服务器数据库,变更请求用于指示服务器数据库执行配置变更。
6.根据权利要求5所述的方法,其特征在于,若配置请求包括用于指示需要获取再配置补丁报文的补丁信息,则服务器代理接收来自目标应用的第一应答信息之后,还包括:
服务器代理将再配置补丁报文发送至客户端。
7.根据权利要求5所述的方法,其特征在于,若配置请求包括用于指示需要获取变更补丁报文的补丁信息,则服务器代理接收来自目标应用的第一应答信息之后,还包括:
服务器代理根据配置对象对应的配置操作构造变更补丁报文;
服务器代理将变更补丁报文发送至客户端。
8.根据权利要求5所述的方法,其特征在于,服务器代理将配置变更信息发送至目标应用之后,还包括:
若服务器代理接收来自目标应用的第二应答信息,第二应答信息用于指示目标应用不接受对配置对象对应的配置操作;
服务器代理发送删除请求至服务器数据库,删除请求用于指示服务器数据库删除保存的配置对象对应的配置操作和配置对象的新数据;
服务器代理将第二应答信息发送至客户端。
9.一种配置变更的方法,其特征在于,所述方法包括:
服务器接收来自客户端的配置请求,并根据配置请求生成配置信息,配置信息包括目标对象,对应目标对象的配置操作,以及用于指示需要获取再配置补丁报文的补丁信息;
服务器根据生成的配置信息以及本地配置信息从目标对象中确定出需要进行配置变更的配置对象;
服务器保存配置对象在生成的配置信息中对应的配置操作和配置对象的新数据,并根据保存的配置对象对应的配置操作和配置对象的新数据构造再配置补丁报文;
服务器从再配置补丁报文中获取配置变更信息,配置变更信息包括配置对象对应的配置操作;
服务器将配置变更信息发送至目标应用,目标应用为订阅配置变更信息的应用;
若服务器接收来自目标应用的第一应答信息,第一应答信息用于指示目标应用接受配置对象对应的配置操作;
服务器根据保存的配置对象对应的配置操作执行配置变更。
10.根据权利要求9所述的方法,其特征在于,若配置请求包括用于指示需要获取再配置补丁报文的补丁信息,则服务器接收来自目标应用的第一应答信息之后,还包括:
服务器将再配置补丁报文发送至客户端。
11.根据权利要求9所述的方法,其特征在于,若配置请求包括用于指示需要获取变更补丁报文的补丁信息,则服务器接收来自目标应用的第一应答信息之后,还包括:
服务器根据配置对象对应的配置操作构造变更补丁报文;
服务器将变更补丁报文发送至客户端。
12.根据权利要求9所述的方法,其特征在于,服务器将配置变更信息发送至目标应用之后,还包括:
若服务器接收来自目标应用的第二应答信息,第二应答信息用于指示目标应用不接受对配置对象对应的配置操作;
服务器删除保存的配置对象对应的配置操作和配置对象的新数据;
服务器将第二应答信息发送至客户端。
13.根据权利要求9至12任意一项所述的方法,其特征在于,再配置补丁报文用于指示客户端对其余服务器进行配置变更。
14.一种配置变更的方法,其特征在于,所述方法包括:
服务器数据库接收来自服务器代理的配置信息,配置信息包括目标对象,对应目标对象的配置操作,以及用于指示需要获取回滚补丁报文的补丁信息;
服务器数据库根据接收的配置信息以及本地配置信息从目标对象中确定出需要进行配置变更的配置对象;
服务器数据库保存配置对象的新数据、配置对象在接收的配置信息中对应的配置操作、配置对象的旧数据以及配置对象在接收的配置信息中对应的配置操作的逆操作;
服务器数据库根据保存的配置对象的旧数据和配置对象对应的配置操作的逆操作构造回滚补丁报文;
服务器数据库将回滚补丁报文发送至服务器代理;
服务器数据库接收来自服务器代理的变更请求,变更请求用于指示服务器数据库执行配置变更;
服务器数据库根据保存的配置对象对应的配置操作执行配置变更。
15.根据权利要求14所述的方法,其特征在于,服务器数据库根据保存的配置对象对应的配置操作执行配置变更之后,还包括:
服务器数据库根据保存的配置对象的新数据和配置对象对应的配置操作构造再配置补丁报文;
服务器数据删除保存的配置对象的新数据和配置对象对应的配置操作;
服务器数据库将再配置补丁报文发送服务器代理。
16.根据权利要求14所述的方法,其特征在于,服务器数据库根据保存的配置对象的旧数据和配置对象对应的配置操作的逆操作构造回滚补丁报文之后,服务器数据库将回滚补丁报文发送至服务器代理之前,还包括:
服务器数据库删除保存的配置对象的旧数据和配置对象对应的配置操作的逆操作。
17.根据权利要求14所述的方法,其特征在于,服务器数据库将回滚补丁报文发送至服务器代理之后,还包括:
服务器数据库接收来自服务器代理的删除请求;
服务器数据库根据删除请求删除保存的配置对象对应的配置操作和配置对象的新数据。
18.根据权利要求14至17任意一项所述的方法,其特征在于,回滚补丁报文采用树形结构,其中,所有配置对象的旧数据,以及所有配置对象对应的配置操作的逆操作以树形结构呈现。
19.根据权利要求14至17任意一项所述的方法,其特征在于,回滚补丁报文采用条目记录,其中,一个条目包括一个配置对象的旧数据,以及一个配置对象对应的配置操作的逆操作或一个条目包括一个配置对象对应的配置操作的逆操作。
20.根据权利要求14至17任意一项所述的方法,其特征在于,再配置补丁报文采用树形结构,其中,所有配置对象的新数据,以及所有配置对象对应的配置操作以树形结构呈现。
21.根据权利要求14至17任意一项所述的方法,其特征在于,再配置补丁报文采用条目记录,其中,一个条目包括一个配置对象的新数据,以及一个配置对象对应的配置操作或一个条目包括一个配置对象对应的配置操作。
22.一种配置变更的方法,其特征在于,所述方法包括:
服务器代理接收来自客户端的配置请求,并根据配置请求生成配置信息发送给服务器数据库,配置信息包括目标对象,对应目标对象的配置操作,以及用于指示需要获取回滚补丁报文的补丁信息;
服务器代理接收来自服务器数据库的回滚补丁报文,回滚补丁报文为服务器数据库根据配置信息从目标对象中确定需要进行配置变更的配置对象后构造的,回滚补丁报文包括配置对象在配置信息中对应的配置操作的逆操作和配置对象的旧数据;
服务器代理对回滚补丁报文进行逆解析,得到配置变更信息,配置变更信息包括对配置对象执行的配置操作;
服务器代理将配置变更信息发送至目标应用,目标应用为订阅配置变更信息的应用;
若服务器代理接收来自目标业务的第一应答信息,第一应答信息用于指示目标业务接受配置对象对应的配置操作;
服务器代理发送变更请求至服务器数据库,变更请求用于指示服务器数据库执行配置变更。
23.根据权利要求22所述的方法,其特征在于,配置请求包括用于指示需要获取再配置补丁报文的补丁信息,服务器代理发送变更请求至服务器数据库之后,还包括:
服务器代理接收来自服务器数据库的再配置补丁报文,再配置补丁报文包括配置对象的新数据和配置对象在配置信息中对应的配置操作;
服务器代理发送再配置补丁报文至客户端。
24.根据权利要求22所述的方法,其特征在于,服务器代理将配置变更信息发送至目标应用之后,还包括:
若服务器代理接收来自目标应用的第二应答信息,第二应答信息用于指示目标应用不接受对配置对象对应的配置操作;
服务器代理发送删除请求至服务器数据库,删除请求用于指示服务器数据库删除保存的配置对象对应的配置操作和配置对象的新数据;
服务器代理将第二应答信息发送至客户端。
25.一种配置变更的方法,其特征在于,所述方法包括:
服务器接收来自客户端的配置请求,并根据配置请求生成配置信息,配置信息包括目标对象,对应目标对象的配置操作,以及用于指示需要获取回滚补丁报文的补丁信息;
服务器根据生成的配置信息以及本地配置信息从目标对象中确定出需要进行配置变更的配置对象;
服务器保存配置对象的新数据、配置对象在生成的配置信息中对应的配置操作、配置对象的旧数据以及配置对象在生成的配置信息中对应的配置操作的逆操作;
服务器根据保存的配置对象的旧数据和配置对象对应的配置操作的逆操作构造回滚补丁报文;
服务器对回滚补丁报文进行逆解析,得到配置变更信息,配置变更信息包括对配置对象执行的配置操作;
服务器将配置变更信息发送至目标应用,目标应用为订阅配置变更信息的应用;
若服务器接收来自目标业务的第一应答信息,第一应答信息用于指示目标业务接受配置对象对应的配置操作;
服务器根据保存的配置对象对应的配置操作执行配置变更。
26.根据权利要求25所述的方法,其特征在于,配置请求包括用于指示需要获取再配置补丁报文的补丁信息,服务器根据保存的配置对象对应的配置操作执行配置变更之后,还包括:
服务器根据保存的配置对象的新数据和配置对象在配置信息中对应的配置操作构造再配置补丁报文;
服务器发送再配置补丁报文至客户端。
27.根据权利要求25所述的方法,其特征在于,服务器根据保存的配置对象的旧数据和配置对象对应的配置操作的逆操作构造回滚补丁报文之后,还包括:
服务器删除保存的配置对象的旧数据和配置对象对应的配置操作的逆操作。
28.根据权利要求25所述的方法,其特征在于,服务器将配置变更信息发送至目标应用之后,还包括:
若服务器接收来自目标应用的第二应答信息,第二应答信息用于指示目标应用不接受对配置对象对应的配置操作;
服务器删除保存的配置对象对应的配置操作和配置对象的新数据;
服务器将第二应答信息发送至客户端。
29.一种服务器数据库,其特征在于,所述服务器数据库包括:
接收模块,用于接收来自服务器代理的配置信息,配置信息包括目标对象,对应目标对象的配置操作,以及用于指示需要获取再配置补丁报文的补丁信息;
处理模块,用于根据接收的配置信息以及本地配置信息从目标对象中确定出需要进行配置变更的配置对象;
处理模块,还用于保存配置对象在接收的配置信息中对应的配置操作和配置对象的新数据,并根据保存的配置对象对应的配置操作和配置对象的新数据构造再配置补丁报文;
发送模块,用于将再配置补丁报文发送给服务器代理;
接收模块,还用于接收来自服务器代理的变更请求,变更请求用于指示服务器数据库执行配置变更;
处理模块,还用于根据保存的配置对象对应的配置操作执行配置变更。
30.根据权利要求29所述的服务器数据库,其特征在于,接收模块,还用于接收来自服务器代理的删除请求;
处理模块,还用于根据删除请求删除保存的配置对象对应的配置操作和配置对象的新数据。
31.根据权利要求29或30所述的服务器数据库,其特征在于,再配置补丁报文采用树形结构,其中,所有配置对象的新数据,以及所有配置对象对应的配置操作以树形结构呈现。
32.根据权利要求29或30所述的服务器数据库,其特征在于,再配置补丁报文采用条目记录,其中,一个条目包括一个配置对象的新数据,以及一个配置对象对应的配置操作或一个条目包括对一个配置对象执行的配置操作。
33.一种服务器代理,其特征在于,所述服务器代理包括:
第一接收模块,用于接收来自客户端的配置请求;
处理模块,用于根据配置请求生成配置信息;
发送模块,用于将配置信息发送给服务器数据库,配置信息包括目标对象,对应目标对象的配置操作,以及用于指示需要获取再配置补丁报文的补丁信息;
第二接收模块,用于接收来自服务器数据库的再配置补丁报文,再配置补丁报文为服务器数据库根据配置信息从目标对象中确定需要进行配置变更的配置对象后构造的,再配置补丁报文包括配置对象在配置信息中对应的配置操作和配置对象的新数据;
处理模块,还用于从再配置补丁报文中获取配置变更信息,配置变更信息包括配置对象对应的配置操作;
发送模块,还用于将配置变更信息发送至目标应用,目标应用为订阅配置变更信息的应用;
第二接收模块,还用于若接收来自目标应用的第一应答信息,第一应答信息用于指示目标应用接受配置对象对应的配置操作;
发送模块,还用于发送变更请求至服务器数据库,变更请求用于指示服务器数据库执行配置变更。
34.根据权利要求33所述的服务器代理,其特征在于,若配置请求包括用于指示需要获取再配置补丁报文的补丁信息,则发送模块,还用于将再配置补丁报文发送至客户端。
35.根据权利要求33所述的服务器代理,其特征在于,若配置请求包括用于指示需要获取变更补丁报文的补丁信息,则处理模块,还用于根据配置对象对应的配置操作构造变更补丁报文;
发送模块,还用于将变更补丁报文发送至客户端。
36.根据权利要求33所述的服务器代理,其特征在于,第二接收模块,还用于若接收来自目标应用的第二应答信息,第二应答信息用于指示目标应用不接受对配置对象对应的配置操作;
发送模块,还用于发送删除请求至服务器数据库,删除请求用于指示服务器数据库删除保存的配置对象对应的配置操作和配置对象的新数据;
发送模块,还用于将第二应答信息发送至客户端。
37.一种服务器,其特征在于,包括如权利要求29至32任意一项所述的服务器数据库和如权利要求33至36任意一项所述的服务器代理。
38.一种服务器数据库,其特征在于,所述服务器数据库包括:
接收模块,用于接收来自服务器代理的配置信息,配置信息包括目标对象,对应目标对象的配置操作,以及用于指示需要获取回滚补丁报文的补丁信息;
处理模块,用于根据接收的配置信息以及本地配置信息从目标对象中确定出需要进行配置变更的配置对象;
处理模块,还用于保存配置对象的新数据、配置对象在接收的配置信息中对应的配置操作、配置对象的旧数据以及配置对象在接收的配置信息中对应的配置操作的逆操作;
处理模块,还用于根据保存的配置对象的旧数据和配置对象对应的配置操作的逆操作构造回滚补丁报文;
发送模块,用于将回滚补丁报文发送至服务器代理;
接收模块,还用于接收来自服务器代理的变更请求,变更请求用于指示服务器数据库执行配置变更;
处理模块,还用于根据保存的配置对象对应的配置操作执行配置变更。
39.根据权利要求38所述的服务器数据库,其特征在于,处理模块,还用于根据保存的配置对象的新数据和配置对象对应的配置操作构造再配置补丁报文;
处理模块,还用于删除保存的配置对象的新数据和配置对象对应的配置操作;
发送模块,还用于将再配置补丁报文发送服务器代理。
40.根据权利要求38所述的服务器数据库,其特征在于,处理模块,还用于删除保存的配置对象的旧数据和配置对象对应的配置操作的逆操作。
41.根据权利要求38所述的服务器数据库,其特征在于,接收模块,还用于接收来自服务器代理的删除请求;
处理模块,还用于根据删除请求删除保存的配置对象对应的配置操作和配置对象的新数据。
42.根据权利要求38至41任意一项所述的服务器数据库,其特征在于,回滚补丁报文采用树形结构,其中,所有配置对象的旧数据,以及所有配置对象对应的配置操作的逆操作以树形结构呈现。
43.根据权利要求38至41任意一项所述的服务器数据库,其特征在于,回滚补丁报文采用条目记录,其中,一个条目包括一个配置对象的旧数据,以及一个配置对象对应的配置操作的逆操作或一个条目包括一个配置对象对应的配置操作的逆操作。
44.根据权利要求38至41任意一项所述的服务器数据库,其特征在于,再配置补丁报文采用树形结构,其中,所有配置对象的新数据,以及所有配置对象对应的配置操作以树形结构呈现。
45.根据权利要求38至41任意一项所述的服务器数据库,其特征在于,再配置补丁报文采用条目记录,其中,一个条目包括一个配置对象的新数据,以及一个配置对象对应的配置操作或一个条目包括一个配置对象对应的配置操作。
46.一种服务器代理,其特征在于,包括:
第一接收模块,用于接收来自客户端的配置请求;
处理模块,用于根据配置请求生成配置信息;
发送模块,用于将配置信息发送给服务器数据库,配置信息包括目标对象,对应目标对象的配置操作,以及用于指示需要获取回滚补丁报文的补丁信息;
第二接收模块,用于接收来自服务器数据库的回滚补丁报文,回滚补丁报文为服务器数据库根据配置信息从目标对象中确定需要进行配置变更的配置对象后构造的,回滚补丁报文包括配置对象在配置信息中对应的配置操作的逆操作和配置对象的旧数据;
处理模块,还用于对回滚补丁报文进行逆解析,得到配置变更信息,配置变更信息包括对配置对象执行的配置操作;
发送模块,还用于将配置变更信息发送至目标应用,目标应用为订阅配置变更信息的应用;
第二接收模块,还用于若接收来自目标业务的第一应答信息,第一应答信息用于指示目标业务接受配置对象对应的配置操作;
发送模块,还用于发送变更请求至服务器数据库,变更请求用于指示服务器数据库执行配置变更。
47.根据权利要求46所述的服务器代理,其特征在于,配置请求包括用于指示需要获取再配置补丁报文的补丁信息,所述服务器代理,还包括:
第二接收模块,还用于接收来自服务器数据库的再配置补丁报文,再配置补丁报文包括配置对象的新数据和配置对象在配置信息中对应的配置操作;
发送模块,还用于发送再配置补丁报文至客户端。
48.根据权利要求46所述的服务器代理,其特征在于,第二接收模块,还用于若接收来自目标应用的第二应答信息,第二应答信息用于指示目标应用不接受对配置对象对应的配置操作;
发送模块,还用于发送删除请求至服务器数据库,删除请求用于指示服务器数据库删除保存的配置对象对应的配置操作和配置对象的新数据;
发送模块,还用于将第二应答信息发送至客户端。
49.一种服务器,其特征在于,包括如权利要求38至45任意一项所述的服务器数据库和如46至48任意一项所述的服务器代理。
50.一种服务器,其特征在于,所述服务器包括:一个或一个以上处理器,输入输出接口,电源;
所述处理器用于执行权利要求1至28中任意一项所述的方法。
51.一种网络架构,其特征在于,所述网络架构包括客户端和如权利要求37或49或50所述的服务器。
52.一种计算机可读存储介质,存储有程序指令,其特征在于,当所述程序指令在计算机设备上运行时,使得所述计算机设备执行如权利要求1至28任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911252740.3A CN112532415B (zh) | 2019-09-19 | 2019-09-19 | 一种配置变更的方法及相关装置 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911252740.3A CN112532415B (zh) | 2019-09-19 | 2019-09-19 | 一种配置变更的方法及相关装置 |
CN201910888312.3A CN110391949B (zh) | 2019-09-19 | 2019-09-19 | 一种配置变更的方法及相关装置 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910888312.3A Division CN110391949B (zh) | 2019-09-19 | 2019-09-19 | 一种配置变更的方法及相关装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112532415A CN112532415A (zh) | 2021-03-19 |
CN112532415B true CN112532415B (zh) | 2022-05-17 |
Family
ID=68289704
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911252740.3A Expired - Fee Related CN112532415B (zh) | 2019-09-19 | 2019-09-19 | 一种配置变更的方法及相关装置 |
CN201910888312.3A Expired - Fee Related CN110391949B (zh) | 2019-09-19 | 2019-09-19 | 一种配置变更的方法及相关装置 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910888312.3A Expired - Fee Related CN110391949B (zh) | 2019-09-19 | 2019-09-19 | 一种配置变更的方法及相关装置 |
Country Status (2)
Country | Link |
---|---|
CN (2) | CN112532415B (zh) |
WO (1) | WO2021052502A1 (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112532415B (zh) * | 2019-09-19 | 2022-05-17 | 华为技术有限公司 | 一种配置变更的方法及相关装置 |
CN110912743B (zh) * | 2019-11-26 | 2021-11-16 | 中国银联股份有限公司 | 一种执行配置指令的方法及装置 |
CN111130872A (zh) * | 2019-12-19 | 2020-05-08 | 紫光云技术有限公司 | 一种云计算中网络设备配置恢复方法 |
CN113064658B (zh) * | 2019-12-31 | 2023-09-08 | 北京华为数字技术有限公司 | 配置数据的拷贝方法、装置、设备及计算机可读存储介质 |
CN113157462A (zh) * | 2020-01-22 | 2021-07-23 | 华为技术有限公司 | 数据管理方法、装置、设备、计算机可读存储介质及系统 |
CN116055309A (zh) * | 2021-10-28 | 2023-05-02 | 华为技术有限公司 | 配置管理的方法、装置、系统、存储介质及程序产品 |
CN118282847A (zh) * | 2022-12-30 | 2024-07-02 | 华为技术有限公司 | 配置回退点的控制方法、装置、电子设备以及存储介质 |
CN116389262B (zh) * | 2023-06-02 | 2023-08-18 | 新华三技术有限公司 | 一种配置回滚方法、装置、电子设备及存储介质 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6233582B1 (en) * | 1998-05-14 | 2001-05-15 | Sun Microsystems, Inc. | Persistent storage interface for a configuration object-based system |
US8942689B2 (en) * | 2007-03-06 | 2015-01-27 | Qualcomm Incorporated | Method and technology for remote administration of wireless devices |
CN101163043B (zh) * | 2007-11-08 | 2010-06-02 | 华为技术有限公司 | 一种网络管理功能配置方法以及网络管理功能配置系统 |
CN100591022C (zh) * | 2007-11-29 | 2010-02-17 | 上海华为技术有限公司 | 一种实现批配置预激活的方法和装置 |
CN101977127B (zh) * | 2010-11-26 | 2013-04-10 | 迈普通信技术股份有限公司 | 基于snmp的设备配置回滚方法以及snmp网管设备 |
CN102725999B (zh) * | 2011-06-30 | 2014-08-20 | 华为技术有限公司 | 数据配置方法和电信系统设备 |
CN102427409A (zh) * | 2012-01-31 | 2012-04-25 | 迈普通信技术股份有限公司 | 基于网络配置协议的配置数据提交方法及服务器 |
US9699029B2 (en) * | 2014-10-10 | 2017-07-04 | Brocade Communications Systems, Inc. | Distributed configuration management in a switch group |
CN107038085B (zh) * | 2016-02-03 | 2021-01-08 | 阿里巴巴集团控股有限公司 | 一种客户端应用的修复方法、装置及系统 |
US10289401B1 (en) * | 2016-12-30 | 2019-05-14 | Juniper Networks, Inc | Systems and methods for efficiently downgrading operating systems installed on network devices |
CN110018835B (zh) * | 2018-01-09 | 2022-08-02 | 中兴通讯股份有限公司 | Yang模型配置数据处理方法及装置、终端设备及存储介质 |
CN108632101B (zh) * | 2018-05-31 | 2020-02-14 | 北京百度网讯科技有限公司 | 用于更新配置对象的方法和装置、边缘计算设备、介质 |
CN109361553B (zh) * | 2018-11-30 | 2022-04-08 | 新华三技术有限公司合肥分公司 | 配置回滚方法及装置 |
CN112532415B (zh) * | 2019-09-19 | 2022-05-17 | 华为技术有限公司 | 一种配置变更的方法及相关装置 |
-
2019
- 2019-09-19 CN CN201911252740.3A patent/CN112532415B/zh not_active Expired - Fee Related
- 2019-09-19 CN CN201910888312.3A patent/CN110391949B/zh not_active Expired - Fee Related
-
2020
- 2020-09-21 WO PCT/CN2020/116618 patent/WO2021052502A1/zh active Application Filing
Also Published As
Publication number | Publication date |
---|---|
WO2021052502A1 (zh) | 2021-03-25 |
CN112532415A (zh) | 2021-03-19 |
CN110391949B (zh) | 2019-12-13 |
CN110391949A (zh) | 2019-10-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112532415B (zh) | 一种配置变更的方法及相关装置 | |
US20190026193A1 (en) | Method and apparatus for executing data recovery operation | |
CN111752799A (zh) | 一种业务链路跟踪方法、装置、设备及储存介质 | |
CN110018996B (zh) | 一种分布式存储系统的快照回滚方法及相关装置 | |
CN114020840A (zh) | 一种数据处理方法、装置、服务器、存储介质及产品 | |
CN111355802A (zh) | 信息推送方法和装置 | |
CN112241437A (zh) | 数据库多主同步的回环控制方法、装置、设备及存储介质 | |
CN112445861B (zh) | 信息处理方法、装置、系统及存储介质 | |
CN110888672B (zh) | 一种基于元数据架构的表达式引擎实现方法及系统 | |
CN115827380A (zh) | 云平台监控方法及云平台监控系统 | |
CN115204736A (zh) | 一种业务系统与工作流引擎交互方法及系统 | |
CN118394541A (zh) | 消息同步方法、装置、计算机设备、存储介质 | |
CA3065729A1 (en) | Business rules processing framework | |
CN104660447A (zh) | 一种snmp节点信息的管理方法和管理系统 | |
CN114996361B (zh) | 数据处理方法及系统 | |
CN104022896A (zh) | 一种配置管理方法、装置及网络设备 | |
CN112291312B (zh) | Etl数据同步方法及装置、电子设备、存储介质 | |
CN116033002A (zh) | 一种业务字段配置方法、装置、设备及可读存储介质 | |
CN113805850A (zh) | 基于多种深度学习和机器学习框架的人工智能管理系统 | |
CN111782608B (zh) | 文件自动生成方法、装置、电子设备及存储介质 | |
CN114519071A (zh) | 规则匹配模型的生成方法、匹配方法、系统、设备和介质 | |
US20170228427A1 (en) | Information processing device, method, and medium | |
CN113360558A (zh) | 数据处理方法、数据处理装置、电子设备及存储介质 | |
US20100325151A1 (en) | Method and apparatus for searching in a memory-efficient manner for at least one query data element | |
CN104834724A (zh) | 一种数据库同步方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20220517 |