CN104506357B - 一种高可用集群节点管理方法 - Google Patents
一种高可用集群节点管理方法 Download PDFInfo
- Publication number
- CN104506357B CN104506357B CN201410821765.1A CN201410821765A CN104506357B CN 104506357 B CN104506357 B CN 104506357B CN 201410821765 A CN201410821765 A CN 201410821765A CN 104506357 B CN104506357 B CN 104506357B
- Authority
- CN
- China
- Prior art keywords
- node
- host
- backup
- message
- host node
- 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
Landscapes
- Small-Scale Networks (AREA)
- Hardware Redundancy (AREA)
Abstract
本发明涉及云计算集群管理技术领域,特别是涉及一种高可用集群节点管理方法。本发明包含主节点、备份节点和普通节点三种角色,主节点负责管理集群成员及节点状态检测;备份节点负责备份节点环信息及在主节点发生故障时接替主节点;普通节点负责处理主节点命令及监控前驱节点。本发明能够满足集群规模增大时的功能和性能要求,适用于大多数高可用环境的集群节点管理。
Description
技术领域
本发明涉及云计算集群管理技术领域,特别是涉及一种高可用集群节点管理方法。
背景技术
高可用集群是以减少服务中断时间为目的的服务器集群技术,目前有很多种流行的高可用集群管理技术,比如HeatBeat、Corosync等,但HeatBeat采用的全对等模型和Corosync采用的获得令牌才能发送消息的方案存在不足,当集群规模变大时,会导致心跳处理延时,从而影响集群的高可用。
发明内容
本发明解决的技术问题在于提供一种大规模高可用集群节点管理方法;可以在大规模的集群中,保证心跳处理性能。
本发明解决上述技术问题的技术方案是:
将集群节点区分为主节点、备份节点和普通节点三种,组成集群节点环形结构;每个节点都定时向后继节点发送心跳消息,当后继节点在指定的时间内没有收到前驱节点发送的心跳消息时,则向主节点上报故障消息;主节点在收到故障消息后,向疑似故障节点发送检测确认消息,确认疑似故障节点是否确实发生故障;最终以主节点检测的结果为准;主节点在确认疑似故障节点发生故障后,发送消息告知相关节点,以便其更改监控与被监控节点;环中设置有备份节点,当主节点发生故障时,备份节点将接管主节点的工作,实现集群的高可用;
所述的方法实施的详细流程是:
第一步,节点环初始化,每个物理节点安装节点环管理***,由管理人员指定主节点和备份节点,其他的节点默认为普通节点;
第二步,节点环内的每个物理节点定时向自己的后继节点发送心跳消息,并把必要的备份信息同时发送;
第三步,当后继节点在指定的时间内没有收到前驱节点发送的心跳消息时,则会向主节点发送故障报告;
第四步,主节点收到故障报告后,会立即向疑似故障节点发送检测确认消息;
第五步,如果疑似故障节点回应主节点的检测确认消息,则表明该节点存活,主节点将不做任何处理;如果疑似故障节点没回应主节点的检测确认消息,则确认该节点发生故障;在向疑似故障节点发送检测确认消息时,主节点会同时向疑似故障节点的前驱节点发送检测消息,直到找到最靠近疑似故障节点的一个正常节点为止,这样做的目的是为了防止多节点同时故障;
第六步,主节点更新节点环结构信息,把故障节点从节点环结构中删除,并通知相关节点更新前驱和后继节点信息;
所述的主节点作为唯一能够修改节点环结构的角色,当有物理节点加入、退出或发生故障时,主节点修改节点环结构,并将节点环结构信息同步给备份节点,同时发送信息给必要的节点执行指定的操作,包括:告知某节点修改前驱或后继节点;
由所述的备份节点随时和主节点保持节点环结构信息同步,确保能在主节点发生故障时,及时接管主节点的工作;备份节点可有多个,离主节点越近,优先级越高,当主节点发生故障时,最高优先级且存活的备份节点自动升级为主节点,并负责更新节点环结构;
包括主节点、备份节点在内的所有节点都具备普通节点的功能;该功能包括主节点命令处理和心跳机制;
所述主节点命令处理具体包括:
(1)当节点环发生变化时,主节点发送命令通知普通节点更新前驱和后继节点;
(2)当有备份节点故障时,主节点发送命令通知普通节点升级为备份节点,并与主节点同步信息;
(3)当节点的后继节点上报该节点可能发生故障后,对该节点发送检测确认消息,若节点返回应答消息,则表明自己存活;
所述节点的心跳机制为:
每一个普通节点同时是监控者和被监控者,在监控它的前驱节点的同时,需要向后继节点发送心跳消息;作为监控者,当在指定时间内未收到前驱节点的心跳消息时,则向主节点报告前驱节点的故障信息;作为被监控者,普通节点要定时向后继节点发送心跳消息,表明自己存活;心跳是节点环保持高可用的基础;
备份节点接管主节点的工作后负责新环的构建和维护,同时自动指定新的备份节点,以保证环的可靠性。
采用本发明的方法,具有以下有益效果:(1)适用于对***服务有高可用需求的环境;(2)架构简单,经济实用高效;(3)具备良好的扩展性,在集群规模增大时,能满足功能需求和性能需求;(4)快速检测故障节点及快速完成切换;(5)对硬件无严格要求,各节点硬件配置可以不同;(6)网络心跳检测,不必使用物理心跳线;(7)提高运维效率,降低维护成本。
附图说明
下面结合附图对本发明进一步说明:
图1是本发明的架构示意图。
具体实施方式
如图1所示,本发明由主节点、备份节点和普通节点三种角色组成高可用集群节点环形结构:
1、主节点:主节点是唯一能够修改节点环结构的角色,当有物理节点加入、退出或发生故障时,主节点会修改节点环结构,并将节点环结构信息同步给备份节点,同时发送信息给必要的节点执行指定的操作,如告知某节点修改前驱或后继节点;
2、备份节点:备份节点要随时和主节点保持节点环结构信息同步,确保能在主节点发生故障时,及时接管主节点的工作;备份节点可有多个,离主节点越近,优先级越高,当主节点发生故障时,最高优先级且存活的备份节点自动升级为主节点,并负责更新节点环结构;
3、普通节点:虽然有些节点的角色是主节点或备份节点,但每个节点首先都必须要具备普通节点的功能;普通节点的功能包括主节点命令处理和心跳机制;
主节点命令处理具体包括:
(1)当节点环发生变化时,主节点会发送命令通知普通节点更新前驱和后继节点;
(2)当有备份节点故障时,主节点会发送命令通知普通节点升级为备份节点,并与主节点同步信息;
(3)当节点的后继节点上报该节点可能发生故障后,主节点会对该节点发送检测确认消息,该节点应该返回应答消息,表明自己存活;
心跳机制:
每一个普通节点同时是监控者和被监控者,在监控它的前驱节点的同时,需要向后继节点发送心跳消息;作为监控者,当在指定时间内未收到前驱节点的心跳消息时,则向主节点报告前驱节点的故障信息;作为被监控者,普通节点要定时向后继节点发送心跳消息,表明自己存活;心跳是节点环保持高可用的基础。
如图1所示,高可用集群节点管理的详细流程为:
第一步,节点环初始化,每个物理节点安装节点环管理***,由管理人员指定主节点和备份节点,其他的节点默认为普通节点;
第二步,节点环内的每台物理机定时向自己的后继节点发送心跳消息,并把必要的备份信息同时发送;
第三步,当后继节点在指定的时间内没有收到前驱节点发送的心跳消息时,则会向主节点发送故障报告;
第四步,主节点收到故障报告后,会立即向故障节点发送检测确认消息;
第五步,如果故障节点回应主节点的检测消息,则表明该节点存活,主节点将不做任何处理;如果故障节点没回应主节点的检测消息,则确认该节点发生故障;在向疑似故障节点发送检测消息时,主节点会同时向疑似故障节点的前驱节点发送检测消息,直到找到最近疑似故障节点的一个正常节点为止,这样做的目的是为了防止多节点同时故障;
第六步,主节点更新节点环结构信息,把故障节点从节点环结构中删除,并通知相关节点更新前驱和后继节点信息;
为了保证节点环的可靠性和高可用性,环中设置了一个或多个备份节点,备份节点的位置为主节点的后继节点,备份节点和主节点保持信息同步,当主节点发生故障时,最靠近主节点的备份节点自动升级为主节点,接管主节点的工作,负责新环的构建和维护,同时自动指定新的备份节点,以保证环的可靠性。
Claims (1)
1.一种高可用集群节点管理方法,其特征在于:将集群节点区分为主节点、备份节点和普通节点三种,组成集群节点环形结构;每个节点都定时向后继节点发送心跳消息,当后继节点在指定的时间内没有收到前驱节点发送的心跳消息时,则向主节点上报故障消息;主节点在收到故障消息后,向疑似故障节点发送检测确认消息,确认疑似故障节点是否确实发生故障;最终以主节点检测的结果为准;主节点在确认疑似故障节点发生故障后,发送消息告知相关节点,以便其更改监控与被监控节点;环中设置有备份节点,当主节点发生故障时,备份节点将接管主节点的工作,实现集群的高可用;
所述的方法实施的详细流程是:
第一步,节点环初始化,每个物理节点安装节点环管理***,由管理人员指定主节点和备份节点,其他的节点默认为普通节点;
第二步,节点环内的每个物理节点定时向自己的后继节点发送心跳消息,并把必要的备份信息同时发送;
第三步,当后继节点在指定的时间内没有收到前驱节点发送的心跳消息时,则会向主节点发送故障报告;
第四步,主节点收到故障报告后,会立即向疑似故障节点发送检测确认消息;
第五步,如果疑似故障节点回应主节点的检测确认消息,则表明该节点存活,主节点将不做任何处理;如果疑似故障节点没回应主节点的检测确认消息,则确认该节点发生故障;在向疑似故障节点发送检测确认消息时,主节点会同时向疑似故障节点的前驱节点发送检测消息,直到找到最靠近疑似故障节点的一个正常节点为止,这样做的目的是为了防止多节点同时故障;
第六步,主节点更新节点环结构信息,把故障节点从节点环结构中删除,并通知相关节点更新前驱和后继节点信息;
所述的主节点作为唯一能够修改节点环结构的角色,当有物理节点加入、退出或发生故障时,主节点修改节点环结构,并将节点环结构信息同步给备份节点,同时发送信息给必要的节点执行指定的操作,包括:告知某节点修改前驱或后继节点;
由所述的备份节点随时和主节点保持节点环结构信息同步,确保能在主节点发生故障时,及时接管主节点的工作;备份节点可有多个,离主节点越近,优先级越高,当主节点发生故障时,最高优先级且存活的备份节点自动升级为主节点,并负责更新节点环结构;
包括主节点、备份节点在内的所有节点都具备普通节点的功能;该功能包括主节点命令处理和心跳机制;
所述主节点命令处理具体包括:
(1)当节点环发生变化时,主节点发送命令通知普通节点更新前驱和后继节点;
(2)当有备份节点故障时,主节点发送命令通知普通节点升级为备份节点,并与主节点同步信息;
(3)当节点的后继节点上报该节点可能发生故障后,对该节点发送检测确认消息,若节点返回应答消息,则表明自己存活;
所述节点的心跳机制为:
每一个普通节点同时是监控者和被监控者,在监控它的前驱节点的同时,需要向后继节点发送心跳消息;作为监控者,当在指定时间内未收到前驱节点的心跳消息时,则向主节点报告前驱节点的故障信息;作为被监控者,普通节点要定时向后继节点发送心跳消息,表明自己存活;心跳是节点环保持高可用的基础;
备份节点接管主节点的工作后负责新环的构建和维护,同时自动指定新的备份节点,以保证环的可靠性。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410821765.1A CN104506357B (zh) | 2014-12-22 | 2014-12-22 | 一种高可用集群节点管理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410821765.1A CN104506357B (zh) | 2014-12-22 | 2014-12-22 | 一种高可用集群节点管理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104506357A CN104506357A (zh) | 2015-04-08 |
CN104506357B true CN104506357B (zh) | 2018-05-11 |
Family
ID=52948072
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410821765.1A Active CN104506357B (zh) | 2014-12-22 | 2014-12-22 | 一种高可用集群节点管理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104506357B (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105141445A (zh) * | 2015-07-24 | 2015-12-09 | 广州尚融网络科技有限公司 | 一种实现高可用集群***中多流量组多备份的方法及装置 |
CN106911524B (zh) * | 2017-04-27 | 2020-07-07 | 新华三信息技术有限公司 | 一种ha实现方法及装置 |
WO2019000954A1 (zh) * | 2017-06-30 | 2019-01-03 | 中兴通讯股份有限公司 | 监测节点存活状态的方法、装置及*** |
CN109787795B (zh) * | 2017-11-13 | 2020-12-25 | 比亚迪股份有限公司 | 列车网络主节点故障的处理方法、节点及电子设备 |
CN109151045B (zh) * | 2018-09-07 | 2020-05-19 | 北京邮电大学 | 一种分布式云***及监控方法 |
CN110896543B (zh) | 2018-09-12 | 2021-01-12 | 宁德时代新能源科技股份有限公司 | 电池管理***及传输信息的方法和装置 |
CN110033095A (zh) * | 2019-03-04 | 2019-07-19 | 北京大学 | 一种高可用分布式机器学习计算框架的容错方法和*** |
CN110336715B (zh) * | 2019-07-12 | 2021-09-21 | 广州虎牙科技有限公司 | 状态检测方法、主节点和集群管理*** |
CN111064646B (zh) * | 2019-12-03 | 2022-01-11 | 北京东土科技股份有限公司 | 基于宽带现场总线的环网冗余方法、装置及存储介质 |
CN111865714B (zh) * | 2020-06-24 | 2022-08-02 | 上海上实龙创智能科技股份有限公司 | 一种基于多云环境的集群管理方法 |
CN112087343B (zh) * | 2020-09-22 | 2022-07-08 | 广州英码信息科技有限公司 | 一种坐席管理***的组网与通讯方法 |
CN113312211B (zh) * | 2021-05-28 | 2023-05-30 | 北京航空航天大学 | 一种确保分布式学习***的高可用性方法 |
CN115883575A (zh) * | 2022-11-23 | 2023-03-31 | 紫光云技术有限公司 | 一种基于b树的高可用集群优化方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101247273A (zh) * | 2008-02-27 | 2008-08-20 | 北京航空航天大学 | 分布式环境下服务协同节点组织结构的维护方法 |
CN101488966A (zh) * | 2009-01-14 | 2009-07-22 | 深圳市同洲电子股份有限公司 | 一种视频服务*** |
CN102215123A (zh) * | 2011-06-07 | 2011-10-12 | 南京邮电大学 | 基于多环网络拓扑结构的大规模集群*** |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4739141B2 (ja) * | 2006-02-24 | 2011-08-03 | アラクサラネットワークス株式会社 | リングネットワーク及びマスタノード |
CN102148740B (zh) * | 2010-02-05 | 2013-09-18 | ***通信集团公司 | 一种邻区路由表的更新方法和*** |
-
2014
- 2014-12-22 CN CN201410821765.1A patent/CN104506357B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101247273A (zh) * | 2008-02-27 | 2008-08-20 | 北京航空航天大学 | 分布式环境下服务协同节点组织结构的维护方法 |
CN101488966A (zh) * | 2009-01-14 | 2009-07-22 | 深圳市同洲电子股份有限公司 | 一种视频服务*** |
CN102215123A (zh) * | 2011-06-07 | 2011-10-12 | 南京邮电大学 | 基于多环网络拓扑结构的大规模集群*** |
Also Published As
Publication number | Publication date |
---|---|
CN104506357A (zh) | 2015-04-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104506357B (zh) | 一种高可用集群节点管理方法 | |
CN102932210B (zh) | 一种PaaS云平台的节点监控方法和*** | |
CN103346903B (zh) | 一种双机备份的方法和装置 | |
CN103152414B (zh) | 一种基于云计算的高可用*** | |
CN103532753B (zh) | 一种基于内存换页同步的双机热备方法 | |
WO2018072618A1 (zh) | 流式计算任务的分配方法和控制服务器 | |
CN105095008B (zh) | 一种适用于集群***的分布式任务故障冗余方法 | |
CN105141456A (zh) | 一种高可用集群资源监控方法 | |
CN103856392A (zh) | 消息推送方法及其外发服务器和外发服务器*** | |
CN103607297A (zh) | 一种计算机集群***的故障处理方法 | |
CN106612312A (zh) | 一种虚拟化数据中心调度***和方法 | |
CN103297543A (zh) | 一种基于计算机集群作业调度的方法 | |
CN102135929A (zh) | 一种分布式容错服务*** | |
CN103036719A (zh) | 一种基于主备集群服务器的跨地区服务容灾方法及装置 | |
CN105471622A (zh) | 一种基于Galera的控制节点主备切换的高可用方法及*** | |
CN103067209B (zh) | 一种心跳模块自检测方法 | |
CN105790825B (zh) | 一种分布式保护中控制器热备份的方法和装置 | |
CN103490919A (zh) | 故障管理***和故障管理方法 | |
CN104317803A (zh) | 数据库集群的数据存取结构和方法 | |
CN108469996A (zh) | 一种基于自动快照的***高可用方法 | |
US20170228250A1 (en) | Virtual machine service availability | |
CN104317679A (zh) | 一种scada***基于线程冗余的通信容错方法 | |
CN103152420B (zh) | 一种避免Ovirt虚拟管理平台单点失效的方法 | |
CN103312541A (zh) | 一种高可用互备集群的管理方法 | |
US20130205162A1 (en) | Redundant computer control method and device |
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 | ||
CP02 | Change in the address of a patent holder |
Address after: 523808 19th Floor, Cloud Computing Center, Chinese Academy of Sciences, No. 1 Kehui Road, Songshan Lake Hi-tech Industrial Development Zone, Dongguan City, Guangdong Province Patentee after: G-Cloud Technology Co., Ltd. Address before: 523808 No. 14 Building, Songke Garden, Songshan Lake Science and Technology Industrial Park, Dongguan City, Guangdong Province Patentee before: G-Cloud Technology Co., Ltd. |
|
CP02 | Change in the address of a patent holder |