首页 / 专利库 / 软件 / 软件 / 不中断业务软件升级方法及装置

不中断业务软件升级方法及装置

阅读:62发布:2021-06-09

专利汇可以提供不中断业务软件升级方法及装置专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种不中断业务 软件 升级方法及装置。其中,方法包括: 控制器 集群中的主领导控制器接收新版本文件,将所述新版本文件发送给所述控制器集群中的所有成员控制器;确认所述控制器集群中每个控制器的状态,并根据所确认的控制器状态对所述控制器集群中的所有控制器进行分类;根据对所述控制器的分类结果,控制所述控制器进行逐类别升级。本发明中的技术方案能够提高集群中控制器升级的效率和 稳定性 。,下面是不中断业务软件升级方法及装置专利的具体信息内容。

1.一种不中断业务软件升级方法,其特征在于,该方法包括:
控制器集群中的主领导控制器接收新版本文件,将所述新版本文件发送给所述控制器集群中的所有成员控制器;
所述主领导控制器确认所述控制器集群中每个控制器的状态,并根据所确认的控制器状态对所述控制器集群中的所有控制器进行分类,得到分类结果;所述控制器的状态包括所述控制器在控制器集群中担任的色,所述角色为备控制器、主控制器和主领导控制器中的至少一种;
所述主领导控制器根据对所述控制器的所述分类结果,按照先升级备控制器、再升级主控制器、最后升级主领导控制器的顺序,控制所述控制器进行逐类别升级。
2.根据权利要求1所述的方法,其特征在于,所述对所述控制器集群中的所有控制器进行分类包括:
将处于开启状态且为非主领导控制器所在备份组内担任备控制器的控制器划分为第一类控制器;将处于开启状态且为非主领导控制器所在备份组内担任主控制器的控制器划分为第二类控制器;将处于开启状态且在主领导控制器所在的备份组内的非主领导控制器划分为第三类控制器;将处于开启状态的主领导控制器划分为第四类控制器。
3.根据权利要求2所述的方法,其特征在于,所述控制所述控制器进行逐类别升级包括:
对所述第一类控制器中的每个控制器执行如下操作:
控制所述控制器上的业务迁移到同一备份组内的主控制器上;
对被控制的网络设备的业务流量进行监控,当所述业务流量恢复正常后,利用所述新版本文件对所述控制器进行升级;
监控所述控制器与主领导控制器的配置同步情况,在所述控制器完成与主领导控制器的配置同步后,确认所述控制器升级完成;
在确认所述第一类控制器中的各控制器的升级完成且对业务流量的控制恢复正常后,对所述第二类控制器中的每个控制器执行如下操作:
控制所述控制器上的业务迁移到同一备份组内的一个备控制器上;
对被控制的网络设备的业务流量进行监控,当所述业务流量恢复正常后,利用所述新版本文件对所述控制器进行升级;
监控所述控制器与主领导控制器的配置同步情况,在所述控制器完成与主领导控制器的配置同步后,确认所述控制器升级完成;
在确认所述第二类控制器中的各控制器的升级完成且对业务流量的控制恢复正常后,在所述第三类控制器不为空且第三类控制器中的控制器未被升级时,对所述第三类控制器中的每个控制器执行如下操作:
控制所述控制器上的业务迁移到主领导控制器上;
对被控制的网络设备的业务流量进行监控,当所述业务流量恢复正常后,利用所述新版本文件对所述控制器进行升级;
监控所述控制器与主领导控制器的配置同步情况,在所述控制器完成与主领导控制器的配置同步后,确认所述控制器升级完成;
在确认所述第三类控制器中的各控制器的升级完成且对业务流量的控制恢复正常后,对所述第四类控制器执行如下操作:
将所述控制器上的业务迁移到其它控制器中最高优先级的控制器上,并将所述最高优先级的控制器作为新的主领导控制器;
在所述新的主领导控制器对被控制的网络设备的业务流量进行监控并确定所述业务流量恢复正常后,在所述新的主领导控制器的控制下利用所述新版本文件进行升级;
在所述控制器完成与新的主领导控制器的配置同步后,所述控制器升级完成。
4.根据权利要求1所述的方法,其特征在于,所述对所述控制器集群中的所有控制器进行分类包括:
将处于开启状态且为非主领导控制器并且在备份组内担任备控制器的控制器划分为第一类控制器;将处于开启状态且为非主领导控制器并且在备份组内担任主控制器的控制器划分为第二类控制器;将处于开启状态的主领导控制器划分为第三类控制器。
5.根据权利要求4所述的方法,其特征在于,所述控制所述控制器进行逐类别升级包括:
对所述第一类控制器中的每个控制器执行如下操作:
控制所述控制器上的业务迁移到同一备份组内的主控制器上;
对被控制的网络设备的业务流量进行监控,当所述业务流量恢复正常后,利用所述新版本文件对所述控制器进行升级;
监控所述控制器与主领导控制器的配置同步情况,在所述控制器完成与主领导控制器的配置同步后,确认所述控制器升级完成;
在确认所述第一类控制器中的各控制器的升级完成且对业务流量的控制恢复正常后,对所述第二类控制器中的每个控制器执行如下操作:
控制所述控制器上的业务迁移到同一备份组内的一个备控制器上;
对被控制的网络设备的业务流量进行监控,当所述业务流量恢复正常后,利用所述新版本文件对所述控制器进行升级;
监控所述控制器与主领导控制器的配置同步情况,在所述控制器完成与主领导控制器的配置同步后,确认所述控制器升级完成;
在确认所述第二类控制器中的各控制器的升级完成且对业务流量的控制恢复正常后,对所述第三类控制器执行如下操作:
将所述控制器上的业务迁移到其它控制器中最高优先级的控制器上,并将所述最高优先级的控制器作为新的主领导控制器;
在所述新的主领导控制器对被控制的网络设备的业务流量进行监控并确认所述业务流量恢复正常后,在所述新的主领导控制器的控制下利用所述新版本文件进行升级;
在所述控制器完成与新的主领导控制器的配置同步后,所述控制器升级完成。
6.一种不中断业务软件升级装置,应用于控制器集群中的主领导控制器,其特征在于,该装置包括:
接收模,用于接收新版本文件;
发送模块,用于将所述接收模块接收的新版本文件发送给所述控制器集群中的所有成员控制器;
状态确认模块,用于确认所述控制器集群中每个控制器的状态;所述控制器的状态包括所述控制器在控制器集群中担任的角色,所述角色为备控制器、主控制器和主领导控制器中的至少一种;
分类模块,用于根据状态确认模块所确认的控制器状态对所述控制器集群中的所有控制器进行分类,得到分类结果;
制模块,用于根据所述分类模块对所述控制器的所述分类结果,按照先升级备控制器、再升级主控制器的顺序,控制所有成员控制器进行逐类别升级;
业务迁移模块,用于在完成所有成员控制器的升级后,将自身的业务迁移到其它控制器中最高优先级的控制器上,所述最高优先级的控制器为新的主领导控制器;和升级模块,用于在所述新的主领导控制器的控制下,利用所述新版本文件进行升级。
7.根据权利要求6所述的装置,其特征在于,所述分类模块具体用于将处于开启状态且为非主领导控制器所在备份组内担任备控制器的控制器划分为第一类控制器;将处于开启状态且为非主领导控制器所在备份组内担任主控制器的控制器划分为第二类控制器;将处于开启状态且在主领导控制器所在的备份组内的非主领导控制器划分为第三类控制器;将处于开启状态的主领导控制器划分为第四类控制器。
8.根据权利要求7所述的装置,其特征在于,所述控制模块具体用于,对所述第一类控制器中的每个控制器执行如下操作:
控制所述控制器上的业务迁移到同一备份组内的主控制器上;
对被控制的网络设备的业务流量进行监控,当所述业务流量恢复正常后,利用所述新版本文件对所述控制器进行升级;
监控所述控制器与主领导控制器的配置同步情况,在所述控制器完成与主领导控制器的配置同步后,确认所述控制器升级完成;
在确认所述第一类控制器中的各控制器的升级完成且对业务流量的控制恢复正常后,对所述第二类控制器中的每个控制器执行如下操作:
控制所述控制器上的业务迁移到同一备份组内的一个备控制器上;
对被控制的网络设备的业务流量进行监控,当所述业务流量恢复正常后,利用所述新版本文件对所述控制器进行升级;
监控所述控制器与主领导控制器的配置同步情况,在所述控制器完成与主领导控制器的配置同步后,确认所述控制器升级完成;
在确认所述第二类控制器中的各控制器的升级完成且对业务流量的控制恢复正常后,在所述第三类控制器不为空且第三类控制器中的控制器未被升级时,对所述第三类控制器中的每个控制器执行如下操作:
控制所述控制器上的业务迁移到主领导控制器上;
对被控制的网络设备的业务流量进行监控,当所述业务流量恢复正常后,利用所述新版本文件对所述控制器进行升级;
监控所述控制器与主领导控制器的配置同步情况,在所述控制器完成与主领导控制器的配置同步后,确认所述控制器升级完成;
在确认所述第三类控制器中的各控制器的升级完成且对业务流量的控制恢复正常后,通知所述业务迁移模块进行业务迁移。
9.根据权利要求6所述的装置,其特征在于,所述分类模块具体用于将处于开启状态且为非主领导控制器并且在备份组内担任备控制器的控制器划分为第一类控制器;将处于开启状态且为非主领导控制器并且在备份组内担任主控制器的控制器划分为第二类控制器;
将处于开启状态的主领导控制器划分为第三类控制器。
10.根据权利要求9所述的装置,其特征在于,所述控制模块具体用于,对所述第一类控制器中的每个控制器执行如下操作:
控制所述控制器上的业务迁移到同一备份组内的主控制器上;
对被控制的网络设备的业务流量进行监控,当所述业务流量恢复正常后,利用所述新版本文件对所述控制器进行升级;
监控所述控制器与主领导控制器的配置同步情况,在所述控制器完成与主领导控制器的配置同步后,确认所述控制器升级完成;
在确认所述第一类控制器中的各控制器的升级完成且对业务流量的控制恢复正常后,对所述第二类控制器中的每个控制器执行如下操作:
控制所述控制器上的业务迁移到同一备份组内的一个备控制器上;
对被控制的网络设备的业务流量进行监控,当所述业务流量恢复正常后,利用所述新版本文件对所述控制器进行升级;
监控所述控制器与主领导控制器的配置同步情况,在所述控制器完成与主领导控制器的配置同步后,确认所述控制器升级完成;
在确认所述第二类控制器中的各控制器的升级完成且对业务流量的控制恢复正常后,通知所述业务迁移模块进行业务迁移。

说明书全文

不中断业务软件升级方法及装置

技术领域

[0001] 本发明涉及软件升级技术,尤其涉及一种对控制器集群进行不中断业务软件升级(ISSU,In-Service Software Upgrade)的方法及装置。

背景技术

[0002] 软件定义网络(SDN,Software Defined Network)是一种新型网络架构,其核心思想是分离网络设备的控制层面与转发层面,通过控制器对网络设备的流量进行集中和灵活控制,从而为核心网络及应用的创新提供良好的平台。
[0003] 应用于SDN网络中的控制器可以为虚拟应用融合架构(VCF,Virtual Converged Framework)控制器,应用于SDN网络中的网络设备可以为物理交换机,也可以是虚拟交换机(vSwitch)。
[0004] VCF控制器支持集群和备份组功能,可以为用户提供高可靠的分布式平台。创建集群并配置对应的备份组,可以提高网络的可靠性,避免单台控制器故障导致SDN网络处于非管理状态。当集群中的某台控制器出现故障不能正常工作时,集群内的其它控制器可以接替该故障控制器继续进行工作,从而保证SDN网络的正常运行。同时,集群功能还能提供控制器的集中配置和监控。
[0005] 在一个控制器集群(Team)中,通常包括一个主领导控制器(主Leader)和多个成员控制器(Member)。此外,也可从这些成员控制器中选出一个备领导控制器(备Leader)作为主领导控制器的备份。一个集群内的控制器可以配置在不同的备份组(Region)内,每个备份组包括一个主控制器(Master controller)和至少一个备控制器(Slave controller)。不同的备份组管理不同的网络设备(如支持OpenFlow的物理交换机,或虚拟交换机(vSwitch)),这样可以将网络设备分担到不同的备份组内,实现控制器管理网络设备的负载分担功能。其中,当存在备领导控制器时,该备领导控制器可以与该主领导控制器构成一个备份组。
[0006] 当控制器集群需要升级版本的时候,这时候需要用户先在控制器页面上面对一个控制器点击升级准备,然后再去控制器后台卸载原来的版本,上传加载新的版本文件,安装新的版本,再加载许可(license)。然后需要用户确认这个备份组的业务完全恢复之后,才能再对下一台控制器进行升级。这样依次手工操作所有的控制器,直到所有的控制器全部升级完成。

发明内容

[0007] 本发明中一方面提供一种不中断业务软件升级方法,另一方面提供一种不中断业务软件升级装置,以便提高集群中控制器升级的效率和稳定性
[0008] 本发明所提供的不中断业务软件升级方法,包括:
[0009] 控制器集群中的主领导控制器接收新版本文件,将所述新版本文件发送给所述控制器集群中的所有成员控制器;
[0010] 所述主领导控制器确认所述控制器集群中每个控制器的状态,并根据所确认的控制器状态对所述控制器集群中的所有控制器进行分类;所述控制器的状态包括所述控制器在控制器集群中担任的色,所述角色为备控制器、主控制器和主领导控制器中的至少一种;
[0011] 所述主领导控制器根据对所述控制器的分类结果,按照先升级备控制器、再升级主控制器、最后升级主领导控制器的顺序,控制所述控制器进行逐类别升级。
[0012] 本发明所提供的不中断业务软件升级装置,应用于控制器集群中的主领导控制器,其包括:
[0013] 接收模,用于接收新版本文件;
[0014] 发送模块,用于将所述接收模块接收的新版本文件发送给所述控制器集群中的所有成员控制器;
[0015] 状态确认模块,用于确认所述控制器集群中每个控制器的状态;所述控制器的状态包括所述控制器在控制器集群中担任的角色,所述角色为备控制器、主控制器和主领导控制器中的至少一种;
[0016] 分类模块,用于根据状态确认模块所确认的控制器状态对所述控制器集群中的所有控制器进行分类;
[0017] 控制模块,用于根据所述分类模块对所述控制器的分类结果,按照先升级备控制器、再升级主控制器的顺序,控制所有成员控制器进行逐类别升级;
[0018] 业务迁移模块,用于在完成所有成员控制器的升级后,将自身的业务迁移到其它控制器中最高优先级的控制器上,所述最高优先级的控制器为新的主领导控制器;和[0019] 升级模块,用于在所述新的主领导控制器的控制下,利用所述新版本文件进行升级。
[0020] 从上述方案可以看出,本发明中用户只需将新版本文件上传给主领导控制器即可,即只需上传一次版本,之后其它的操作全部由控制器自动完成,即控制器自动确认集群中每个控制器的状态,并根据所确认的控制器状态对集群中的所有控制器进行分类,根据分类结果,控制各控制器进行逐类别批量升级,即使一类控制器同时进行ISSU升级,大大提高了控制器集群ISSU升级的效率和稳定性。
[0021] 此外,升级过程中控制器自身监控业务的稳定性,使控制器集群在ISSU升级过程中大大提高了可维护性。附图说明
[0022] 图1为本发明实施例中一种不中断业务软件升级方法的示例性流程图
[0023] 图2为本发明实施例中SDN网络控制器集群的一个组网例图。
[0024] 图3为本发明实施例中一种不中断业务软件升级系统的示例性结构图。
[0025] 图4为本发明实施例中一种不中断业务软件升级装置的示例性结构图。
[0026] 图5为本发明实施例中又一种不中断业务软件升级装置的示例性结构图。
[0027] 图6为本发明实施例中不中断业务软件升级装置的又一示例性结构图。

具体实施方式

[0028] 从上面的升级过程中可以看出,用户是通过手动方式对控制器进行升级的,不仅升级步骤繁琐,而且还需要对业务很了解,且在升级过程中还需要确认业务的恢复情况。可维护性很差,一旦用户操作步骤搞错就很容易出现升级失败的情况,对系统的稳定性造成了很大的威胁。当控制器集群进行大规模部署的时候,全部使用手工进行一个一个的升级,不能实现批量的版本升级,大大影响用户维护的效率。
[0029] 为了提高集群中控制器升级的效率和稳定性,本发明中提出一种全自动ISSU方案。ISSU是一种能够保证在软件升级过程中业务不中断或者中断时间较短的升级方式。在该全自动ISSU方案中,将新版本文件传送给控制器集群中的主领导控制器,然后该主领导控制器将该新版本文件发送给控制器集群中的所有成员控制器;之后,主领导控制器确认所述控制器集群中每个控制器的状态,并根据所确认的控制器状态对所述控制器集群中的所有控制器进行分类,根据对所述控制器的分类结果,按照先升级成员控制器再升级主领导控制器的顺序,控制所述控制器进行逐类别批量升级。
[0030] 为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施例和附图,对本发明进一步详细说明。
[0031] 图1为本发明实施例中不中断业务软件升级方法的示例性流程图。本实施例中的ISSU方法可应用于SDN网络的控制器集群中,图2为本发明实施例中SDN网络控制器集群的一个组网例图。如图2所示,该控制器集群中有复数个控制器,所述复数个控制器包括一个主领导控制器和至少一个成员控制器;所述复数个控制器配置在至少一个备份组中,并在所述备份组中担任主控制器或备控制器。该控制器集群提供一个北向统一IP地址,使得上层应用可通过该地址与控制器集群进行通信,数据会在整个控制器集群的控制器上同步。
[0032] 本实施例中的控制器可以为VCF控制器,其是一款SDN控制器,VCF控制器目前支持标准的OpenFlow、NETCONF和OVSDB。OpenFlow协议作为控制器与转发层之间的通信接口标准,允许控制器直接访问和操作网络设备的转发平面,这些网络设备可以是支持OpenFlow的物理交换机,也可以是虚拟交换机(vSwitch)。NETCONF是一种基于XML的网络管理协议,提供了一种可编程的、对网络设备进行配置和管理的方法。OVSDB是一个OpenFlow的配置协议,用来给虚拟交换机提供配置信息。
[0033] 如图1所示,该方法可包括如下操作:
[0034] 步骤101,控制器集群中的主领导控制器接收新版本文件。
[0035] 步骤102,主领导控制器将所述新版本文件发送给所述控制器集群中的所有成员控制器。
[0036] 本步骤中,主领导控制器可利用主领导控制器与所有成员控制器之间的HTTPS数据通道,将所述新版本文件发送给所有成员控制器。或者,主领导控制器也可新建与所有成员控制器之间的新版本传输通过,之后通过该新建的传输通道,将所述新版本文件发送给所有成员控制器。当然,还可利用其它通道进行新版本的传送,此处不对具体传送方式进行限定。
[0037] 对于第一种传输方式,因为HTTPS是按需发起,在传大文件的时候会比分布式数据库(Zookeeper)节省资源。等版本传送好了之后,可断开主领导控制器上面的和成员控制器的HTTPS连接。
[0038] 步骤103,主领导控制器确认所述控制器集群中每个控制器的状态。所述控制器的状态包括所述控制器在控制器集群中担任的角色,所述角色为备控制器、主控制器和主领导控制器中的至少一种。此外,控制器的状态还可包括是否处于开启的状态,如UP或DOWN等。
[0039] 步骤104,主领导控制器根据所确认的控制器状态对所述控制器集群中的所有控制器进行分类。
[0040] 本步骤中,具体分类方法可有多种。
[0041] 例如,第一种情况:将处于开启(Up)状态且为非主领导控制器所在备份组内担任备控制器的控制器划分为第一类控制器;将处于开启状态且为非主领导控制器所在备份组内担任主控制器的控制器划分为第二类控制器;将处于开启状态且在主领导控制器所在的备份组内的非主领导控制器划分为第三类控制器;将处于开启状态的主领导控制器划分为第四类控制器。
[0042] 第二种情况:将处于开启状态且为非主领导控制器并且在备份组内担任备控制器的控制器划分为第一类控制器;将处于开启状态且为非主领导控制器并且在备份组内担任主控制器的控制器划分为第二类控制器;将处于开启状态的主领导控制器划分为第三类控制器。
[0043] 第三种情况:在上述两种分类情况的集成上,将处于宕机(Down)状态的控制器也划分为一类。例如,将处于宕机(Down)状态的控制器划分为第一类控制器,将处于开启(Up)状态且为非主领导控制器所在备份组内担任备控制器的控制器划分为第二类控制器;将处于开启状态且为非主领导控制器所在备份组内担任主控制器的控制器划分为第三类控制器;将处于开启状态且为非主领导控制器并且在主领导控制器所在的备份组内的控制器划分为第四类控制器;将处于开启状态的主领导控制器划分为第五类控制器。
[0044] 步骤105,所述主领导控制器根据对所述控制器的分类结果,按照先升级备控制器、再升级主控制器、最后升级主领导控制器的顺序,控制所述控制器进行逐类别批量升级。
[0045] 针对上述第一种分类情况,本步骤105可包括:
[0046] A)主领导控制器对所述第一类控制器中的每个控制器执行如下操作:
[0047] 控制所述控制器上的业务迁移到同一备份组内的主控制器上;
[0048] 对被控制的网络设备的业务流量进行监控,当所述业务流量恢复正常后,利用所述新版本文件对所述控制器进行升级;本过程中,当监控到流表(如Openflow流表)的计数增加时,可确认业务流量恢复正常。进行升级时,可首先保留许可,然后进行旧版本的卸载和新版本的加载,之后加载保留的许可。
[0049] 监控所述控制器与主领导控制器的配置同步情况,在所述控制器完成与主领导控制器的配置同步后,确认所述控制器升级完成;本过程中,当配置同步完成后,主领导控制器会收到所述控制器发送的一个配置同步完成的消息,此时主领导控制器便可确认所述控制器的升级完成。
[0050] 当第一类控制器中的各控制器的配置同步完成消息都收到后,便可确认第一类控制器中的各控制器的升级完成。之后可再对业务流量进行监控,当完成升级的第一类控制器中的各控制器开始接收新的业务流量且可以正常完成的时候,便可确认其对业务流量的控制恢复正常。例如,监控方法可以是看完成升级的控制器对新上送的packet-in报文是否都做了处理并且下发成功流表。如果是,则认为其对业务流量的控制恢复正常。下同。
[0051] B)主领导控制器在确认所述第一类控制器中的各控制器的升级完成且对业务流量的控制恢复正常后,对所述第二类控制器中的每个控制器执行如下操作:
[0052] 控制所述控制器上的业务迁移到同一备份组内的一个备控制器上;
[0053] 对被控制的网络设备的业务流量进行监控,当所述业务流量恢复正常后,利用所述新版本文件对所述控制器进行升级;
[0054] 监控所述控制器与主领导控制器的配置同步情况,在所述控制器完成与主领导控制器的配置同步后,确认所述控制器升级完成;
[0055] C)主领导控制器在确认所述第二类控制器中的各控制器的升级完成且对业务流量的控制恢复正常后,在所述第三类控制器不为空且第三类控制器中的控制器未被升级时,对所述第三类控制器中的每个控制器执行如下操作:
[0056] 控制所述控制器上的业务迁移到主领导控制器上;
[0057] 对被控制的网络设备的业务流量进行监控,当所述业务流量恢复正常后,利用所述新版本文件对所述控制器进行升级;
[0058] 监控所述控制器与主领导控制器的配置同步情况,在所述控制器完成与主领导控制器的配置同步后,确认所述控制器升级完成;
[0059] D)主领导控制器在确认所述第三类控制器中的各控制器的升级完成且对业务流量的控制恢复正常后,对所述第四类控制器,即主领导控制器自身执行如下操作:
[0060] 将所述控制器,即主领导控制器自身上的业务迁移到其它控制器中最高优先级的控制器上,并将所述最高优先级的控制器作为新的主领导控制器,此时原主领导控制器需要在新的主领导控制器的控制下进行升级;其中,其它控制器中最高优先级的控制器可以为备领导控制器;
[0061] 之后由新的主领导控制器对被控制的网络设备的业务流量进行监控,并在所述新的主领导控制器确定所述业务流量恢复正常后,所述控制器,即原主领导控制器在新的主领导控制器的控制下利用所述新版本文件进行升级;
[0062] 由新的主领导控制器监控所述控制器(原主领导控制器)与新的主领导控制器的配置同步情况,在所述控制器(原主领导控制器)完成与新的主领导控制器的配置同步后,所述控制器(原主领导控制器)升级完成。
[0063] 针对上述第二种分类情况,本步骤105可包括:
[0064] a)主领导控制器对所述第一类控制器中的每个控制器执行如下操作:
[0065] 控制所述控制器上的业务迁移到同一备份组内的主控制器上;
[0066] 对被控制的网络设备的业务流量进行监控,当所述业务流量恢复正常后,利用所述新版本文件对所述控制器进行升级;
[0067] 监控所述控制器与主领导控制器的配置同步情况,在所述控制器完成与主领导控制器的配置同步后,确认所述控制器升级完成;
[0068] b)主领导控制器在确认所述第一类控制器中的各控制器的升级完成且对业务流量的控制恢复正常后,对所述第二类控制器中的每个控制器执行如下操作:
[0069] 控制所述控制器上的业务迁移到同一备份组内的一个备控制器上;
[0070] 对被控制的网络设备的业务流量进行监控,当所述业务流量恢复正常后,利用所述新版本文件对所述控制器进行升级;
[0071] 监控所述控制器与主领导控制器的配置同步情况,在所述控制器完成与主领导控制器的配置同步后,确认所述控制器升级完成;
[0072] c)主领导控制器在确认所述第二类控制器中的各控制器的升级完成且对业务流量的控制恢复正常后,对所述第三类控制器,即主领导控制器自身执行如下操作:
[0073] 将所述控制器,即主领导控制器自身上的业务迁移到其它控制器中最高优先级的控制器上,并将所述最高优先级的控制器作为新的主领导控制器,此时原主领导控制器需要在新的主领导控制器的控制下进行升级;
[0074] 之后由新的主领导控制器对被控制的网络设备的业务流量进行监控,并在所述新的主领导控制器确定所述业务流量恢复正常后,所述控制器,即原主领导控制器在新的主领导控制器的控制下利用所述新版本文件进行升级;
[0075] 由新的主领导控制器监控所述控制器(原主领导控制器)与新的主领导控制器的配置同步情况,在所述控制器(原主领导控制器)完成与新的主领导控制器的配置同步后,所述控制器(原主领导控制器)升级完成。
[0076] 针对上述第三种分类情况,本步骤105不对处于宕机(Down)状态的控制器进行升级,而只对其它类别的控制器进行升级,具体升级过程同前述。
[0077] 图3为本发明实施例中不中断业务软件升级系统的示例性结构图。如图3所示,该系统包括:位于控制器集群中的复数个控制器,所述复数个控制器包括一个主领导控制器和至少一个成员控制器;所述复数个控制器配置在至少一个备份组中,并在所述备份组中担任主控制器或备控制器。其中,
[0078] 所述主领导控制器用于接收新版本文件,将所述新版本文件发送给所述控制器集群中的所有成员控制器;确认所述控制器集群中每个控制器的状态,并根据所确认的控制器状态对所述控制器集群中的所有控制器进行分类;所述控制器的状态包括所述控制器在控制器集群中担任的角色,所述角色为备控制器、主控制器和主领导控制器中的至少一种;根据对所述控制器的分类结果,按照先升级备控制器、再升级主控制器、最后升级主领导控制器的顺序,控制所述控制器进行逐类别批量升级。
[0079] 每个成员控制器用于在所述主领导控制器的控制下,完成自身的升级。
[0080] 具体实现时,所述主领导控制器可利用主领导控制器与所有成员控制器之间的HTTP数据通道,将所述新版本文件发送给所述控制器集群中的所有成员控制器。进一步地,可等版本传送好了之后,断开主领导控制器上面的和成员控制器的HTTPS连接。
[0081] 此外,与图1所示方法相对应,本实施例中的主领导控制器可将处于开启状态且为非主领导控制器并且在备份组内担任备控制器的控制器划分为第一类控制器;将处于开启状态且为非主领导控制器并且在备份组内担任主控制器的控制器划分为第二类控制器;将处于开启状态且为非主领导控制器并且在主领导控制器所在的备份组内的控制器划分为第三类控制器;将处于开启状态的主领导控制器划分为第四类控制器;或者,将处于开启状态且为非主领导控制器并且在备份组内担任备控制器的控制器划分为第一类控制器;将处于开启状态且为非主领导控制器并且在备份组内担任主控制器的控制器划分为第二类控制器;将处于开启状态的主领导控制器划分为第三类控制器;又或者,在前述分类基础上,将处于宕机状态的控制器也划分为一类控制器。
[0082] 与图1所示方法相对应,针对第一种分类情况,所述主领导控制器可执行如下操作:
[0083] 对所述第一类控制器中的每个控制器执行如下操作:
[0084] 控制所述控制器上的业务迁移到同一备份组内的主控制器上;
[0085] 对被控制的网络设备的业务流量进行监控,当所述业务流量恢复正常后,利用所述新版本文件对所述控制器进行升级;
[0086] 监控所述控制器与主领导控制器的配置同步情况,在所述控制器完成与主领导控制器的配置同步后,确认所述控制器升级完成;
[0087] 在确认所述第一类控制器中的各控制器的升级完成且对业务流量的控制恢复正常后,对所述第二类控制器中的每个控制器执行如下操作:
[0088] 控制所述控制器上的业务迁移到同一备份组内的一个备控制器上;
[0089] 对被控制的网络设备的业务流量进行监控,当所述业务流量恢复正常后,利用所述新版本文件对所述控制器进行升级;
[0090] 监控所述控制器与主领导控制器的配置同步情况,在所述控制器完成与主领导控制器的配置同步后,确认所述控制器升级完成;
[0091] 在确认所述第二类控制器中的各控制器的升级完成且对业务流量的控制恢复正常后,在所述第三类控制器不为空且第三类控制器中的控制器未被升级时,对所述第三类控制器中的每个控制器执行如下操作:
[0092] 控制所述控制器上的业务迁移到主领导控制器上;
[0093] 对被控制的网络设备的业务流量进行监控,当所述业务流量恢复正常后,利用所述新版本文件对所述控制器进行升级;
[0094] 监控所述控制器与主领导控制器的配置同步情况,在所述控制器完成与主领导控制器的配置同步后,确认所述控制器升级完成;
[0095] 在确认所述第三类控制器中的各控制器的升级完成且对业务流量的控制恢复正常后,对所述第四类控制器,即主领导控制器自身执行如下操作:
[0096] 将所述控制器,即主领导控制器自身上的业务迁移到其它控制器中最高优先级的控制器上,并将所述最高优先级的控制器作为新的主领导控制器,此时原主领导控制器需要在新的主领导控制器的控制下进行升级;
[0097] 之后由新的主领导控制器对被控制的网络设备的业务流量进行监控,并在所述新的主领导控制器确定所述业务流量恢复正常后,所述控制器,即原主领导控制器在新的主领导控制器的控制下利用所述新版本文件进行升级;
[0098] 由新的主领导控制器监控所述控制器(原主领导控制器)与新的主领导控制器的配置同步情况,在所述控制器(原主领导控制器)完成与新的主领导控制器的配置同步后,所述控制器(原主领导控制器)升级完成。
[0099] 针对第二种分类情况,所述主领导控制器可执行如下操作:
[0100] 对所述第一类控制器中的每个控制器执行如下操作:
[0101] 控制所述控制器上的业务迁移到同一备份组内的主控制器上;
[0102] 对被控制的网络设备的业务流量进行监控,当所述业务流量恢复正常后,利用所述新版本文件对所述控制器进行升级;
[0103] 监控所述控制器与主领导控制器的配置同步情况,在所述控制器完成与主领导控制器的配置同步后,确认所述控制器升级完成;
[0104] 在确认所述第一类控制器中的各控制器的升级完成且对业务流量的控制恢复正常后,对所述第二类控制器中的每个控制器执行如下操作:
[0105] 控制所述控制器上的业务迁移到同一备份组内的一个备控制器上;
[0106] 对被控制的网络设备的业务流量进行监控,当所述业务流量恢复正常后,利用所述新版本文件对所述控制器进行升级;
[0107] 监控所述控制器与主领导控制器的配置同步情况,在所述控制器完成与主领导控制器的配置同步后,确认所述控制器升级完成;
[0108] 在确认所述第二类控制器中的各控制器的升级完成且对业务流量的控制恢复正常后,对所述第三类控制器,即主领导控制器自身执行如下操作:
[0109] 将所述控制器,即主领导控制器自身上的业务迁移到其它控制器中最高优先级的控制器上,并将所述最高优先级的控制器作为新的主领导控制器,此时原主领导控制器需要在新的主领导控制器的控制下进行升级;
[0110] 之后由新的主领导控制器对被控制的网络设备的业务流量进行监控,并在所述新的主领导控制器确定所述业务流量恢复正常后,所述控制器,即原主领导控制器在新的主领导控制器的控制下利用所述新版本文件进行升级;
[0111] 由新的主领导控制器监控所述控制器(原主领导控制器)与新的主领导控制器的配置同步情况,在所述控制器(原主领导控制器)完成与新的主领导控制器的配置同步后,所述控制器(原主领导控制器)升级完成。
[0112] 针对第三种分类情况,主领导控制器可不对处于宕机状态的控制器进行升级,而只对其它类别的控制器进行升级,具体升级过程同前述。
[0113] 图4为本发明实施例中不中断业务软件升级装置的示例性结构图,如图4所示,该装置可包括:接收模块401、发送模块402、状态确认模块403、分类模块404、控制模块405、业务迁移模块406和升级模块407。
[0114] 其中,接收模块401用于接收新版本文件。
[0115] 发送模块402用于将所述接收模块接收的新版本文件发送给所述控制器集群中的所有成员控制器。
[0116] 状态确认模块403用于确认所述控制器集群中每个控制器的状态;所述控制器的状态包括所述控制器在控制器集群中担任的角色,所述角色为备控制器、主控制器和主领导控制器中的至少一种。
[0117] 分类模块404用于根据状态确认模块所确认的控制器状态对所述控制器集群中的所有控制器进行分类。
[0118] 控制模块405用于根据所述分类模块对所述控制器的分类结果,按照先升级备控制器、再升级主控制器的顺序,控制所有成员控制器进行逐类别批量升级;
[0119] 业务迁移模块406用于在完成所有成员控制器的升级后,将自身的业务迁移到其它控制器中最高优先级的控制器上,所述最高优先级的控制器为新的主领导控制器;
[0120] 升级模块407用于在所述主领导控制器的控制下,利用所述新版本文件进行升级。
[0121] 具体实现时,所述分类模块404可用于将处于开启状态且为非主领导控制器所在备份组内担任备控制器的控制器划分为第一类控制器;将处于开启状态且为非主领导控制器所在备份组内担任主控制器的控制器划分为第二类控制器;将处于开启状态且在主领导控制器所在的备份组内的非主领导控制器划分为第三类控制器;将处于开启状态的主领导控制器划分为第四类控制器;或者,将处于开启状态且为非主领导控制器并且在备份组内担任备控制器的控制器划分为第一类控制器;将处于开启状态且为非主领导控制器并且在备份组内担任主控制器的控制器划分为第二类控制器;将处于开启状态的主领导控制器划分为第三类控制器;又或者,在前述分类基础上,将处于宕机状态的控制器也划分为一类控制器。
[0122] 相应地,针对第一种分类情况,所述控制模块405可执行如下操作:
[0123] 对所述第一类控制器中的每个控制器执行如下操作:
[0124] 控制所述控制器上的业务迁移到同一备份组内的主控制器上;
[0125] 对被控制的网络设备的业务流量进行监控,当所述业务流量恢复正常后,利用所述新版本文件对所述控制器进行升级;
[0126] 监控所述控制器与主领导控制器的配置同步情况,在所述控制器完成与主领导控制器的配置同步后,确认所述控制器升级完成;
[0127] 在确认所述第一类控制器中的各控制器的升级完成且对业务流量的控制恢复正常后,对所述第二类控制器中的每个控制器执行如下操作:
[0128] 控制所述控制器上的业务迁移到同一备份组内的一个备控制器上;
[0129] 对被控制的网络设备的业务流量进行监控,当所述业务流量恢复正常后,利用所述新版本文件对所述控制器进行升级;
[0130] 监控所述控制器与主领导控制器的配置同步情况,在所述控制器完成与主领导控制器的配置同步后,确认所述控制器升级完成;
[0131] 在确认所述第二类控制器中的各控制器的升级完成且对业务流量的控制恢复正常后,在所述第三类控制器不为空且第三类控制器中的控制器未被升级时,对所述第三类控制器中的每个控制器执行如下操作:
[0132] 控制所述控制器上的业务迁移到主领导控制器上;
[0133] 对被控制的网络设备的业务流量进行监控,当所述业务流量恢复正常后,利用所述新版本文件对所述控制器进行升级;
[0134] 监控所述控制器与主领导控制器的配置同步情况,在所述控制器完成与主领导控制器的配置同步后,确认所述控制器升级完成;
[0135] 在确认所述第三类控制器中的各控制器的升级完成且对业务流量的控制恢复正常后,通知所述业务迁移模块406进行业务迁移。
[0136] 针对第二种分类情况,所述控制模块405可执行如下操作:
[0137] 对所述第一类控制器中的每个控制器执行如下操作:
[0138] 控制所述控制器上的业务迁移到同一备份组内的主控制器上;
[0139] 对被控制的网络设备的业务流量进行监控,当所述业务流量恢复正常后,利用所述新版本文件对所述控制器进行升级;
[0140] 监控所述控制器与主领导控制器的配置同步情况,在所述控制器完成与主领导控制器的配置同步后,确认所述控制器升级完成;
[0141] 在确认所述第一类控制器中的各控制器的升级完成且对业务流量的控制恢复正常后,对所述第二类控制器中的每个控制器执行如下操作:
[0142] 控制所述控制器上的业务迁移到同一备份组内的一个备控制器上;
[0143] 对被控制的网络设备的业务流量进行监控,当所述业务流量恢复正常后,利用所述新版本文件对所述控制器进行升级;
[0144] 监控所述控制器与主领导控制器的配置同步情况,在所述控制器完成与主领导控制器的配置同步后,确认所述控制器升级完成;
[0145] 在确认所述第二类控制器中的各控制器的升级完成且对业务流量的控制恢复正常后,通知所述业务迁移模块406进行业务迁移。
[0146] 针对第三种分类情况,控制模块405可不对处于宕机状态的控制器进行升级,而只对其它类别的控制器进行升级,具体升级过程同前述。
[0147] 图5为本发明实施例中又一种不中断业务软件升级装置的示例性结构图。如图5所示,该装置包括:接收模块501、业务迁移模块502和升级模块503。
[0148] 文件接收模块501用于接收主领导控制器发送的新版本文件;
[0149] 业务迁移模块502用于在主领导控制器的控制下,将业务迁移到同一备份组内的控制器上;
[0150] 升级模块503用于在主领导控制器的控制下,利用所述新版本文件进行升级。
[0151] 进一步地,该装置还可包括一业务接收模块504,用于接收来自其它控制器上的业务。
[0152] 此外,当该装置被选为新的主领导控制器时,该装置还可进一步包括一控制模块505,用于对被控制的网络设备的业务流量进行监控,当所述业务流量恢复正常后,控制迁出业务的控制器利用所述新版本文件进行升级;并监控所述迁出业务的控制器与主领导控制器的配置同步情况,在所述迁出业务的控制器完成与主领导控制器的配置同步后,确认所述迁出业务的控制器升级完成。
[0153] 图6为本发明实施例中不中断业务软件升级装置的又一示例性结构图。如图6所示,该装置包括处理器601和存储器602。其中,存储器602存储有可被处理器601执行的用于实现不中断业务软件升级的计算机可执行指令。这些计算机可执行指令也可理解为对应图4或图5中的各功能模块的计算机可执行指令,当所述指令被执行时完成的操作主要为本实施例方案中主领导控制器或某一成员控制器所完成的功能。
[0154] 本实施例中的不中断业务软件升级装置可布置在主领导控制器中。
[0155] 以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈