CN105933155B - 控制服务器升级的装置及方法 - Google Patents
控制服务器升级的装置及方法 Download PDFInfo
- Publication number
- CN105933155B CN105933155B CN201610361851.8A CN201610361851A CN105933155B CN 105933155 B CN105933155 B CN 105933155B CN 201610361851 A CN201610361851 A CN 201610361851A CN 105933155 B CN105933155 B CN 105933155B
- Authority
- CN
- China
- Prior art keywords
- server
- group
- upgrading
- request
- priority
- 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.)
- Active
Links
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/0876—Aspects of the degree of configuration automation
- H04L41/0886—Fully automatic configuration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- 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
- H04L41/082—Configuration setting characterised by the conditions triggering a change of settings the condition being updates or upgrades of network functionality
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Computer And Data Communications (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种控制服务器升级的方法,属于网络控制技术领域。所述方法包括:根据至少两个服务器各自对应的升级优先级,确定所述至少两个服务器中的待升级服务器,所述至少两个服务器中升级优先级低的服务器的全部或部分功能依赖于至少一个升级优先级高的服务器;向所述待升级服务器发送升级指令,所述升级指令用于指示所述待升级服务器开始升级,根据各个服务器之间的依赖关系自动确定哪些服务器可以进行升级,并自动控制可以升级的服务器进行升级,不需要手动选择待升级的服务器,从而达到减少服务器升级所占用的人力和时间,降低服务器升级复杂度,以及提高待升级服务器选择准确性的效果。
Description
技术领域
本发明涉及网络控制技术领域,特别涉及一种控制服务器升级的装置及方法。
背景技术
大型网络服务平台通常由成千上万台的服务器来支撑日常的业务运营。由于平台漏洞修复和新的功能特性上线等因素,有时需要对这些服务器进行升级。
基于某些业务特性的需要,服务器间可能存在一定的依赖关系,某些服务器必须在其他服务器升级之后才能升级。例如,某个服务器升级后数据库中新增了一个业务属性,而其他服务器需要读取该新增的属性用来展示和处理新业务。如果先升级其他服务器,而该服务器的数据库还没有升级,则会导致其他服务器无法正确展示和进行该新业务的处理。
在现有技术中,平台管理人员可以通过升级工具批量升级服务器,比如,升级工具提供操作界面,平台管理人员根据各个服务器之间的依赖关系,在该操作界面中手动选择一批服务器进行升级,当这些服务器升级完成后,再选择下一批可以升级的服务器。
在实现本发明的过程中,发明人发现现有技术存在如下问题:
通过升级工具批量升级服务器时,各个服务器的升级时序依赖人工去控制,当服务器个数较多时,每次升级都会占用大量的人力和时间,服务器升级操作过程较为复杂,人工维护成本高。
发明内容
为了解决现有技术中各个服务器的升级时序依赖人工去控制,当服务器个数较多时,每次升级都会占用大量的人力和时间,服务器升级操作过程较为复杂,人工维护成本高的问题,本申请提供了一种控制服务器升级的装置及方法。
第一方面,本发明提供了一种控制服务器升级的方法,包括:
根据至少两个服务器各自对应的升级优先级,确定所述至少两个服务器中的待升级服务器,所述至少两个服务器中升级优先级低的服务器的全部或部分功能依赖于至少一个升级优先级高的服务器;向所述待升级服务器发送升级指令,所述升级指令用于指示所述待升级服务器开始升级。
本发明实施例提供的控制服务器升级的方法,通过根据至少两个服务器各自对应的、用于指示该至少两个服务器之间的依赖关系的升级优先级,确定该至少两个服务器中的待升级服务器,并向该待升级服务器发送升级指令,指示该待升级服务器开始升级,根据各个服务器之间的依赖关系自动确定哪些服务器可以进行升级,并自动控制可以升级的服务器进行升级,不需要手动选择待升级的服务器,从而达到减少服务器升级所占用的人力和时间,降低服务器升级复杂度,以及提高待升级服务器选择准确性的效果。
在第一方面的第一种可能实现方式中,所述升级优先级包括群组优先级和服务器优先级;所述群组优先级用于指示对应服务器所在的群组的优先级,所述服务器优先级用于指示对应服务器在所述对应服务器所在的群组中的优先级;其中,所述群组优先级低的群组中包含的服务器的全部或部分功能依赖于至少一个所述群组优先级高的群组中包含的服务器;在一个所述群组内,所述服务器优先级低的服务器的全部或部分功能依赖于至少一个服务器优先级高的服务器。
结合第一方面的第一种可能实现方式,在第一方面的第二种可能实现方式中,所述根据至少两个服务器各自对应的升级优先级,确定所述至少两个服务器中的待升级服务器,包括:
当接收到所述至少两个服务器中的请求服务器发送的升级请求时,查询至少一个目标群组,所述至少一个目标群组是尚未完成升级的各个群组中、群组优先级最高的所述群组;获取可升级列表,所述可升级列表中包含每一个所述目标群组中尚未完成升级的各个服务器中、服务器优先级最高的至少一个服务器;检测所述请求服务器是否存在于所述可升级列表中;若所述请求服务器存在于所述可升级列表中,则确定所述请求服务器为所述待升级服务器。
提供一种服务器主动请求时,根据服务器之间的依赖关系自动控制服务器进行升级的方法,达到减少服务器升级所占用的人力和时间,降低服务器升级复杂度,以及提高待升级服务器选择准确性的效果。
结合第一方面的第一种可能实现方式,在第一方面的第三种可能实现方式中,所述根据至少两个服务器各自对应的升级优先级,确定所述至少两个服务器中的待升级服务器,包括:
当接收到所述至少两个服务器中的请求服务器发送的升级请求时,查询所述请求服务器的群组优先级和服务器优先级;检测所述请求服务器的群组优先级是否为所述至少两个服务器中尚未完成升级的各个服务器的群组优先级中的最高优先级;若所述请求服务器的群组优先级是所述至少两个服务器中尚未完成升级的各个服务器的群组优先级中的最高优先级,则检测所述请求服务器的服务器优先级是否为所述请求服务器所在群组内尚未完成升级的各个服务器的服务器优先级中的最高优先级;若所述请求服务器的服务器优先级是所述请求服务器所在群组内尚未完成升级的各个服务器的服务器优先级中的最高优先级,则确定所述请求服务器为所述待升级服务器。
提供另一种服务器主动请求时,根据服务器之间的依赖关系自动控制服务器进行升级的方法,达到减少服务器升级所占用的人力和时间,降低服务器升级复杂度,以及提高待升级服务器选择准确性的效果。
结合第一方面的第一种可能实现方式,在第一方面的第四种可能实现方式中,所述根据至少两个服务器各自对应的升级优先级,确定所述至少两个服务器中的待升级服务器,包括:
查询至少一个目标群组,所述目标群组是尚未完成升级的各个群组中、群组优先级最高的所述群组;对于所述至少一个目标群组中的每一个目标群组,将所述目标群组中尚未完成升级的各个服务器中、服务器优先级最高的至少一个服务器确定为所述待升级服务器。
提供一种控制设备主动根据服务器之间的依赖关系自动控制服务器进行升级的方法,达到减少服务器升级所占用的人力和时间,降低服务器升级复杂度,以及提高待升级服务器选择准确性的效果。
在第一方面的第五种可能实现方式中,所述方法还包括:
在根据至少两个服务器各自对应的升级优先级,确定所述至少两个服务器中的待升级服务器之前,获取所述至少两个服务器之间的依赖关系;根据所述至少两个服务器之间的依赖关系确定所述至少两个服务器各自对应的升级优先级。
控制设备根据各个服务器之间的依赖关系自动确定各个服务器的升级优先级,进一步减少人工操作步骤,降低服务器升级复杂度。
第二方面,本发明实施例提供了一种控制设备,该控制设备包括:处理器和存储器;该处理器被配置为执行存储器中存储的指令;该处理器通过执行指令来实现上述第一方面或第一方面的任意一种可能实现方式所提供的控制服务器升级的方法。
第三方面,本发明实施例提供了一种控制服务器升级的装置,该控制服务器升级的装置包括至少一个单元,该至少一个单元用于实现上述第一方面或第一方面的任意一种可能的实现方式所提供的控制服务器升级的方法。
第四方面,本发明实施例还提供了一种计算机可读介质,该计算机可读介质存储有用于实现第一方面或第一方面的任意一种可能的实现方式所提供的控制服务器升级的方法的指令。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明所涉及的网络环境的架构图;
图2是本发明一个示例性实施例提供的网络设备的结构示意图;
图3是图2所示实施例提供的一种应用程序模块的构成图;
图4是本发明一个实施例提供的控制服务器升级的方法的流程图;
图5是本发明另一实施例提供的控制服务器升级的方法的流程图;
图6是本发明一个实施例提供的控制服务器升级的装置的框图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
请参考图1,其示出了本发明所涉及的网络环境的架构图。该网络环境包括以下网络设备:控制设备110以及至少两个服务器120。
至少两个服务器120可以组成一个或多个大型网络服务平台,每个服务器120负责该大型网络服务平台中的一项或多项功能。每个服务器120可以是单台服务器,或者,每个服务器120也可以由多台实现相同功能的服务器组成。在本发明实施例所示的网络环境中,一个服务器120中的全部或者部分功能的实现可能需要另一个服务器120提供数据支持。
控制设备110与至少两个服务器120相连接,在本发明各个实施例中,控制设备110是所有服务器120的升级控制的总设备,控制所有服务器120能够按一定的依赖时序进行升级。
可选的,该网络环境还可以包括至少一个升级包数据库130,每个升级包数据库130连接一个或多个服务器120,并存储该一个或多个服务器120升级所需的升级数据包。
请参考图2,其示出了本发明一个示例性实施例提供的网络设备的结构示意图。该网络设备20可以实现为上述图1所示网络环境中的控制设备110。
该网络设备20可以包括:处理器21、存储器23以及通信接口24。
处理器21可以包括一个或者一个以上中央处理单元(英文:Central ProcessingUnit,缩写:CPU)。处理器21通过运行软件程序以及模块,从而执行各种功能应用以及业务数据处理。
通信接口24包括包处理器(英文:packet processor)和网络接口。包处理器解析到达网络设备的数据包后,将数据包发送给处理器21进行处理,或者,也可以将该数据包通过网络接口转发给上级/下级设备。网络接口可以包含有线网络接口,比如以太网接口,也可以包含无线网络接口。
可选的,该网络设备20还可以包括通信总线22。存储器23和通信接口24分别通过通信总线22与处理器21相连。
存储器23可用于存储软件程序以及模块,该软件程序以及模块由处理器21执行。此外,该存储器23中还可以存储各类业务数据和用户数据。
在本发明实施例中,存储器23中存储的软件程序以及模块中可以包括由处理器21执行的至少一个功能所需的应用程序模块26。
请参考图3,其示出了本发明实施例涉及的一种应用程序模块的组成示意图,其中,该应用程序模块26可以是:第一确定模块26a、指令发送模块26b、获取模块26c以及第二确定模块26d;
第一确定模块26a,用于根据至少两个服务器各自对应的升级优先级,确定所述至少两个服务器中的待升级服务器,所述至少两个服务器中升级优先级低的服务器的全部或部分功能依赖于至少一个升级优先级高的服务器。
指令发送模块26b,用于向所述待升级服务器发送升级指令,所述升级指令用于指示所述待升级服务器开始升级。
获取模块26c,用于在所述第一确定单元根据至少两个服务器各自对应的升级优先级,确定所述至少两个服务器中的待升级服务器之前,获取所述至少两个服务器之间的依赖关系。
第二确定模块26d,用于根据所述至少两个服务器之间的依赖关系确定所述至少两个服务器各自对应的升级优先级。
此外,该网络设备20还可以包括输出设备25以及输入设备27。输出设备25和输入设备27也通过通信总线22与处理器21相连。输出设备25可以是用于显示信息的显示器、播放声音的功放设备或者打印机等,输出设备25还可以包括输出控制器,用以提供输出到显示屏、功放设备或者打印机。输入设备27可以是用于用户输入信息的诸如鼠标、键盘、电子触控笔或者触控面板之类的设备,输入设备27还可以包括输出控制器以用于接收和处理来自鼠标、键盘、电子触控笔或者触控面板等设备的输入。
本发明各个实施例所示的方案,控制设备可以根据至少两个服务器各自对应的升级优先级,确定至少两个服务器中的待升级服务器,该至少两个服务器中升级优先级低的服务器的全部或部分功能依赖于至少一个升级优先级高的服务器,控制设备向待升级服务器发送升级指令,用于指示待升级服务器开始升级。其中,控制设备控制服务器进行升级时,可以由服务器向控制设备主动发起升级请求,并在控制设备的控制下进行升级,或者,也可以由控制设备主动通知服务器进行升级。本发明下面的实施例将以这两种情形为例分别进行说明。
请参考图4,其示出了本发明一个实施例提供的控制服务器升级的方法的流程图。该方法可以用于图1所示的网络环境的控制设备110中。如图4所示,以服务器120向控制设备110主动发起升级请求,并在控制设备110的控制下进行升级为例,该控制服务器升级的方法可以包括:
步骤401,控制设备获取至少两个服务器之间的依赖关系。
在本发明实施例中,服务器之间的依赖关系是指一个服务器的全部或部分功能依赖于另外至少一个服务器。比如,假设某网络服务平台中的服务器a对外提供某项查询业务时,需要从服务器b获取相关的业务数据,则认为服务器a对服务器b有依赖关系。
控制设备获取至少两个服务器之间的依赖关系时,可以接收各个服务器上报的依赖信息,该依赖信息用于指示对应的服务器所依赖的服务器,比如,服务器a依赖服务器b,则服务器a上报给控制设备的依赖信息中可以包含服务器b的标识。控制设备对各个服务器发送的依赖信息进行统计,获得各个服务器之间的依赖关系。
或者,在另一种可能的实现方式中,也可以由管理人员通过控制设备的控制界面手动输入或者设置各个服务器之间的依赖关系。
该步骤401可以由上述图2所示网络设备中的处理器21执行获取模块26c来实现。
步骤402,控制设备根据该至少两个服务器之间的依赖关系确定该至少两个服务器各自对应的升级优先级。
其中,该升级优先级包括群组优先级和服务器优先级;该群组优先级用于指示对应服务器所在的群组的优先级,该服务器优先级用于指示对应服务器在该对应服务器所在的群组中的优先级;其中,该群组优先级低的群组中包含的服务器的全部或部分功能依赖于至少一个该群组优先级高的群组中包含的服务器;在一个该群组内,该服务器优先级低的服务器的全部或部分功能依赖于至少一个服务器优先级高的服务器。
控制设备在根据该至少两个服务器之间的依赖关系确定该至少两个服务器各自对应的升级优先级时,可以根据该至少两个服务器之间的依赖关系自动生成各个服务器对应的升级优先级。或者,控制设备也可以向管理人员展示根据各个服务器之间的依赖关系(比如,向管理人员展示可以指示各个服务器之间的依赖关系的网状图,该网状图中的每个节点表示一个服务器,服务器之间的依赖关系通过节点之间的箭头表示),由管理人员根据展示的依赖关系来设置各个服务器的升级优先级。
比如,网络服务平台中有服务器A、B、C、D和E五个服务器,服务器A依赖服务器B,服务器C依赖服务器D,服务器C/D与服务器A/B不相互依赖。服务器E依赖服务器A、B、C、D。则控制设备可以将服务器A、B、C、D、E划分为三个服务器群组,其中,
群组1包括:服务器A、服务器B;
群组2包括:服务器C、服务器D;
群组3包括:服务器E。
上述三个群组具有各自的群组优先级,并且各个服务器还具有自己的服务器优先级。上述三个群组中每个服务器的升级优先级可以表示为X-x,其中,X为服务器对应的群组优先级,x为该服务器对应的服务器优先级。
比如,在上述三个群组中,群组1和群组2之间互不依赖,则群组1和群组2的群组优先级可以为1(优先级数字越小,表示优先级越高),群组3中的服务器需要依赖群组1和群组2中的服务器,则群组3的群组优先级需要比群组1和群组2的群组优先级低,比如,群组3的群组优先级可以为2。在单个群组内,比如,在群组1内,服务器A需要依赖服务器B,则服务器A的服务器优先级可以设置为2,服务器B的服务器优先级可以设置为优先级1,同理,在群组2中,服务器C需要依赖服务器D,则服务器C的服务器优先级可以设置为2,服务器D的服务器优先级可以设置为优先级1。群组3中只存在一个服务器E,则服务器E的服务器优先级可以设置为1。
综上,服务器A、B、C、D和E的升级优先级可以如下表1所示:
表1
可选的,在本发明实施例中,控制设备确定该至少两个服务器各自对应的升级优先级之后,管理人员还可以对其进行人工干预调整,比如,控制设备可以提供升级优先级调整界面,管理人员在该调整界面中对某一个或者多个服务器的升级优先级进行人工调整。
该步骤402可以由上述图2所示网络设备中的处理器21执行第二确定模块26d来实现。
步骤403,控制设备向该至少两个服务器发送可升级通知,该至少两个服务器中的请求服务器接收该可升级通知,该可升级通知用于指示可以进行服务器升级。
当至少两个服务器需要升级时,控制设备向该至少两个服务器分别发送可升级通知,以通知这些服务器可以进行升级。
步骤404,请求服务器向控制设备发送升级请求,控制设备接收该升级请求。
该至少两个服务器中的一个请求服务器接收到可升级通知后,即可以向控制设备发送升级请求,以查询该请求服务器是否可以进行升级。
步骤405,控制设备查询至少一个目标群组,该至少一个目标群组是尚未完成升级的各个群组中、群组优先级最高的该群组。
步骤406,控制设备获取可升级列表,该可升级列表中包含每一个该目标群组中尚未完成升级的各个服务器中、服务器优先级最高的至少一个服务器。
步骤407,控制设备检测该请求服务器是否存在于该可升级列表中。
步骤408,若该请求服务器存在于该可升级列表中,则控制设备确定该请求服务器为待升级服务器,向请求服务器发送升级指令,该升级指令用于指示该请求服务器开始升级。
控制设备接收到请求服务器发送的升级请求后,首先根据该请求服务器的升级优先级检测该请求服务器是否可以升级(即检测其是否为此时的待升级服务器)。在上述步骤405至步骤408所示的方案中,控制设备首先生成用于指示当前可升级的各个服务器的可升级列表,再检测请求服务器是否存在与该可升级列表中,如果是,则说明当前未完成升级的其它服务器中没有该请求服务器需要依赖的服务器,并向其发送升级指令。
可选的,在另一种可能的实现方式中,控制设备在接收到该至少两个服务器中的请求服务器发送的升级请求时,也可以不获取可升级列表,而是直接查询该请求服务器的升级优先级是否为当前可升级的各个服务器中的最高优先级,如果是,则向请求服务器发送升级指令,其实现过程如下:
控制设备查询该请求服务器的群组优先级和服务器优先级;检测该请求服务器的群组优先级是否为该至少两个服务器中尚未完成升级的各个服务器的群组优先级中的最高优先级;若该请求服务器的群组优先级是该至少两个服务器中尚未完成升级的各个服务器的群组优先级中的最高优先级,则进一步检测该请求服务器的服务器优先级是否为该请求服务器所在群组内尚未完成升级的各个服务器的服务器优先级中的最高优先级;若该请求服务器的服务器优先级是该请求服务器所在群组内尚未完成升级的各个服务器的服务器优先级中的最高优先级,则确定该请求服务器为该待升级服务器。
在上述实现过程中,控制设备首先检测请求服务器的群组优先级是否为该至少两个服务器中尚未完成升级的各个服务器的群组优先级中的最高优先级,如果是,则说明该请求服务器所在的群组之外的其他群组中,不可能存在该请求服务器需要依赖且未完成升级的服务器;反之,如果否,则说明该请求服务器所在的群组之外的其他群组中,可能存在该请求服务器需要依赖且未完成升级的服务器,此时可以判定请求服务器不是待升级服务器。
如果请求服务器的群组优先级是尚未完成升级的各个服务器的群组优先级中的最高优先级,则控制设备进一步检测该请求服务器的服务器优先级是否为该请求服务器所在群组内尚未完成升级的各个服务器的服务器优先级中的最高优先级,如果是,则说明在该群组内不存在该请求服务器需要依赖的服务器;反之,如果否,则说明该群组存在该请求服务器需要依赖的服务器,此时可以判定请求服务器不是待升级服务器。如果该请求服务器的服务器优先级是该请求服务器所在群组内尚未完成升级的各个服务器的服务器优先级中的最高优先级,则控制设备向该请求服务器发送升级指令。
上述步骤405至步骤407中控制设备确定该请求服务器为该待升级服务器的过程可以由上述图2所示网络设备中的处理器21执行第一确定模块26a来实现,上述步骤407中控制设备向请求服务器发送升级指令的过程可以由上述图2所示网络设备中的处理器21执行指令发送模块26b来实现。
步骤409,请求服务器接收升级指令并开始升级。
请求服务器接收到该升级指令之后,即可以从该请求服务器对应的升级包数据库中提取升级数据包并自动进行升级。
步骤410,请求服务器升级完成后向控制设备发送完成响应。
请求服务器升级完成之后,将通知控制设备,以便控制设备及时更新该请求服务器的升级状态。
步骤411,若该请求服务器不存在于该可升级列表中,则控制设备向请求服务器发送休眠指令。
如果请求服务器不存在与上述可升级列表中,则说明未完成升级的其它服务器中可能存在该请求服务器需要依赖的服务器,此时,控制设备控制请求服务器进入休眠状态,暂不升级。
步骤412,请求服务器接收该休眠指令,并在休眠指定时间后重新发送升级请求。
请求服务器在休眠的一段时间之后,重新向控制设备发起升级请求。
比如,以上述服务器A、B、C、D和E为例,控制设备向服务器A、B、C、D和E分别发送可升级通知,控制设备确定当前优先级最高且未完成升级的群组为群组1和群组2,进一步确定群组1和群组2中各自服务器优先级最高的服务器为服务器B和服务器D,则生成用于指示服务器B和服务器D的可升级别表,此时,若控制设备接收到服务器B或者D发送的升级请求,检测出服务器B或者D存在于可升级列表中,则向服务器B或者D发送升级指令,服务器B或者D接收到升级指令后,从升级包数据库获取升级数据包并进行升级,并在升级完成后向控制设备返回升级完成响应,控制设备接收到升级完成响应后,可以将服务器B或者服务器D从可升级列表中移除,当可升级列表中所有服务器都被移除时,控制设备重新获取可升级列表。若控制设备接收到服务器A、C或者E发送的升级请求,则控制设备向服务器A、C或者E发送休眠指令,服务器A、C或者E进入休眠一段时间(比如一小时)后,重新向控制设备发送升级请求。
或者,在另一种可能的实现方式中,假设上述服务器A、B、C、D和E均未完成升级,当控制设备接收到服务器A、B、C、D和E分别发送的升级请求后,首先根据服务器A、B、C、D和E的群组优先级确定服务器A、B、C和D的群组优先级为尚未完成升级的群组的群组优先级中最高优先级,向服务器E发送休眠指令;进一步的,控制设备根据服务器A、B、C和D的服务器优先级,确定服务器B和服务器D的服务器优先级是各自群组内尚未完成升级的服务器对应的服务器优先级中的最高优先级,则控制设备向服务器B和服务器D发送升级指令,并向服务器A和服务器C发送休眠指令。服务器B和服务器D接收到升级指令后,从升级包数据库获取升级数据包并进行升级,并在升级完成后向控制设备返回升级完成响应,控制设备接收到升级完成响应后,将服务器B和服务器D标记为已完成升级,服务器A、C和E进入休眠一段时间(比如一小时)后,重新向控制设备发送升级请求。
可选的,为了使不存在依赖关系的各个服务器可以并行升级,以提高各个服务器整体的升级效率,在本发明实施例中,如果两个群组中的各个服务器之间不存在依赖关系,则在满足与其它各个群组之间的依赖关系的情况下,这两个群组可以设置相同的群组优先级,即这两个群组中的服务器可以同时进行升级;类似的,对于一个群组中的多个服务器,若其中两个服务器之间不存在依赖关系,则在满足与群组中其它各个服务器之间的依赖关系的情况下,这两个服务器可以设置相同的服务器优先级,即这两个服务器可以同时进行升级。
综上所述,本发明实施例所示的控制服务器升级的方法,控制设备根据至少两个服务器各自对应的、用于指示该至少两个服务器之间的依赖关系的升级优先级,确定该至少两个服务器中的待升级服务器,并向该待升级服务器发送升级指令,指示该待升级服务器开始升级,根据各个服务器之间的依赖关系自动确定哪些服务器可以进行升级,并自动控制可以升级的服务器进行升级,不需要手动选择待升级的服务器,从而达到减少服务器升级所占用的人力和时间,降低服务器升级复杂度,以及提高待升级服务器选择准确性的效果。
请参考图5,其示出了本发明另一实施例提供的控制服务器升级的方法的流程图。该方法可以用于图1所示的网络环境的控制设备110中。如图5所示,以控制设备110主动通知服务器120进行升级为例,该控制服务器升级的方法可以包括:
步骤501,控制设备获取至少两个服务器之间的依赖关系。
该步骤501可以由上述图2所示网络设备中的处理器21执行获取模块26c来实现。
步骤502,控制设备根据该至少两个服务器之间的依赖关系确定该至少两个服务器各自对应的升级优先级。
该步骤502可以由上述图2所示网络设备中的处理器21执行第二确定模块26d来实现。
步骤503,控制设备查询至少一个目标群组,该至少一个目标群组是尚未完成升级的各个群组中、群组优先级最高的该群组。
步骤504,对于该至少一个目标群组中的每一个目标群组,控制设备将该目标群组中尚未完成升级的各个服务器中、服务器优先级最高的至少一个服务器确定为待升级服务器。
在本发明实施例中,控制设备可以主动通知升级优先级满足条件的服务器开始升级。具体的,控制设备在确定待升级服务器时,首先查询当前未完成升级的各个群组中,群组优先级最高的至少一个群组,对于该至少一个群组中的每个群组,将该群组中尚未完成升级的各个服务器中,服务器优先级最高的服务器作为待升级服务器。
上述步骤503和步骤504可以由上述图2所示网络设备中的处理器21执行第一确定模块26a来实现。
步骤505,控制设备向待升级服务器发送升级指令,该升级指令用于指示该待升级服务器开始升级。
该步骤可以由上述图2所示网络设备中的处理器21执行指令发送模块26b来实现。
步骤506,待升级服务器接收升级指令并开始升级。
步骤507,请求服务器升级完成后向控制设备发送完成响应。
比如,以上述服务器A、B、C、D和E需要升级为例,控制设备首先确定尚未完成升级的群组中,群组优先级最高的群组为群组1和群组2,之后,控制设备进一步从群组1和群组2中选择尚未完成升级且服务器优先级最高的服务器B和服务器D,将这两个服务器作为待升级服务器,并向服务器B和服务器D发送升级指令。服务器B和服务器D完成升级后,向控制设备发送完成响应,控制设备更新服务器的升级状态,并继续确定新的待升级服务器,比如,当控制设备接收到服务器B发送的完成响应后,可以确定服务器A为下一个待升级服务器,并向服务器A发送升级指令,当服务器A、B、C和D都完成升级后,控制设备确定服务器E为待升级服务器。
综上所述,本发明实施例所示的控制服务器升级的方法,控制设备根据至少两个服务器各自对应的、用于指示该至少两个服务器之间的依赖关系的升级优先级,确定该至少两个服务器中的待升级服务器,并向该待升级服务器发送升级指令,指示该待升级服务器开始升级,根据各个服务器之间的依赖关系自动确定哪些服务器可以进行升级,并自动控制可以升级的服务器进行升级,不需要手动选择待升级的服务器,从而达到减少服务器升级所占用的人力和时间,降低服务器升级复杂度,以及提高待升级服务器选择准确性的效果。
请参考图6,其示出了本发明一个实施例提供的控制服务器升级的装置的框图。该装置可以通过硬件或者软硬结合的方式实现为图1所示网络环境的控制设备110的部分或者全部,用以执行如图4或图5中由控制设备所执行的全部或者部分步骤。在本实施例中,该装置是以功能单元的形式来呈现。这里的“单元”可以指特定应用集成电路(application-specific integrated circuit,ASIC),电路,执行一个或多个软件或固件程序的处理器和存储器,集成逻辑电路,和/或其他可以提供上述功能的器件。该装置可以包括:第一确定单元601、指令发送单元602、获取单元603以及第二确定单元604;
第一确定单元601,具有与第一确定模块26a相同或相似的功能。
指令发送单元602,用于与指令发送模块26b相同或相似的功能。
获取单元603,具有与获取模块26c相同或相似的功能。
第二确定单元604,用于与第二确定模块26d相同或相似的功能。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (6)
1.一种控制服务器升级的装置,其特征在于,所述装置包括:
获取单元,用于获取至少两个服务器之间的依赖关系,所述服务器之间的依赖关系是指一个服务器的全部或部分功能依赖于另外至少一个服务器;
第二确定单元,用于根据所述至少两个服务器之间的依赖关系,生成所述至少两个服务器各自对应的升级优先级,所述升级优先级包括群组优先级和服务器优先级,所述群组优先级用于指示对应服务器所在的群组的优先级,所述服务器优先级用于指示对应服务器在所述对应服务器所在的群组中的优先级,所述群组优先级低的群组中包含的服务器的全部或部分功能依赖于至少一个所述群组优先级高的群组中包含的服务器,在一个所述群组内,所述服务器优先级低的服务器的全部或部分功能依赖于至少一个服务器优先级高的服务器,所述至少两个服务器中升级优先级低的服务器的全部或部分功能依赖于至少一个升级优先级高的服务器;
第一确定单元,用于当接收到所述至少两个服务器中的请求服务器发送的升级请求时,查询至少一个目标群组,所述至少一个目标群组是尚未完成升级的各个群组中、群组优先级最高的所述群组;获取可升级列表,所述可升级列表中包含每一个所述目标群组中尚未完成升级的各个服务器中、服务器优先级最高的至少一个服务器;检测所述请求服务器是否存在于所述可升级列表中;若所述请求服务器存在于所述可升级列表中,则确定所述请求服务器为待升级服务器;
指令发送单元,用于向所述待升级服务器发送升级指令,所述升级指令用于指示所述待升级服务器开始升级。
2.根据权利要求1所述的装置,其特征在于,
所述第一确定单元,还用于当接收到所述至少两个服务器中的请求服务器发送的升级请求时,查询所述请求服务器的群组优先级和服务器优先级;检测所述请求服务器的群组优先级是否为所述至少两个服务器中尚未完成升级的各个服务器的群组优先级中的最高优先级;若所述请求服务器的群组优先级是所述至少两个服务器中尚未完成升级的各个服务器的群组优先级中的最高优先级,则检测所述请求服务器的服务器优先级是否为所述请求服务器所在群组内尚未完成升级的各个服务器的服务器优先级中的最高优先级;若所述请求服务器的服务器优先级是所述请求服务器所在群组内尚未完成升级的各个服务器的服务器优先级中的最高优先级,则确定所述请求服务器为所述待升级服务器。
3.根据权利要求1所述的装置,其特征在于,
所述第一确定单元,还用于查询至少一个目标群组,所述目标群组是尚未完成升级的各个群组中、群组优先级最高的所述群组;对于所述至少一个目标群组中的每一个目标群组,将所述目标群组中尚未完成升级的各个服务器中、服务器优先级最高的至少一个服务器确定为所述待升级服务器。
4.一种控制服务器升级的方法,其特征在于,所述方法包括:
获取至少两个服务器之间的依赖关系,所述服务器之间的依赖关系是指一个服务器的全部或部分功能依赖于另外至少一个服务器;
根据所述至少两个服务器之间的依赖关系,生成所述至少两个服务器各自对应的升级优先级,所述升级优先级包括群组优先级和服务器优先级,所述群组优先级用于指示对应服务器所在的群组的优先级,所述服务器优先级用于指示对应服务器在所述对应服务器所在的群组中的优先级,所述群组优先级低的群组中包含的服务器的全部或部分功能依赖于至少一个所述群组优先级高的群组中包含的服务器,在一个所述群组内,所述服务器优先级低的服务器的全部或部分功能依赖于至少一个服务器优先级高的服务器,所述至少两个服务器中升级优先级低的服务器的全部或部分功能依赖于至少一个升级优先级高的服务器;
接收所述至少两个服务器中的请求服务器发送的升级请求;
查询至少一个目标群组,所述至少一个目标群组是尚未完成升级的各个群组中、群组优先级最高的所述群组;
获取可升级列表,所述可升级列表中包含每一个所述目标群组中尚未完成升级的各个服务器中、服务器优先级最高的至少一个服务器;
检测所述请求服务器是否存在于所述可升级列表中;
若所述请求服务器存在于所述可升级列表中,则确定所述请求服务器为待升级服务器;
向所述待升级服务器发送升级指令,所述升级指令用于指示所述待升级服务器开始升级。
5.根据权利要求4所述的方法,其特征在于,所述根据所述至少两个服务器之间的依赖关系,生成所述至少两个服务器各自对应的升级优先级之后,所述方法还包括:
当接收到所述至少两个服务器中的请求服务器发送的升级请求时,查询所述请求服务器的群组优先级和服务器优先级;
检测所述请求服务器的群组优先级是否为所述至少两个服务器中尚未完成升级的各个服务器的群组优先级中的最高优先级;
若所述请求服务器的群组优先级是所述至少两个服务器中尚未完成升级的各个服务器的群组优先级中的最高优先级,则检测所述请求服务器的服务器优先级是否为所述请求服务器所在群组内尚未完成升级的各个服务器的服务器优先级中的最高优先级;
若所述请求服务器的服务器优先级是所述请求服务器所在群组内尚未完成升级的各个服务器的服务器优先级中的最高优先级,则确定所述请求服务器为所述待升级服务器。
6.根据权利要求4所述的方法,其特征在于,所述根据所述至少两个服务器之间的依赖关系,生成所述至少两个服务器各自对应的升级优先级之后,所述方法还包括:
查询至少一个目标群组,所述目标群组是尚未完成升级的各个群组中、群组优先级最高的所述群组;
对于所述至少一个目标群组中的每一个目标群组,将所述目标群组中尚未完成升级的各个服务器中、服务器优先级最高的至少一个服务器确定为所述待升级服务器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610361851.8A CN105933155B (zh) | 2016-05-26 | 2016-05-26 | 控制服务器升级的装置及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610361851.8A CN105933155B (zh) | 2016-05-26 | 2016-05-26 | 控制服务器升级的装置及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105933155A CN105933155A (zh) | 2016-09-07 |
CN105933155B true CN105933155B (zh) | 2019-06-11 |
Family
ID=56841352
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610361851.8A Active CN105933155B (zh) | 2016-05-26 | 2016-05-26 | 控制服务器升级的装置及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105933155B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108768804B (zh) * | 2018-05-29 | 2020-09-22 | 深圳市卡卓无线信息技术有限公司 | 一种基于物联网的智能家居设备同步管理系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102360308A (zh) * | 2011-09-29 | 2012-02-22 | 用友软件股份有限公司 | 组件的分布式部署系统和方法 |
CN102541592A (zh) * | 2011-12-16 | 2012-07-04 | 大唐移动通信设备有限公司 | 一种通信设备及其软件升级的方法 |
CN103997506A (zh) * | 2013-02-19 | 2014-08-20 | 成都勤智数码科技股份有限公司 | 适于软件系统的自动部署升级系统 |
CN104010034A (zh) * | 2014-05-28 | 2014-08-27 | 浪潮电子信息产业股份有限公司 | 一种高可用集群关于组依赖的管理方法 |
CN104850416A (zh) * | 2014-02-18 | 2015-08-19 | 中国移动通信集团公司 | 一种升级系统、方法、装置及云计算节点 |
-
2016
- 2016-05-26 CN CN201610361851.8A patent/CN105933155B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102360308A (zh) * | 2011-09-29 | 2012-02-22 | 用友软件股份有限公司 | 组件的分布式部署系统和方法 |
CN102541592A (zh) * | 2011-12-16 | 2012-07-04 | 大唐移动通信设备有限公司 | 一种通信设备及其软件升级的方法 |
CN103997506A (zh) * | 2013-02-19 | 2014-08-20 | 成都勤智数码科技股份有限公司 | 适于软件系统的自动部署升级系统 |
CN104850416A (zh) * | 2014-02-18 | 2015-08-19 | 中国移动通信集团公司 | 一种升级系统、方法、装置及云计算节点 |
CN104010034A (zh) * | 2014-05-28 | 2014-08-27 | 浪潮电子信息产业股份有限公司 | 一种高可用集群关于组依赖的管理方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105933155A (zh) | 2016-09-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2019237586A1 (zh) | 定时任务管理方法、装置、计算机设备及存储介质 | |
US7493518B2 (en) | System and method of managing events on multiple problem ticketing system | |
US8185624B2 (en) | Efficient on-demand provisioning of servers for specific software sets | |
US10044561B2 (en) | Application provisioning system for requesting configuration updates for application objects across data centers | |
EP3598301A1 (en) | Cloud management platform, virtual machine management method, system thereof | |
CN107102788A (zh) | 应用程序通知 | |
US20120180076A1 (en) | System and Method to Abstract Hardware Routing via a Correlatable Identifier | |
EP3323222B1 (en) | Control center system for searching and managing objects across data centers | |
CN101156379B (zh) | 一种选择服务质量策略的方法及系统 | |
JP2007334580A (ja) | 支援装置、プログラム、情報処理システム及び支援方法 | |
CN110609738A (zh) | 自适应数据同步 | |
US20070162604A1 (en) | Information processing method, information processing device, and program | |
CN105787300B (zh) | 一种控制软件使用的方法及系统 | |
CN109726546A (zh) | 一种权限管理方法及装置 | |
CN109412826B (zh) | Sdon架构模型优化方法、装置、系统及计算机可读存储介质 | |
CN111367761A (zh) | 一种通用服务器的信息管理方法、系统及相关组件 | |
CN113076186B (zh) | 任务处理的方法、装置、电子设备和存储介质 | |
CN105933155B (zh) | 控制服务器升级的装置及方法 | |
CN112788585B (zh) | 一种5g核心网中nf切换方法、装置及存储介质 | |
US10523508B2 (en) | Monitoring management systems and methods | |
EP3399696A1 (en) | System and method for automating the discovery process | |
JP2009273138A (ja) | 異なるバスプロトコルを示す柔軟なアプローチ | |
US7908305B2 (en) | Intelligent business object document system | |
CN106357431A (zh) | 一种设置位置信息的方法及装置 | |
CN114070889B (zh) | 配置方法、流量转发方法、设备、存储介质及程序产品 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20200211 Address after: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen Patentee after: HUAWEI TECHNOLOGIES Co.,Ltd. Address before: Kokusai Hotel No. 11 Nanjing Avenue in the flora of 210000 cities in Jiangsu Province Patentee before: Huawei Technologies Co.,Ltd. |