CN105337904B - 控制器集群的升级方法及装置 - Google Patents

控制器集群的升级方法及装置 Download PDF

Info

Publication number
CN105337904B
CN105337904B CN201410381430.2A CN201410381430A CN105337904B CN 105337904 B CN105337904 B CN 105337904B CN 201410381430 A CN201410381430 A CN 201410381430A CN 105337904 B CN105337904 B CN 105337904B
Authority
CN
China
Prior art keywords
controller
message
upgrading
downloading
zone
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
Application number
CN201410381430.2A
Other languages
English (en)
Other versions
CN105337904A (zh
Inventor
张圣彦
罗逸秀
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
New H3C Technologies Co Ltd
Original Assignee
New H3C Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by New H3C Technologies Co Ltd filed Critical New H3C Technologies Co Ltd
Priority to CN201410381430.2A priority Critical patent/CN105337904B/zh
Priority to PCT/CN2015/086058 priority patent/WO2016019856A1/en
Priority to US15/502,109 priority patent/US10541869B2/en
Publication of CN105337904A publication Critical patent/CN105337904A/zh
Application granted granted Critical
Publication of CN105337904B publication Critical patent/CN105337904B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/64Hybrid switching systems
    • H04L12/6418Hybrid transport
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0813Configuration setting characterised by the conditions triggering a change of settings
    • H04L41/082Configuration setting characterised by the conditions triggering a change of settings the condition being updates or upgrades of network functionality
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/085Retrieval of network configuration; Tracking network configuration history
    • H04L41/0853Retrieval of network configuration; Tracking network configuration history by actively collecting configuration information or by backing up configuration information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/085Retrieval of network configuration; Tracking network configuration history
    • H04L41/0859Retrieval of network configuration; Tracking network configuration history by keeping history of different configuration generations or by rolling back to previous configuration versions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0893Assignment of logical groups to network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0894Policy-based network configuration management

Abstract

本发明提供一种控制器集群的升级方法及装置,用于SDN框架下的控制器集群中的管理控制器和区域控制器,该方法通过对控制器集群中的管理控制器和区域控制器进行逐步升级,解决了逐台升级时效率过低的问题,并避免对版本服务器造成过大压力。

Description

控制器集群的升级方法及装置
技术领域
本发明涉及通信技术领域,尤其涉及控制器集群的升级方法及装置。
背景技术
随着Overlay(叠加)网络技术的日益发展,基于SDN(Software Defined Network,软件定义网络)框架下的Overlay网络规模也逐渐增加,使得大规模的数据中心使用大量的SDN控制器,以保证网络稳定性。
然而,SDN控制器数量的增加也导致了SDN控制器的升级工作变的非常繁琐、复杂:如果对SDN控制器进行逐台升级,则升级效率很低;如果对所有SDN控制器同时升级,则不仅存储升级文件的版本服务器压力过大,大量数据还可能造成对上游设备的冲击,占用带宽进而影响用户业务。
发明内容
有鉴于此,本发明提供一种新的技术方案,可以解决控制器集群在升级过程中,逐台升级导致效率很低、同时升级导致版本服务器压力过大的技术问题。
为实现上述目的,本发明提供技术方案如下:
根据本发明的第一方面,提出了一种控制器集群的升级方法,用于软件定义网络SDN框架下的控制器集群中的管理控制器上,该控制器集群还包括配置于区域内的区域控制器,所述方法包括:
当控制器集群存在升级需求时,所述管理控制器从版本服务器下载对应版本的升级文件,并完成本地升级操作;
向作为本端设备的子节点的区域控制器发送升级通告报文,该升级通告报文中包含产品类型和本端设备的当前版本信息,并接收产品类型相同且当前版本信息不同的区域控制器返回的升级通告响应报文;
记录所述升级通告响应报文中包含的相应区域控制器的当前版本信息和地址信息,向被记录的区域控制器发送下载启动报文,并开启本地的文件服务器,以由被记录的区域控制器从该文件服务器中获取升级文件及执行版本升级操作。
根据本发明的第二方面,提出了一种控制器集群的升级方法,用于软件定义网络SDN框架下的控制器集群中被配置于区域内的区域控制器上,该控制器集群还包括管理控制器,所述方法包括:
从作为本端设备的根节点的管理控制器接收升级通告报文,该升级通告报文中包含产品类型和所述管理控制器的当前版本信息,并当产品类型相同且当前版本信息不同时返回相应的升级通告响应报文;
当接收到来自所述管理控制器的下载启动报文时,连接至所述管理控制器处的文件服务器,并从该文件服务器中获取升级文件,以执行版本升级操作。
根据本发明的第三方面,提出了一种控制器集群的升级装置,用于软件定义网络SDN框架下的控制器集群中的管理控制器上,该控制器集群还包括配置于区域内的区域控制器,所述装置包括:
下载单元,用于当控制器集群存在升级需求时,从版本服务器下载对应版本的升级文件,并完成本地升级操作;
收发单元,用于向作为本端设备的子节点的区域控制器发送升级通告报文,该升级通告报文中包含产品类型和本端设备的当前版本信息,并接收产品类型相同且当前版本信息不同的区域控制器返回的升级通告响应报文;
记录单元,用于记录所述升级通告响应报文中包含的相应区域控制器的当前版本信息和地址信息,并由所述收发单元向被记录的区域控制器发送下载启动报文;
开启单元,用于开启本地的文件服务器,以由被记录的区域控制器从该文件服务器中获取升级文件及执行版本升级操作。
根据本发明第四方面,提出了一种控制器集群的升级装置,用于软件定义网络SDN框架下的控制器集群中被配置于区域内的区域控制器上,该控制器集群还包括管理控制器,所述装置包括:
收发单元,用于从作为本端设备的根节点的管理控制器接收升级通告报文,该升级通告报文中包含产品类型和所述管理控制器的当前版本信息,并当产品类型相同且当前版本信息不同时返回相应的升级通告响应报文;
获取单元,用于当所述收发单元接收到来自所述管理控制器的下载启动报文时,连接至所述管理控制器处的文件服务器,并从该文件服务器中获取升级文件,以执行版本升级操作。
由以上技术方案可见,本发明通过对控制器集群中的各控制器进行逐步升级,解决了逐台升级导致的低效率问题,也避免了同时升级时对版本服务器造成的过大压力。
附图说明
图1A示出了根据本发明的一示例性实施例的控制器集群的结构示意图;
图1B示出了根据本发明的另一示例性实施例的控制器集群的结构示意图;
图2示出了根据本发明的一示例性实施例的控制器集群的升级方法的示意流程图;
图3示出了根据本发明的另一示例性实施例的控制器集群的升级方法的示意流程图;
图4示出了根据本发明的一示例性实施例的控制器集群在升级过程中的数据交互示意图;
图5示出了根据本发明的另一示例性实施例的控制器集群在升级过程中的数据交互示意图;
图6示出了根据本发明的又一示例性实施例的控制器集群在升级过程中的数据交互示意图;
图7示出了根据本发明的再一示例性实施例的控制器集群在升级过程中的数据交互示意图;
图8示出了根据本发明的另一示例性实施例的控制器集群在升级过程中的数据交互示意图;
图9示出了根据本发明的一示例性实施例的控制器集群的升级装置的示意框图;
图10示出了根据本发明的另一示例性实施例的控制器集群的升级装置的示意框图。
具体实施方式
本发明通过对控制器集群中的各控制器进行逐步批量自动升级,解决了逐台升级导致的低效率问题,也避免了同时升级时对版本服务器造成的过大压力以及占用上游路径过多带宽,影响用户业务的问题。
为对本发明进行进一步说明,提供下列实施例:
请参考图1A,图1A示出了根据本发明的一示例性实施例的SDN网络中控制器集群的组网结构,在该组网结构中的控制器集群包括Leader Controller(即管理控制器)和其余的Controller(即区域控制器,区别于Leader Controller)。同时,SDN网络内还建立多个Region(区域),则每个Region内包含一台或多台Controller。比如图1A中的控制器集群由Leader Controller和多台Controller构成,多台Controller分配至对应的Region,例如Controller1-1和Controller1-2等分配于Region1内、Controller2-1和Controller2-2等分配于Region2内等,而各Region内的Controller分别连接至vSwitch(virtual Switch,虚拟交换机)、pGW(Packet Data Network Gateway,分组数据网关)等受控设备,例如vSwitch1、vSwitch2和vSwitch3等连接至Region1内的Controller,而pGW1和pGW2等连接至Region2内的Controller。
请参考图1B,作为本发明的另一示例性实施例,SDN网络中控制器集群内的LeaderController可以采用主备结构。优选地,假定控制器集群由Leader Master Controller(主管理控制器)、Leader Slave Controller(备管理控制器)和多台Controller构成,多台Controller分配至对应的Region,并分别由Leader Master Controller和Leader SlaveController对各Region进行管理。例如Controller1-1和Controller1-2等分配于Region1内,并由Leader Master Controller对Region1进行控制管理;Controller12-1和Controller12-2等分配于Region12内,并由Leader Slave Controller对Region12进行控制管理,同时各Region内的Controller分别连接至vSwitch等受控设备,例如vSwitch1、vSwitch2和vSwitch3等连接至Region1内的Controller,vSwitch8、vSwitch9等连接至Region12内的Controller。
当控制器集群存在版本升级需求时(比如基于管理通道的版本升级命令或满足预设的版本升级条件),需要对控制器集群中的Leader Controller和Controller进行版本升级。如背景技术中所述,相关技术针对上述版本升级需求,部分采用所有设备同步升级的方式,当控制器集群中的设备数量较多时,这将导致提供升级文件的版本服务器压力过大;而部分采用逐台升级的方式,即每次仅一台设备从版本服务器处获取升级文件并执行升级操作,这虽然不会导致版本服务器压力过大的技术问题,但对于控制器集群中的设备数量较多的情况,显然将导致版本升级的效率过低。
因此,本发明提出了一种控制器集群的升级方法,下面分别从Leader Controller和Controller两个方面进行描述。
请参考图2,图2示出了根据本发明的一示例性实施例的控制器集群的升级方法,用于软件定义网络SDN框架下的控制器集群中的管理控制器Leader Controller,该控制器集群还包括配置于区域内的区域控制器Controller,所述方法包括:
步骤202,当控制器集群存在升级需求时,Leader Controller从版本服务器下载对应版本的升级文件,并完成本地升级操作;
在本实施例中,针对控制器集群中存在的升级需求,首先由Leader Controller直接从版本服务器下载升级文件并执行版本升级操作,而普通的Controller则暂时不获取升级文件,也不进行升级操作。
本发明中,使得Leader Controller对于升级文件的获取和版本升级操作与普通的Controller分离开,实现了对控制器集群的逐步升级
步骤204,向作为本端设备的子节点的区域控制器发送升级通告报文,该升级通告报文中包含产品类型和本端设备的当前版本信息,并接收产品类型相同且当前版本信息不同的区域控制器返回的升级通告响应报文;
在本实施例中,针对以Leader Controller为根节点的树状控制器集群结构,并由Leader Controller向对应子节点的Controller发送升级通告报文,从而引导这些Controller实现逐步升级。
其中,通过作为子节点的Controller对产品类型和当前版本信息的检查和反馈,使得各Controller的版本情况对于Leader Controller是可知可控的,有助于各Controller的版本升级操作的有序执行。
步骤206,记录所述升级通告响应报文中包含的相应区域控制器的当前版本信息和地址信息,向被记录的区域控制器发送下载启动报文,并开启本地的文件服务器,以由被记录的区域控制器从该文件服务器中获取升级文件及执行版本升级操作。
在本实施例中,被记录的Controller无需从版本服务器处获取升级文件,而是直接从对应根节点的Leader Controller处获取,从而有效缓解了版本服务器的压力。
相应地,图3示出了根据本发明的一示例性实施例的控制器集群的升级方法,用于软件定义网络SDN框架下的控制器集群中被配置于区域内的区域控制器Controller,该控制器集群还包括管理控制器Leader Controller,所述方法包括:
步骤302,从作为本端设备的根节点的管理控制器接收升级通告报文,该升级通告报文中包含产品类型和所述管理控制器的当前版本信息,并当产品类型相同且当前版本信息不同时返回相应的升级通告响应报文;
步骤304,当接收到来自所述管理控制器的下载启动报文时,连接至所述管理控制器处的文件服务器,并从该文件服务器中获取升级文件,以执行版本升级操作。
由上述实施例可知,本发明通过在Leader Controller和Controller之间实现逐步的版本升级操作,并且将版本服务器的压力分担至Leader Controller处,即Controller直接从相应根节点的Leader Controller获取升级文件,从而既解决了逐台升级的效率问题,又能够避免在版本服务器处造成过大压力,有助于提升控制器集群的整体升级效率。
下面结合Leader Controller、Controller和版本服务器三者之间的数据交互过程,对控制器集群的版本升级操作进行详细描述。请参考图4,上述数据交互过程包括:
步骤402,基于控制器集群存在的版本升级需求,Leader Controller连接至版本服务器,并从而版本服务器处获取相应升级文件;
步骤404,根据获取的升级文件,Leader Controller执行本地的版本升级操作;
步骤406,在Leader Controller完成本地的版本升级操作后,控制作为相应子节点的Controller的版本升级过程,具体地,由Leader Controller向子节点的Controller发送升级通告报文,该报文可以通过组播方式发送。
其中,在升级通告报文内可以包含产品类型和Leader Controller的当前版本信息,即Leader Controller升级后的最新版本信息;
步骤408,Controller根据接收到的升级通告报文,判断自身的产品类型和当前版本信息与该升级通告报文是否一致;如果产品类型不同,则直接丢弃该报文;如果产品类型相同、当前版本信息不同,则说明该Controller是版本并非最新版本,需要执行版本升级操作;如果产品类型和当前版本信息均相同,则说明该Controller已经是最新版本,无需升级。
步骤410,针对上述的产品类型相同、当前版本信息不同的情况,Controller需要向Leader Controller作出回应,即向Leader Controller返回相应的升级通告响应报文,该报文中包含该Controller的当前版本信息;
步骤412,Leader Controller解析所有接收到的升级通告响应报文,并对其中的版本信息与对应的Controller进行关联记录,以掌握各Controller的版本状况;
步骤414,Leader Controller向对应子节点的Controller发送下载启动报文,以控制相应的Controller开始获取用于版本升级的升级文件;
并且,Leader Controller还开启本地的文件服务器,以使得Controller可以从中下载升级文件;其中,本发明并不限定对于“发送下载启动报文”和“开启本地的文件服务器”的具体执行顺序,比如可以先执行“发送下载启动报文”再执行“开启本地的文件服务器”,或者可以先执行“开启本地的文件服务器”再执行“发送下载启动报文”,也可以同时执行两个操作;
步骤416,在接收到下载启动报文后,Controller连接至对应Leader Controller处的文件服务器;
步骤418,Controller从文件服务器处下载得到用于版本升级的升级文件。
在各台Controller分别连接至Leader Controller处的文件服务器时,由于文件服务器处的可用连接数量是有限的,使得当Controller数量较多时,可能无法满足所有Controller同时连接并下载升级文件的需求,因而在本发明优选的实现方式中,可以进一步建立相应的文件下载队列,按照Controller发起连接请求的先后顺序,依次与LeadController文件服务器建立连接;当所有的连接均被使用时,其他的Controller需要在队列中进行等待,直至存在空闲连接。
然而,基于队列的等待机制,使得各Controller获取升级文件的效率受限于文件服务器的连接数量,而为了进一步提升控制器集群的升级效率,本发明提出了图5所示的技术方案,包括:
步骤502,在Leader Controller开启了本地的文件服务器后,根据接收到的下载启动报文,假定首先由Controller1-2与文件服务器建立连接,并假定连接建立成功;
步骤504,通过已建立的连接,Controller1-2从相应Leader Controller的文件服务器中下载升级文件;
步骤506,根据接收到的下载启动报文,假定Controller1-1也向上述LeaderController的文件服务器发起连接请求,但由于所有连接均处于忙碌状态,则Controller1-1首先进入等待状态;
步骤508,假定在Controller1-1处于等待状态的过程中,Controller1-2完成了升级文件的下载,并向Leader Controller发送了下载完毕报告报文,该报文中包含Controller1-2的地址信息(比如IP地址、端口号等),用于表明Controller1-2已完成升级文件的下载操作;
步骤510,Leader Controller将接收到的下载完毕报告报文发送至等待连接至所述文件服务器的Controller,比如Controller1-1,并且Leader Controller将Controller1-2标记为下载完成状态;
步骤512,Controller1-1根据下载完毕报告报文中的地址信息连接至对应的控制器,比如Controller1-2;
步骤514,Controller1-1从Controller1-2下载升级文件;
步骤516,在从Controller1-2处完成对升级文件的下载后,Controller1-1向Leader Controller发送下载完毕报告报文,该报文中包含Controller1-1的地址信息,用于表明Controller1-1已完成升级文件的下载操作,且LeaderController可以通过将该下载完毕报告报文根据预定的负载分担策略选择发送至其他未连接文件服务器的Controller,使得这些Controller可以进一步连接至Controller1-1并从Controller1-1处下载升级文件;
步骤518,基于接收到的来自Controller1-1的下载完毕报告报文,LeaderController将Controller1-1标记为下载完成状态;
步骤520,当作为Leader Controller的子节点的所有Controller均被标记为下载完成状态时,向这些Controller发送升级启动报文,比如向Controller1-1和Controller1-2发送该升级启动报文;
步骤522,Controller1-1和Controller1-2分别根据接收到的升级启动报文,利用下载完成的升级文件实现版本升级操作。
由上述实施例可知,本发明通过在Controller之间实现升级文件的下载,使得避免Leader Controller处文件服务器的连接数量限制各Controller对升级文件的下载效率,并且也实现了对Leader Controller处文件服务器的负载分担,有效提升了控制器集群的版本升级效率。
在上述实施例中,Controller可以为分配至各个区域内的任意一台Controller,而针对区域内采用“主-备”Controller结构的情况下,本发明还进一步提出了如图6所示的技术方案,该技术方案假定在Controller1-1所处的区域内,还配置了对应于Controller1-1的备份Controller,即Controller1-1’,使得由Controller1-1和Controller1-1’构成主备结构,则Leader Controller在控制Controller1-1和Controller1-1’进行版本升级操作的过程中,其具体过程包括:
步骤602,Leader Controller分别向作为其子节点的所有Controller发送升级通告报文,该报文以组播形式发送,使得Controller1-1和Controller1-1’会分别接受到该组播报文;
步骤604,根据预配置的处理方式,Controller1-1会对接收到的升级通告报文进行响应,具体过程如图4的步骤406~步骤418等所示,此处不再赘述;
步骤604’,根据预配置的处理方式,Controller1-1’在接收到来自LeaderController的升级通告报文后,不会对该报文进行响应,而是直接丢弃该报文;
步骤606,基于Controller1-1对升级通告报文的响应,假定执行到了LeaderController向Controller1-1发送升级启动报文,即对应于图5所示的步骤520;
步骤608,作为主控制器的Controller1-1根据接收到的升级启动报文,向Controller1-1’发送通告消息,用于告知作为备控制器的Controller1-1’执行升级文件的获取操作;
步骤610,响应于来自Controller1-1的通告消息,Controller1-1’从Controller1-1处获取升级文件;
步骤612,根据获取到的升级文件,Controller1-1’执行本地的版本升级操作;
步骤614,在完成版本升级操作后,Controller1-1’将该消息告知Controller1-1;
步骤616,Controller1-1根据下载的升级文件,执行本地的版本升级操作。
由上述实施例可知,本发明通过使得主控制器和备控制器分步升级,可以确保SDN网络在升级过程中的稳定性;同时,备控制器从相应的主控制器处获取升级文件,有助于缓解版本服务器和Leader Controller的数据交互压力,也避免Leader Controller的文件服务器可支持的连接数量有限而限制了Controller对于升级文件的获取效率。
当然,除了Controller外,Leader Controller也可以采用主备结构,则对于同时具备主Leader Controller和备Leader Controller的SDN控制器集群,本发明进一步提出了如图7和图8所示的技术方案,包括:
步骤702,主Leader Controller从版本服务器下载升级文件并执行本地的版本升级操作;
步骤704,主Leader Controller向备Leader Controller发送包含产品信息和主Leader Controller的当前版本信息1的报文,由于主Leader Controller已经完成了版本升级,则该当前版本信息1即其他Controller所需要升至的最新版本;
备Leader Controller在接收到上述报文后,会将其与本地的产品类型、版本信息进行比较,则根据比较结果可能出现多种情况,比如当产品类型不同时,备LeaderController将直接丢弃该报文;当产品类型相同时,则根据版本信息的可能情形分别如图7和图8所示。
如图7所示,步骤704之后的处理流程可以包括:
步骤706,备Leader Controller检测到本地与接收到报文的产品类型相同,且本地的当前版本信息2与报文中的当前版本信息1不同,即备Leader Controller的当前版本并非最新版本,需要执行版本升级操作;
步骤708,备Leader Controller向主Leader Controller发送下载请求报文,以发起相应的升级文件下载请求;
步骤710,备Leader Controller从主Leader Controller处下载升级文件;
步骤712,备Leader Controller根据下载得到的升级文件,执行本地的版本升级操作。当然,备Leader Controller在完成版本升级后,可以将升级后的版本告知主LeaderController,以便于主Leader Controller对备Leader Controller的版本管理。
如图8所示,步骤704之后的处理流程可以包括:
步骤706’,备Leader Controller检测到本地的产品类型和版本与接收到的报文均一致,即备Leader Controller的版本已经是最新版本,不需要执行版本升级操作;
步骤708’,备Leader Controller将包含自身的当前版本信息2的报文发送至主Leader Controller;
步骤710’,主Leader Controller更新本地记录的备Leader Controller的版本信息。
由上述技术方案可知,本发明针对采用主备结构的Leader Controller,进一步对主Leader Controller和备Leader Controller进行逐步升级,从而有助于进一步缓解版本服务器的压力,提升控制器集群的版本升级效率。
对应于上述的控制器集群的升级方法,本发明还提出了一种控制器集群的升级装置,用于软件定义网络SDN框架下的控制器集群中的管理控制器上,该控制器集群还包括配置于区域内的区域控制器,所述装置包括:
下载单元,用于当控制器集群存在升级需求时,从版本服务器下载对应版本的升级文件,并完成本地升级操作;
收发单元,用于向作为本端设备的子节点的区域控制器发送升级通告报文,该升级通告报文中包含产品类型和本端设备的当前版本信息,并接收产品类型相同且当前版本信息不同的区域控制器返回的升级通告响应报文;
记录单元,用于记录所述升级通告响应报文中包含的相应区域控制器的当前版本信息和地址信息,并由所述收发单元向被记录的区域控制器发送下载启动报文;
开启单元,用于开启本地的文件服务器,以由被记录的区域控制器从该文件服务器中获取升级文件及执行版本升级操作。
可选的,所述收发单元还用于:
接收来自区域控制器的下载完毕报告报文,该报文中包含相应区域控制器的地址信息,用于表明相应区域控制器已完成升级文件的下载操作;
将接收到的区域控制器的下载完毕报告报文根据预定的负载分担策略发送至等待连接至所述文件服务器的其他区域控制器,以由该等待连接的区域控制器根据其中的地址信息连接至对应的已下载完成的区域控制器上,并从该已下载完成的区域控制器下载升级文件。
可选的,还包括:
标记单元,用于在所述收发单元接收到所述区域控制器的下载完毕报告报文时,将相应的已下载完成的区域控制器标记为下载完成状态;
其中,当所有被记录的区域控制器均被标记为下载完成状态时,所述收发单元向被记录的区域控制器发送升级启动报文,以控制相应的区域控制器根据已下载的升级文件执行版本升级操作。
可选的,所述收发单元还用于:
当本端设备为主管理控制器时,在本端设备完成本地升级操作后,向对应的备管理控制器发送包含产品类型和本端设备的当前版本信息的报文,并接收该备管理控制器返回的报文;其中,若返回下载请求报文,则向该备管理控制器提供对升级文件的下载,若返回包含所述备管理控制器的当前版本信息的报文,则由所述记录单元本地更新对该备管理控制器的版本信息记录;
当本端设备为备管理控制器时,接收来自对应的主管理控制器的包含产品类型和该主管理控制器的当前版本信息的报文;其中,若本端设备的产品类型和当前版本信息均与所述主管理服务器相同,则返回包含本端设备的当前版本信息的报文,以由所述主管理服务器本地更新对本端设备的版本信息记录,若本端设备的产品类型与所述主管理服务器相同、当前版本信息不同,则向所述主管理控制器返回下载请求报文,由所述下载单元从主管理控制器下载相应的升级文件,并在完成本地升级操作后,返回包含本端设备的当前版本信息的报文。
本发明还提出了一种控制器集群的升级装置,用于软件定义网络SDN框架下的控制器集群中被配置于区域内的区域控制器上,该控制器集群还包括管理控制器,所述装置包括:
收发单元,用于从作为本端设备的根节点的管理控制器接收升级通告报文,该升级通告报文中包含产品类型和所述管理控制器的当前版本信息,并当产品类型相同且当前版本信息不同时返回相应的升级通告响应报文;
获取单元,用于当所述收发单元接收到来自所述管理控制器的下载启动报文时,连接至所述管理控制器处的文件服务器,并从该文件服务器中获取升级文件,以执行版本升级操作。
可选的,所述收发单元还用于:
当本端设备完成升级文件的下载操作时,向所述管理控制器发送下载完毕报告报文,该报文中包含本端设备的地址信息,以由所述管理控制器将本端设备标记为下载完成状态。
可选的,所述下载单元还用于:
在尚未连接至所述管理控制器处的文件服务器的情况下,若接收到所述管理控制器发送的其他区域控制器的下载完毕报告报文,则根据其中的地址信息连接至对应的区域控制器,并从该对应的区域控制器下载升级文件。
可选的,所述控制器集群的升级装置还包括处理单元,用于:
当本端设备为主区域控制器时,若接收到来自所述管理控制器的升级启动报文,则向对应的备区域控制器进行通告,以由该备区域控制器从本端设备获取升级文件并执行版本升级操作,并在该备区域控制器完成版本升级操作后,执行相应的版本升级操作;
当本端设备为备区域控制器时,丢弃所述升级通告报文。
因此,本发明通过对控制器集群中的各控制器进行逐步批量自动升级,解决了逐台升级导致的低效率问题,也避免了同时升级时对版本服务器造成的过大压力以及占用上游路径过多带宽,影响用户业务的问题。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

Claims (16)

1.一种控制器集群的升级方法,其特征在于,用于软件定义网络SDN框架下的控制器集群中的管理控制器上,该控制器集群还包括配置于区域内的区域控制器,所述方法包括:
当控制器集群存在升级需求时,所述管理控制器从版本服务器下载对应版本的升级文件,并完成本地升级操作;
向作为本端设备的子节点的区域控制器发送升级通告报文,该升级通告报文中包含产品类型和本端设备的当前版本信息,并接收产品类型相同且当前版本信息不同的区域控制器返回的升级通告响应报文;
记录所述升级通告响应报文中包含的相应区域控制器的当前版本信息和地址信息,向被记录的区域控制器发送下载启动报文,并开启本地的文件服务器,以由被记录的区域控制器从该文件服务器中获取升级文件及执行版本升级操作。
2.根据权利要求1所述的方法,其特征在于,还包括:
接收来自区域控制器的下载完毕报告报文,该报文中包含相应区域控制器的地址信息,用于表明相应区域控制器已完成升级文件的下载操作;
将接收到的下载完毕报告报文按照预定负载分担策略发送至等待连接至所述文件服务器的区域控制器,以由该等待连接的区域控制器根据其中的地址信息连接至对应的已下载完成的区域控制器上,并从该已下载完成的区域控制器下载升级文件。
3.根据权利要求2所述的方法,其特征在于,还包括:
在接收到所述下载完毕报告报文时,将相应的已下载完成的区域控制器标记为下载完成状态;
当所有被记录的区域控制器均被标记为下载完成状态时,向被记录的区域控制器发送升级启动报文,以控制相应的区域控制器根据已下载的升级文件执行版本升级操作。
4.根据权利要求1所述的方法,其特征在于,还包括:
当本端设备为主管理控制器时,本端设备在完成本地升级操作后,向对应的备管理控制器发送包含产品类型和本端设备的当前版本信息的报文,并接收该备管理控制器返回的报文;其中,若返回下载请求报文,则向该备管理控制器提供对升级文件的下载,若返回包含所述备管理控制器的当前版本信息的报文,则本地更新对该备管理控制器的版本信息记录;
当本端设备为备管理控制器时,接收来自对应的主管理控制器的包含产品类型和该主管理控制器的当前版本信息的报文;其中,若本端设备的产品类型和当前版本信息均与所述主管理服务器相同,则返回包含本端设备的当前版本信息的报文,以由所述主管理服务器本地更新对本端设备的版本信息记录,若本端设备的产品类型与所述主管理服务器相同且当前版本信息不同,则向所述主管理控制器返回下载请求报文,从主管理控制器下载相应的升级文件,并在完成本地升级操作后,返回包含本端设备的当前版本信息的报文。
5.一种控制器集群的升级方法,其特征在于,用于软件定义网络SDN框架下的控制器集群中被配置于区域内的区域控制器上,该控制器集群还包括管理控制器,所述方法包括:
从作为本端设备的根节点的管理控制器接收升级通告报文,该升级通告报文中包含产品类型和所述管理控制器的当前版本信息,并当产品类型相同且当前版本信息不同时返回相应的升级通告响应报文;
当接收到来自所述管理控制器的下载启动报文时,连接至所述管理控制器处的文件服务器,并从该文件服务器中获取升级文件,以执行版本升级操作。
6.根据权利要求5所述的方法,其特征在于,还包括:
当本端设备完成升级文件的下载操作时,向所述管理控制器发送下载完毕报告报文,该报文中包含本端设备的地址信息,以由所述管理控制器将本端设备标记为下载完成状态。
7.根据权利要求5所述的方法,其特征在于,还包括:
在尚未连接至所述管理控制器处的文件服务器的情况下,若接收到所述管理控制器发送的其他区域控制器的下载完毕报告报文,则根据其中的地址信息连接至对应的区域控制器,并从该对应的区域控制器下载升级文件。
8.根据权利要求5所述的方法,其特征在于,还包括:
当本端设备为主区域控制器时,若接收到来自所述管理控制器的升级启动报文,则向对应的备区域控制器进行通告,以由该备区域控制器从本端设备获取升级文件并执行版本升级操作,并在该备区域控制器完成版本升级操作后,执行相应的版本升级操作;
当本端设备为备区域控制器时,丢弃所述升级通告报文。
9.一种控制器集群的升级装置,其特征在于,用于软件定义网络SDN框架下的控制器集群中的管理控制器上,该控制器集群还包括配置于区域内的区域控制器,所述装置包括:
下载单元,用于当控制器集群存在升级需求时,从版本服务器下载对应版本的升级文件,并完成本地升级操作;
收发单元,用于向作为本端设备的子节点的区域控制器发送升级通告报文,该升级通告报文中包含产品类型和本端设备的当前版本信息,并接收产品类型相同且当前版本信息不同的区域控制器返回的升级通告响应报文;
记录单元,用于记录所述升级通告响应报文中包含的相应区域控制器的当前版本信息和地址信息,并由所述收发单元向被记录的区域控制器发送下载启动报文;
开启单元,用于开启本地的文件服务器,以由被记录的区域控制器从该文件服务器中获取升级文件及执行版本升级操作。
10.根据权利要求9所述的装置,其特征在于,所述收发单元还用于:
接收来自区域控制器的下载完毕报告报文,该报文中包含相应区域控制器的地址信息,用于表明相应区域控制器已完成升级文件的下载操作;
将接收到的区域控制器的下载完毕报告报文按照预定负载分担策略发送至等待连接至所述文件服务器的其他区域控制器,以由该等待连接的区域控制器根据其中的地址信息连接至对应的已下载完成的区域控制器上,并从该已下载完成的区域控制器下载升级文件。
11.根据权利要求10所述的装置,其特征在于,还包括:
标记单元,用于在所述收发单元接收到所述区域控制器的下载完毕报告报文时,将相应的已下载完成的区域控制器标记为下载完成状态;
其中,当所有被记录的区域控制器均被标记为下载完成状态时,所述收发单元向被记录的区域控制器发送升级启动报文,以控制相应的区域控制器根据已下载的升级文件执行版本升级操作。
12.根据权利要求9所述的装置,其特征在于,所述收发单元还用于:
当本端设备为主管理控制器时,在本端设备完成本地升级操作后,向对应的备管理控制器发送包含产品类型和本端设备的当前版本信息的报文,并接收该备管理控制器返回的报文;其中,若返回下载请求报文,则向该备管理控制器提供对升级文件的下载,若返回包含所述备管理控制器的当前版本信息的报文,则由所述记录单元本地更新对该备管理控制器的版本信息记录;
当本端设备为备管理控制器时,接收来自对应的主管理控制器的包含产品类型和该主管理控制器的当前版本信息的报文;其中,若本端设备的产品类型和当前版本信息均与所述主管理服务器相同,则返回包含本端设备的当前版本信息的报文,以由所述主管理服务器本地更新对本端设备的版本信息记录,若本端设备的产品类型与所述主管理服务器相同且当前版本信息不同,则向所述主管理控制器返回下载请求报文,由所述下载单元从主管理控制器下载相应的升级文件,并在完成本地升级操作后,返回包含本端设备的当前版本信息的报文。
13.一种控制器集群的升级装置,其特征在于,用于软件定义网络SDN框架下的控制器集群中被配置于区域内的区域控制器上,该控制器集群还包括管理控制器,所述装置包括:
收发单元,用于从作为本端设备的根节点的管理控制器接收升级通告报文,该升级通告报文中包含产品类型和所述管理控制器的当前版本信息,并当产品类型相同且当前版本信息不同时返回相应的升级通告响应报文;
获取单元,用于当所述收发单元接收到来自所述管理控制器的下载启动报文时,连接至所述管理控制器处的文件服务器,并从该文件服务器中获取升级文件,以执行版本升级操作。
14.根据权利要求13所述的装置,其特征在于,所述收发单元还用于:
当本端设备完成升级文件的下载操作时,向所述管理控制器发送下载完毕报告报文,该报文中包含本端设备的地址信息,以由所述管理控制器将本端设备标记为下载完成状态。
15.根据权利要求13所述的装置,其特征在于,所述下载单元还用于:
在尚未连接至所述管理控制器处的文件服务器的情况下,若接收到所述管理控制器发送的其他区域控制器的下载完毕报告报文,则根据其中的地址信息连接至对应的区域控制器,并从该对应的区域控制器下载升级文件。
16.根据权利要求13所述的装置,其特征在于,还包括处理单元,用于:
当本端设备为主区域控制器时,若接收到来自所述管理控制器的升级启动报文,则向对应的备区域控制器进行通告,以由该备区域控制器从本端设备获取升级文件并执行版本升级操作,并在该备区域控制器完成版本升级操作后,执行相应的版本升级操作;
当本端设备为备区域控制器时,丢弃所述升级通告报文。
CN201410381430.2A 2014-08-05 2014-08-05 控制器集群的升级方法及装置 Active CN105337904B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201410381430.2A CN105337904B (zh) 2014-08-05 2014-08-05 控制器集群的升级方法及装置
PCT/CN2015/086058 WO2016019856A1 (en) 2014-08-05 2015-08-04 Upgrading of controller cluster
US15/502,109 US10541869B2 (en) 2014-08-05 2015-08-04 Upgrading of controller cluster

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410381430.2A CN105337904B (zh) 2014-08-05 2014-08-05 控制器集群的升级方法及装置

Publications (2)

Publication Number Publication Date
CN105337904A CN105337904A (zh) 2016-02-17
CN105337904B true CN105337904B (zh) 2018-11-27

Family

ID=55263154

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410381430.2A Active CN105337904B (zh) 2014-08-05 2014-08-05 控制器集群的升级方法及装置

Country Status (3)

Country Link
US (1) US10541869B2 (zh)
CN (1) CN105337904B (zh)
WO (1) WO2016019856A1 (zh)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016000166A1 (zh) * 2014-06-30 2016-01-07 华为技术有限公司 一种数据处理方法及智能终端
US10374956B1 (en) * 2015-09-25 2019-08-06 Amazon Technologies, Inc. Managing a hierarchical network
EP3391597B1 (en) * 2015-12-18 2020-09-16 Coriant Oy A method for managing configuration of a network element and a network element
CN107453887A (zh) * 2016-05-31 2017-12-08 中兴通讯股份有限公司 设备处理方法、装置及控制器
US10680852B2 (en) * 2016-07-14 2020-06-09 Hewlett Packard Enterprise Development Lp Configuration of a managed device
CN106357771B (zh) * 2016-09-20 2020-03-17 天脉聚源(北京)科技有限公司 一种状态同步方法及装置
CN106685688A (zh) * 2016-09-26 2017-05-17 深圳市潮流网络技术有限公司 一种集群计算机设备同步升级方法
CN106550014A (zh) * 2016-10-09 2017-03-29 华为数字技术(成都)有限公司 服务器集群中的节点升级方法及装置
CN106803790B (zh) * 2016-12-06 2019-09-17 浙江大华技术股份有限公司 一种集群系统的升级控制方法及装置
CN107483224B (zh) * 2017-05-16 2021-01-19 上海博达数据通信有限公司 基于dr选举的无线路由版本升级方法
CN109495532A (zh) * 2017-09-13 2019-03-19 北京京东尚科信息技术有限公司 客户端更新方法和装置
CN107682197A (zh) * 2017-10-17 2018-02-09 锐捷网络股份有限公司 设备升级方法、网络设备及服务器
CN107704260B (zh) * 2017-10-31 2021-03-12 广东小天才科技有限公司 一种更新应用软件的软件开发工具包的方法及系统
JP7219774B2 (ja) 2018-02-20 2023-02-08 ノボ・ノルデイスク・エー/エス ダイヤル部材と係合するための取り付け特徴部を備えたアクセサリ装置
CN108882277B (zh) * 2018-05-28 2022-04-26 新华三技术有限公司 一种版本升级的方法及装置
CN109032644A (zh) * 2018-07-27 2018-12-18 蔚来汽车有限公司 充电桩、充电桩群的升级方法和装置、控制器及介质
CN109088931A (zh) * 2018-08-20 2018-12-25 北京粉笔蓝天科技有限公司 面向分布式系统的数据发布方法、装置、系统及存储介质
US10778519B2 (en) 2018-08-27 2020-09-15 Hewlett Packard Enterprise Development Lp Intelligent upgrades for network devices
CN110896404B (zh) * 2018-09-12 2021-09-14 华为技术有限公司 数据处理的方法、装置和计算节点
CN109710285B (zh) * 2018-11-22 2022-09-16 网宿科技股份有限公司 一种设备升级方法及系统
CN111124457B (zh) * 2019-12-27 2024-03-19 合肥美的智能科技有限公司 控制器的升级方法、主控制器和上位机
CN111459521B (zh) * 2020-03-31 2024-03-22 上海依图网络科技有限公司 集群升级方法及装置
CN111858050B (zh) * 2020-07-17 2023-07-14 中国工商银行股份有限公司 服务器集群混合部署方法、集群管理节点及相关系统
CN112260948B (zh) * 2020-10-16 2021-10-22 中国科学院声学研究所 一种基于批量更新的多核sdn交换机流表管理方法及系统
US11490481B2 (en) * 2021-03-30 2022-11-01 Novatek Microelectronics Corp. Pulse width modulation driver and operation method thereof
CN113485729A (zh) * 2021-06-16 2021-10-08 义乌吉利自动变速器有限公司 控制器升级方法、装置及计算机存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1777110A (zh) * 2005-11-25 2006-05-24 杭州华为三康技术有限公司 一种集群设备批量传输文件的方法及文件传输设备
CN101217411A (zh) * 2008-01-02 2008-07-09 杭州华三通信技术有限公司 实现堆叠设备软件升级的方法、设备及系统
CN101465757A (zh) * 2009-01-15 2009-06-24 武汉烽火网络有限责任公司 一种集群网络中批量升级的方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020188934A1 (en) * 2001-06-12 2002-12-12 Nortel Networks Limited Method and system for upgrading existing firmware on third party hardware
US20050010915A1 (en) * 2003-07-11 2005-01-13 Chih-Wei Chen Network-based server code auto upgrade method and system
US7266815B2 (en) * 2003-09-29 2007-09-04 International Business Machines Corporation Automated control of a licensed internal code update on a storage controller
JP4747733B2 (ja) * 2005-08-22 2011-08-17 ブラザー工業株式会社 ノード装置、共用情報更新処理プログラム、共用情報更新方法、及び情報共有システム
US9283033B2 (en) 2012-06-30 2016-03-15 Cibiem, Inc. Carotid body ablation via directed energy
US9110717B2 (en) 2012-07-05 2015-08-18 International Business Machines Corporation Managing use of lease resources allocated on fallover in a high availability computing environment
CN104641594B (zh) * 2012-09-26 2017-10-17 惠普发展公司,有限责任合伙企业 组播消息更新

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1777110A (zh) * 2005-11-25 2006-05-24 杭州华为三康技术有限公司 一种集群设备批量传输文件的方法及文件传输设备
CN101217411A (zh) * 2008-01-02 2008-07-09 杭州华三通信技术有限公司 实现堆叠设备软件升级的方法、设备及系统
CN101465757A (zh) * 2009-01-15 2009-06-24 武汉烽火网络有限责任公司 一种集群网络中批量升级的方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
《H3C 集群管理命令》;华三;《https://wenku.baidu.com/view/c8c49514b90d6c85ec3ac6fe.html》;20130923;全文 *

Also Published As

Publication number Publication date
US20170230239A1 (en) 2017-08-10
WO2016019856A1 (en) 2016-02-11
US10541869B2 (en) 2020-01-21
CN105337904A (zh) 2016-02-17

Similar Documents

Publication Publication Date Title
CN105337904B (zh) 控制器集群的升级方法及装置
CN105979009B (zh) 一种针对云应用容器的增加负载自动均衡方法
CN104780071B (zh) 虚拟交换机的升级方法及装置
CN107919969B (zh) 策略控制方法及装置
WO2015117401A1 (zh) 信息的处理方法及装置
CN106815066B (zh) 一种定时任务调度方法、装置及系统
CN106233695A (zh) 用于管理客户端设备的装置和方法
CN101183984B (zh) 网管系统、管理方法及设备
CN105760214A (zh) 一种设备状态及资源信息监测方法、相关设备及系统
CN104935640B (zh) 一种p2p加速的内容分发网络系统及方法
CN105791175A (zh) 软件定义网络中控制传输资源的方法及设备
CN106301829A (zh) 一种网络业务扩容的方法和装置
CN110311831A (zh) 基于容器云的系统资源监控方法及相关设备
CN104679528B (zh) 应用程序远程更新的方法和装置
WO2010148775A1 (zh) 一种通信系统业务升级方法及升级容器设备
CN108702316A (zh) 一种vnf的资源分配方法及装置
CN104468390B (zh) 软件定义网络中基于分布‑集中式架构模型的多控制器负载均衡的方法
CN109656725A (zh) 消息消费者切换方法、装置、存储介质及电子设备
CN103281346A (zh) 断线重连方法、网络系统和代理服务器
EP4050475B1 (en) Image forming apparatus, method, and system for firmware upgrade
CN106210123A (zh) 一个多节点的软件定义网络控制器系统
CN107332814A (zh) 一种请求消息传输方法及装置
CN112202877A (zh) 网关联动方法、网关、云服务器及用户终端
WO2017071567A1 (zh) 无线保真WiFi热点的连接控制方法及装置
CN110798412A (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
CB02 Change of applicant information

Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No.

Applicant after: Xinhua three Technology Co., Ltd.

Address before: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No.

Applicant before: Huasan Communication Technology Co., Ltd.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant