一种高可用集群节点管理方法

文档序号:7823929阅读:405来源:国知局
一种高可用集群节点管理方法
【专利摘要】本发明涉及云计算集群管理【技术领域】,特别是涉及一种高可用集群节点管理方法。本发明包含主节点、备份节点和普通节点三种角色,主节点负责管理集群成员及节点状态检测;备份节点负责备份节点环信息及在主节点发生故障时接替主节点;普通节点负责处理主节点命令及监控前驱节点。本发明能够满足集群规模增大时的功能和性能要求,适用于大多数高可用环境的集群节点管理。
【专利说明】一种高可用集群节点管理方法

【技术领域】
[0001]本发明涉及云计算集群管理【技术领域】,特别是涉及一种高可用集群节点管理方法。

【背景技术】
[0002]高可用集群是以减少服务中断时间为目的的服务器集群技术,目前有很多种流行的高可用集群管理技术,比如HeatBeat、Corosync等,但HeatBeat采用的全对等模型和Corosync采用的获得令牌才能发送消息的方案存在不足,当集群规模变大时,会导致心跳处理延时,从而影响集群的高可用。


【发明内容】

[0003]本发明解决的技术问题在于提供一种大规模高可用集群节点管理方法;可以在大规模的集群中,保证心跳处理性能。
[0004]本发明解决上述技术问题的技术方案是:
[0005]将集群节点区分为主节点、备份节点和普通节点三种,组成集群节点环形结构?’每个节点都定时向后继节点发送心跳消息,当后继节点在指定的时间内没有收到前驱节点发送的心跳消息时,则向主节点上报故障消息;主节点在收到故障消息后,向故障节点发送检测确认消息,确认故障节点是否确实发生故障;最终以主节点检测的结果为准;主节点在确认故障节点后,发送消息告知相关节点,以便其更改监控与被监控节点;环中设置有备份节点,当主节点发生故障时,备份节点将接管主节点的工作,实现集群的高可用。
[0006]所述的主节点作为唯一能够修改节点环结构的角色,当有物理节点加入、退出或发生故障时,主节点修改节点环结构,并将节点环结构信息同步给备份节点,同时发送信息给必要的节点执行指定的操作,如告知某节点修改前驱或后继节点;
[0007]由所述的备份节点随时和主节点保持节点环结构信息同步,确保能在主节点发生故障时,及时接管主节点的工作;备份节点可有多个,离主节点越近,优先级越高,当主节点发生故障时,最高优先级且存活的备份节点自动升级为主节点,并负责更新节点环结构;
[0008]包括主节点、备份节点在内的所有节点都具备普通节点的功能;该功能包括主节点命令处理和心跳机制。
[0009]所述主节点命令处理具体包括:
[0010](I)当节点环发生变化时,主节点发送命令通知普通节点更新前驱和后继节点;
[0011](2)当有备份节点故障时,主节点会发送命令通知普通节点升级为备份节点,并与主节点同步信息;
[0012](3)当节点的后继节点上报该节点可能发生故障后,对该节点发送检测确认消息,该节点应该返回应答消息,表明自己存活。
[0013]所述节点的心跳机制为:
[0014]每一个普通节点同时是监控者和被监控者,在监控它的前驱节点的同时,需要向后继节点发送心跳消息;作为监控者,当在指定时间内未收到前驱节点的心跳消息时,则向主节点报告前驱节点的故障信息;作为被监控者,普通节点要定时向后继节点发送心跳消息,表明自己存活;心跳是节点环保持高可用的基础。
[0015]所述的方法实施的详细流程是:
[0016]第一步,节点环初始化,每个物理节点安装节点环管理系统,由管理人员指定主节点和备份节点,其他的节点默认为普通节点;
[0017]第二步,节点环内的每台物理机定时向自己的后继节点发送心跳消息,并把必要的备份信息同时发送;
[0018]第三步,当后继节点在指定的时间内没有收到前驱节点发送的心跳消息时,则会向主节点发送故障报告;
[0019]第四步,主节点收到故障报告后,会立即向故障节点发送检测确认消息;
[0020]第五步,如果故障节点回应主节点的检测消息,则表明该节点存活,主节点将不做任何处理;如果故障节点没回应主节点的检测消息,则确认该节点发生故障;在向疑似故障节点发送检测消息时,主节点会同时向疑似故障节点的前驱节点发送检测消息,直到找到最近疑似故障节点的一个正常节点为止,这样做的目的是为了防止多节点同时故障;
[0021]第六步,主节点更新节点环结构信息,把故障节点从节点环结构中删除,并通知相关节点更新前驱和后继节点信息。
[0022]当备份节点接管主节点的工作后负责新环的构建和维护,同时自动指定新的备份节点,以保证环的可靠性。
[0023]采用本发明的方法,具有以下有益效果:(I)适用于对系统服务有高可用需求的环境;(2)架构简单,经济实用高效;(3)具备良好的扩展性,在集群规模增大时,能满足功能需求和性能需求;(4)快速检测故障节点及快速完成切换;(5)对硬件无严格要求,各节点硬件配置可以不同;(6)网络心跳检测,不必使用物理心跳线;(7)提高运维效率,降低维护成本。

【专利附图】

【附图说明】
[0024]下面结合附图对本发明进一步说明:
[0025]图1是本发明的架构示意图。

【具体实施方式】
[0026]如图1所示,本发明由主节点、备份节点和普通节点三种角色组成高可用集群节点环形结构:
[0027]1、主节点:主节点是唯一能够修改节点环结构的角色,当有物理节点加入、退出或发生故障时,主节点会修改节点环结构,并将节点环结构信息同步给备份节点,同时发送信息给必要的节点执行指定的操作,如告知某节点修改前驱或后继节点;
[0028]2、备份节点:备份节点要随时和主节点保持节点环结构信息同步,确保能在主节点发生故障时,及时接管主节点的工作;备份节点可有多个,离主节点越近,优先级越高,当主节点发生故障时,最高优先级且存活的备份节点自动升级为主节点,并负责更新节点环结构;
[0029]3、普通节点:虽然有些节点的角色是主节点或备份节点,但每个节点首先都必须要具备普通节点的功能;普通节点的功能包括主节点命令处理和心跳机制;
[0030]主节点命令处理具体包括:
[0031](I)当节点环发生变化时,主节点会发送命令通知普通节点更新前驱和后继节占.V,
[0032](2)当有备份节点故障时,主节点会发送命令通知普通节点升级为备份节点,并与主节点同步信息;
[0033](3)当节点的后继节点上报该节点可能发生故障后,主节点会对该节点发送检测确认消息,该节点应该返回应答消息,表明自己存活;
[0034]心跳机制:
[0035]每一个普通节点同时是监控者和被监控者,在监控它的前驱节点的同时,需要向后继节点发送心跳消息;作为监控者,当在指定时间内未收到前驱节点的心跳消息时,则向主节点报告前驱节点的故障信息;作为被监控者,普通节点要定时向后继节点发送心跳消息,表明自己存活;心跳是节点环保持高可用的基础。
[0036]如图1所示,高可用集群节点管理的详细流程为:
[0037]第一步,节点环初始化,每个物理节点安装节点环管理系统,由管理人员指定主节点和备份节点,其他的节点默认为普通节点;
[0038]第二步,节点环内的每台物理机定时向自己的后继节点发送心跳消息,并把必要的备份信息同时发送;
[0039]第三步,当后继节点在指定的时间内没有收到前驱节点发送的心跳消息时,则会向主节点发送故障报告;
[0040]第四步,主节点收到故障报告后,会立即向故障节点发送检测确认消息;
[0041]第五步,如果故障节点回应主节点的检测消息,则表明该节点存活,主节点将不做任何处理;如果故障节点没回应主节点的检测消息,则确认该节点发生故障;在向疑似故障节点发送检测消息时,主节点会同时向疑似故障节点的前驱节点发送检测消息,直到找到最近疑似故障节点的一个正常节点为止,这样做的目的是为了防止多节点同时故障;
[0042]第六步,主节点更新节点环结构信息,把故障节点从节点环结构中删除,并通知相关节点更新前驱和后继节点信息;
[0043]为了保证节点环的可靠性和高可用性,环中设置了一个或多个备份节点,备份节点的位置为主节点的后继节点,备份节点和主节点保持信息同步,当主节点发生故障时,最靠近主节点的备份节点自动升级为主节点,接管主节点的工作,负责新环的构建和维护,同时自动指定新的备份节点,以保证环的可靠性。
【权利要求】
1.一种高可用集群节点管理方法,其特征在于:将集群节点区分为主节点、备份节点和普通节点三种,组成集群节点环形结构;每个节点都定时向后继节点发送心跳消息,当后继节点在指定的时间内没有收到前驱节点发送的心跳消息时,则向主节点上报故障消息;主节点在收到故障消息后,向故障节点发送检测确认消息,确认故障节点是否确实发生故障;最终以主节点检测的结果为准;主节点在确认故障节点后,发送消息告知相关节点,以便其更改监控与被监控节点;环中设置有备份节点,当主节点发生故障时,备份节点将接管主节点的工作,实现集群的高可用。
2.根据权利要求1所述的高可用集群节点管理方法,其特征在于: 所述的主节点作为唯一能够修改节点环结构的角色,当有物理节点加入、退出或发生故障时,主节点修改节点环结构,并将节点环结构信息同步给备份节点,同时发送信息给必要的节点执行指定的操作,如告知某节点修改前驱或后继节点; 由所述的备份节点随时和主节点保持节点环结构信息同步,确保能在主节点发生故障时,及时接管主节点的工作;备份节点可有多个,离主节点越近,优先级越高,当主节点发生故障时,最高优先级且存活的备份节点自动升级为主节点,并负责更新节点环结构; 包括主节点、备份节点在内的所有节点都具备普通节点的功能;该功能包括主节点命令处理和心跳机制。
3.根据权利要求1所述的高可用集群节点管理方法,其特征在于: 所述主节点命令处理具体包括: (1)当节点环发生变化时,主节点发送命令通知普通节点更新前驱和后继节点; (2)当有备份节点故障时,主节点会发送命令通知普通节点升级为备份节点,并与主节点同步信息; (3)当节点的后继节点上报该节点可能发生故障后,对该节点发送检测确认消息,该节点应该返回应答消息,表明自己存活。
4.根据权利要求2所述的高可用集群节点管理方法,其特征在于: 所述主节点命令处理具体包括: (1)当节点环发生变化时,主节点发送命令通知普通节点更新前驱和后继节点; (2)当有备份节点故障时,主节点会发送命令通知普通节点升级为备份节点,并与主节点同步信息; (3)当节点的后继节点上报该节点可能发生故障后,对该节点发送检测确认消息,该节点应该返回应答消息,表明自己存活。
5.根据权利要求1至5任一项所述的高可用集群节点管理方法,其特征在于: 所述节点的心跳机制为: 每一个普通节点同时是监控者和被监控者,在监控它的前驱节点的同时,需要向后继节点发送心跳消息;作为监控者,当在指定时间内未收到前驱节点的心跳消息时,则向主节点报告前驱节点的故障信息;作为被监控者,普通节点要定时向后继节点发送心跳消息,表明自己存活;心跳是节点环保持高可用的基础。
6.根据权利要求1至4任一项所述的高可用集群节点管理方法,其特征在于:所述的方法实施的详细流程是: 第一步,节点环初始化,每个物理节点安装节点环管理系统,由管理人员指定主节点和备份节点,其他的节点默认为普通节点; 第二步,节点环内的每台物理机定时向自己的后继节点发送心跳消息,并把必要的备份信息同时发送; 第三步,当后继节点在指定的时间内没有收到前驱节点发送的心跳消息时,则会向主节点发送故障报告; 第四步,主节点收到故障报告后,会立即向故障节点发送检测确认消息; 第五步,如果故障节点回应主节点的检测消息,则表明该节点存活,主节点将不做任何处理;如果故障节点没回应主节点的检测消息,则确认该节点发生故障;在向疑似故障节点发送检测消息时,主节点会同时向疑似故障节点的前驱节点发送检测消息,直到找到最近疑似故障节点的一个正常节点为止,这样做的目的是为了防止多节点同时故障; 第六步,主节点更新节点环结构信息,把故障节点从节点环结构中删除,并通知相关节点更新前驱和后继节点信息。
7.根据权利要求5所述的高可用集群节点管理方法,其特征在于:所述的方法实施的详细流程是: 第一步,节点环初始化,每个物理节点安装节点环管理系统,由管理人员指定主节点和备份节点,其他的节点默认为普通节点; 第二步,节点环内的每台物理机定时向自己的后继节点发送心跳消息,并把必要的备份信息同时发送; 第三步,当后继节点在指定的时间内没有收到前驱节点发送的心跳消息时,则会向主节点发送故障报告; 第四步,主节点收到故障报告后,会立即向故障节点发送检测确认消息; 第五步,如果故障节点回应主节点的检测消息,则表明该节点存活,主节点将不做任何处理;如果故障节点没回应主节点的检测消息,则确认该节点发生故障;在向疑似故障节点发送检测消息时,主节点会同时向疑似故障节点的前驱节点发送检测消息,直到找到最近疑似故障节点的一个正常节点为止,这样做的目的是为了防止多节点同时故障; 第六步,主节点更新节点环结构信息,把故障节点从节点环结构中删除,并通知相关节点更新前驱和后继节点信息。
8.根据权利要求1至4任一项所述的高可用集群节点管理方法,其特征在于:当备份节点接管主节点的工作后负责新环的构建和维护,同时自动指定新的备份节点,以保证环的可靠性。
9.根据权利要求5所述的高可用集群节点管理方法,其特征在于:当备份节点接管主节点的工作后负责新环的构建和维护,同时自动指定新的备份节点,以保证环的可靠性。
10.根据权利要求6所述的高可用集群节点管理方法,其特征在于:当备份节点接管主节点的工作后负责新环的构建和维护,同时自动指定新的备份节点,以保证环的可靠性。
【文档编号】H04L1/22GK104506357SQ201410821765
【公开日】2015年4月8日 申请日期:2014年12月22日 优先权日:2014年12月22日
【发明者】胡文彬, 艾建文, 季统凯 申请人:国云科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1