【技术实现步骤摘要】
控制器集群故障处理方法、装置、控制器及控制器集群
本专利技术涉及网络
,特别是涉及一种控制器集群故障处理方法、装置、控制器及控制器集群。
技术介绍
随着网络控制器的发展,以及用户网络规模的不断增大,单个控制器已经无法满足用户的需求,并且单个控制器存在单点故障的隐患,可能导致用户网络失去控制而出现问题,因此,控制器需支持分布式集群部署。为满足用户需求,控制器集群支持部署在多个不同的站点,当某一站点因为地震、火灾、停电等灾难性事故,导致该站点部署的控制器不可用时,希望其他站点部署的控制器可以正常组建集群,继续给用户提供服务。控制器集群的服务功能主要由主控制器提供,控制器集群选举主控制器的算法中,要求选举胜出的主控制器获得半数以上的控制器投票。如果控制器集群中部署偶数(即2N,N为正整数)台控制器,在选举主控制器时,可能有两台控制器同时获得半数(即N台)控制器投票,导致无法选出主控制器,使得控制器集群无法提供服务。因此,在实际部署控制器集群时,一般使用奇数(即2N+1,N为正整数)台控制器组建集群。对于部署了 ...
【技术保护点】
1.一种控制器集群故障处理方法,其特征在于,应用于控制器集群中的第一控制器;所述控制器集群包括:所述第一控制器和2N+1个第二控制器;所述第一控制器的节点属性为学习者,所述第二控制器的节点属性为选举者;所述N为正整数;若控制器的节点属性为学习者,则表征禁止该控制器参与主控制器的选举和投票;若控制器的节点属性为选举者,则表征允许该控制器参与主控制器的选举和投票;/n所述方法包括:/n检测各第二控制器是否发生故障;/n若检测到N+1个第二控制器发生故障,则将所述第一控制器自身的节点属性变更为选举者。/n
【技术特征摘要】
1.一种控制器集群故障处理方法,其特征在于,应用于控制器集群中的第一控制器;所述控制器集群包括:所述第一控制器和2N+1个第二控制器;所述第一控制器的节点属性为学习者,所述第二控制器的节点属性为选举者;所述N为正整数;若控制器的节点属性为学习者,则表征禁止该控制器参与主控制器的选举和投票;若控制器的节点属性为选举者,则表征允许该控制器参与主控制器的选举和投票;
所述方法包括:
检测各第二控制器是否发生故障;
若检测到N+1个第二控制器发生故障,则将所述第一控制器自身的节点属性变更为选举者。
2.根据权利要求1所述的方法,其特征在于,各第二控制器记录有:经检测得到的其他第二控制器是否可达的检测信息;
所述检测各第二控制器是否发生故障的步骤,包括:
针对任一第二控制器,若在预设周期内,未收到所述任一第二控制器发送的心跳消息,则从各指定第二控制器中获取针对所述任一第二控制器的检测信息,其中,所述指定第二控制器为经检测确定未发生故障的第二控制器;
若获取到的所有检测信息中存在所述任一第二控制器不可达,则确定所述任一第二控制器发生故障。
3.根据权利要求2所述的方法,其特征在于,所述控制器集群中包括第一站点和第二站点;所述第一站点中设置有N+1个第二控制器,所述第二站点中设置有N个第二控制器和所述第一控制器;所述指定第二控制器为所述第二站点中的N个第二控制器。
4.根据权利要求1所述的方法,其特征在于,所述第一控制器存储有集群成员列表,所述集群成员列表用于记录所述控制器集群中每个控制器的控制器标识和每个控制器的节点属性;
在所述将所述第一控制器自身的节点属性变更为选举者的步骤之后,所述方法还包括:
将所述集群成员列表中所述第一控制器的节点属性更新为选举者,并将任一发生故障的第二控制器的节点属性更新为学习者,得到更新后的集群成员列表;
将所述更新后的集群成员列表发送至各第二控制器,以使所述各第二控制器根据所述更新后的集群成员列表设置自身的节点属性。
5.一种控制器集群故障处理装置,其特征在于,应用于控制器集群中的第一控制器;所述控制器集群包括:所述第一控制器和2N+1个第二控制器;所述第一控制器的节点属性为学习者,所述第二控制器的节点属性为选举者;所述N为正整数;若控制器的节点属性为学习者,则表征禁止该控制器参与主控制器的选举和投票;若控制器的节点属性为选举者,则表征允许该控制器参与主控制器的选举和投票;
所述装置包括:
检测模块,用于检测各...
【专利技术属性】
技术研发人员:陈南飞,
申请(专利权)人:新华三信息安全技术有限公司,
类型:发明
国别省市:安徽;34
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。