CN107453929B - 集群系统自构建方法、装置及集群系统 - Google Patents
集群系统自构建方法、装置及集群系统 Download PDFInfo
- Publication number
- CN107453929B CN107453929B CN201710867262.1A CN201710867262A CN107453929B CN 107453929 B CN107453929 B CN 107453929B CN 201710867262 A CN201710867262 A CN 201710867262A CN 107453929 B CN107453929 B CN 107453929B
- Authority
- CN
- China
- Prior art keywords
- node
- candidate
- nodes
- service
- management 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
- 238000010276 construction Methods 0.000 title claims abstract description 25
- 238000004891 communication Methods 0.000 claims abstract description 54
- 230000036541 health Effects 0.000 claims description 54
- 238000000034 method Methods 0.000 claims description 37
- 230000008569 process Effects 0.000 claims description 25
- 238000011156 evaluation Methods 0.000 claims description 7
- 230000008030 elimination Effects 0.000 claims description 6
- 238000003379 elimination reaction Methods 0.000 claims description 6
- 238000012544 monitoring process Methods 0.000 claims description 6
- 238000012360 testing method Methods 0.000 claims description 4
- 238000012163 sequencing technique Methods 0.000 claims description 2
- 238000007726 management method Methods 0.000 description 190
- 238000012545 processing Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 230000004931 aggregating effect Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 238000007418 data mining Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000005195 poor health Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
- H04L41/0668—Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Hardware Redundancy (AREA)
Abstract
本发明提供一种集群系统自构建方法、装置及集群系统,当业务节点确定第一管理节点出现故障时,通过业务节点间启动相互通信,每一业务节点从多个业务节点中确定若干个候选节点,并从若干个候选节点中确定出第二管理节点,第二管理节点替代第一管理节点,若干个候选节点中除第二管理节点之外的其他候选节点执行第二管理节点原有的子任务,从而在第一管理节点出现故障后较快的选举出新的管理节点,不需要暂停集群系统的运行,同时也不需要另设备用管理节点,提高集群系统的可靠性和系统资源的高效利用,使得集群系统可以安全和稳定的运行。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种集群系统自构建方法、装置及集群系统。
背景技术
随着信息技术的不断发展,集群技术正在越来越多的领域中被广泛应用,常见的如服务器集群、数据库集群等。在应用集群的技术中,集群通常会按照一定的策略设置管理节点和业务节点,分别按各自承担的任务工作,而且管理节点还要负责监测各业务节点的状态和工作情况,如果业务节点发生故障,管理节点要确保将该发生故障的业务节点所承担的任务切换到其它正常的业务节点,从而增强集群的可靠性。
而当管理节点发生故障,则会导致集群的任务调度出现问题。现有技术中通常在管理节点发生故障后,暂停集群的运行,由人工查明原因排出故障;或者,另设一台备用管理节点,在管理节点发生故障后,由该备用管理节点执行管理节点所承担的任务。
现有技术中,当管理节点发生故障,通过暂停集群的运行,由人工查明原因排出故障,降低了集群系统的工作效率;而另设备用管理节点,在管理节点正常工作时,通常备用管理节点处于闲置状态,浪费了系统资源。
发明内容
本发明提供一种集群系统自构建方法、装置及集群系统,以在管理节点发生故障时,能够快速的从业务节点中推选出新的管理节点承担原管理节点的工作,提高集群系统的可靠性和系统资源的高效利用。
本发明的一个方面提供一种集群系统自构建方法,所述集群系统包括第一管理节点和多个业务节点,所述第一管理节点用于将任务划分为多个子任务并分发给所述业务节点;所述方法包括:
当所述业务节点确定所述第一管理节点出现故障时,所述业务节点间启动相互通信;
所述多个业务节点中的每一业务节点从所述业多个务节点中确定若干个候选节点,并从所述若干个候选节点中确定出第二管理节点,所述第二管理节点用于替代所述第一管理节点,所述若干个候选节点中除所述第二管理节点之外的其他候选节点用于执行所述第二管理节点原有的子任务。
本发明的另一个方面提供一种集群系统自构建装置,所述集群系统包括第一管理节点和多个业务节点,所述第一管理节点用于将任务划分为多个子任务并分发给所述业务节点;所述装置部署于所述第一管理节点及所述业务节点上,所述装置包括:
通信模块,用于所述业务节点与所述第一管理节通信,并当所述业务节点确定所述第一管理节点出现故障时,所述业务节点间启动相互通信;
候选节点获取模块,用于所述多个业务节点中的每一业务节点从所述多个业务节点中确定若干个候选节点;
选举模块,用于从所述候选节点中确定第二管理节点;
配置模块,用于配置由所述第二管理节点替代所述第一管理节点,由所述若干个候选节点中除所述第二管理节点之外的其他候选节点执行所述第二管理节点原有的子任务。
本发明的另一个方面提供一种集群系统,包括第一管理节点和多个业务节点,所述第一管理节点和所述业务节点均包括存储器和处理器;
所述第一管理节点的处理器被配置为,将任务划分为多个子任务并分发给所述业务节点;
所述业务节点的处理器被配置为,执行所述子任务,并且当所述业务节点确定所述第一管理节点出现故障时,所述业务节点间启动相互通信,所述多个业务节点中的每一业务节点从所述多个业务节点中确定若干个候选节点,并从所述若干个候选节点中确定出第二管理节点,所述第二管理节点用于替代所述第一管理节点,所述若干个候选节点中除所述第二管理节点之外的其他候选节点用于执行所述第二管理节点原有的子任务。
本发明提供的集群系统自构建方法、装置及集群系统,当业务节点确定第一管理节点出现故障时,通过业务节点间启动相互通信,每一业务节点从多个业务节点中确定若干个候选节点,并从若干个候选节点中确定出第二管理节点,第二管理节点替代第一管理节点,若干个候选节点中除第二管理节点之外的其他候选节点执行第二管理节点原有的子任务,从而在第一管理节点出现故障后较快的选举出新的管理节点,不需要暂停集群系统的运行,同时也不需要另设备用管理节点,提高集群系统的可靠性和系统资源的高效利用,使得集群系统可以安全和稳定的运行。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例一提供的集群系统自构建方法流程图;
图2为本发明实施例二提供的集群系统自构建方法流程图;
图3为本发明实施例三提供的集群系统自构建装置的结构图;
图4为本发明实施例四提供的集群系统的结构图;
图5为本发明实施例四提供的集群系统中管理节点和业务节点的硬件架构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
图1为本发明实施例一提供的集群系统自构建方法流程图。如图1所示,本实施例提供了一种集群系统自构建方法,所述集群系统包括第一管理节点和多个业务节点,所述第一管理节点用于将任务划分为多个子任务并分发给所述业务节点。
其中集群系统可以为数据库集群,也可以为服务器集群,或者其他集群,管理节点和业务节点可以为服务器、计算机等设备。
本实施例中以数据库集群为例进行说明,其中第一管理节点根据预设配置,决定数据交换任务的执行方式,如读取源、写入目标、并发量,并把任务按顺序切分成若干子任务,分发给多个业务节点,以多线程并发,同时执行子任务。此外第一管理节点还用于汇总任务。通过数据库集群可实现海量数据管理,更有利于数据事务处理、数据分析挖掘过程等。具体可通过XML (Extensible Markup Language,可扩展标记语言)进行配置。
本实施例提供的集群系统自构建方法,具体步骤如下:
S101、当所述业务节点确定所述第一管理节点出现故障时,所述业务节点间启动相互通信。
在本实施例中,当第一管理节点发生故障时,不能继续进行任务分发,此时集群系统无法正常工作。业务节点确定第一管理节点出现故障的方法,可以采用心跳协议,即第一管理系统与业务节点每隔一段时间进行一次通信,通过对方回复情况判断互联的双方之间的通讯链路是否已经断开;当然也可采用其他方法确定第一管理节点出现故障,例如当某一业务节点执行完当前子任务后提交报告给第一管理节点,若第一管理节点无反馈,则认为第一管理节点出现故障,并广播到所有业务节点。
本实施例中各节点间是相互连接的,在第一管理节点正常工作时,各业务节点仅仅与第一管理节点通信,业务节点间通常不通信。而当第一管理节点出现故障时,业务节点间启动相互通信,以进行后续的选举过程。
S102、所述多个业务节点中的每一业务节点从所述多个业务节点中确定若干个候选节点,并从所述若干个候选节点中确定出第二管理节点,所述第二管理节点用于替代所述第一管理节点,所述若干个候选节点中除所述第二管理节点之外的其他候选节点用于执行所述第二管理节点原有的子任务。
在本实施例中,当第一管理节点出现故障后,需要从业务节点中重新选出第二管理节点,而业务节点并不是适合或者有能力作为管理节点,例如健康度较差、当前任务繁重、或者通信能力较差的业务节点。因此首先由各业务节点选出适合作为管理节点的候选节点,其中候选节点可以为健康度较好、当前任务量较少、或者通信能力较强的业务节点,当然可以以其他指标进行衡量。通过先选出若干候选节点,排除不适合的业务节点,减少了处理量,可提高选举效率。在获取若干个候选节点后,从候选节点中选举第二管理节点,具体的可以以健康度、任务量、通信能力等指标进行进一步排序,当然可以采用末位淘汰的方式,进行多次选举,每次淘汰一个候选节点,最后得到最合适的候选节点作为第二管理节点。第二管理节点承担第一管理节点的工作,并由其余候选节点分担所述第二管理节点原有子任务,由于候选节点相对于其他普通的业务节点健康度较好、当前任务量较少、或者通信能力较强,因此将第二管理节点原有子任务分担给其余候选节点,并不会增加其余候选节点的负担,可以更有效的将第二管理节点原有子任务完成。由于当第一管理节点出现故障后,各业务节点处于无主状态,因此在基于各业务节点间相互通信进行信息同步的基础上,每一业务节点均进行候选节点的确定。而从候选节点中确定出第二管理节点,则可以由每一业务节点进行,也可仅由各候选节点确定。
本实施例提供的集群系统自构建方法,当业务节点确定第一管理节点出现故障时,通过业务节点间启动相互通信,每一业务节点从多个业务节点中确定若干个候选节点,并从若干个候选节点中确定出第二管理节点,第二管理节点替代第一管理节点,若干个候选节点中除第二管理节点之外的其他候选节点执行第二管理节点原有的子任务,从而在第一管理节点出现故障后较快的选举出新的管理节点,不需要暂停集群系统的运行,同时也不需要另设备用管理节点,提高集群系统的可靠性和系统资源的高效利用,使得集群系统可以安全和稳定的运行。
实施例二
图2为本发明实施例二提供的集群系统自构建方法流程图。如图2所示,在上述实施例的基础上,S101所述的业务节点确定所述第一管理节点出现故障前,还包括:
S201、所述业务节点接收所述第一管理节点广播的心跳包,所述心跳包由所述第一管理节点根据自我监控其运转情况和健康度所生成。
在本实施例中,第一管理节点实时监控或每隔预定时间进行检测其运转情况和健康度,并采用心跳协议每隔一预定时间间隔即发送给业务节点,以使业务节点获知第一管理节点的运转情况和健康度,从而可以在第一管理节点出现故障时第一时间获知,从而启动后续的程序。当然,业务节点也可将自身的运转情况和健康度以心跳包的形式发送给第一管理节点,或者在响应第一管理节点发送的心跳包时将自身的运转情况和健康度反馈给第一管理节点,从而使第一管理节点获知业务节点的运转情况和健康度,从而在业务节点发生故障时将该业务节点当前的子任务分配给其他业务节点执行。
当然,本发明中并不仅限于通过第一管理节点广播心跳包的方式来使业务节点监控第一管理节点是否发生故障,还可以通过其他方式实现,在上述实施例中已进行说明,此处不再赘述。
进一步的,S101所述的业务节点确定所述第一管理节点出现故障,具体包括:
S202、当所述业务节点未收到所述心跳包时,确定所述第一管理节点出现故障。
在本实施例中,由于第一管理节点每隔一预定时间间隔向业务节点发送心跳包,而业务节点则在某一预定时间间隔未收到心跳包,则确定第一管理节点出现故障,也即管理节点无响应。
在S202后,执行S203,即:
S203、所述业务节点间启动相互通信。
进一步的,S102所述的所述多个业务节点中的每一业务节点从所述多个业务节点中确定若干个候选节点,具体包括:
S204、每一所述业务节点自我监控其运转情况和健康度,并将其健康度和任务量广播给其他业务节点;
S205、每一所述业务节点根据各业务节点的健康度和任务量进行排序,以健康度较高且任务量较少的前N个业务节点为所述候选节点。
在本实施例中,通过每一业务节点广播其健康度和任务量,从而使得每一业务节点获知所有业务节点的健康度和任务量,此时根据各业务节点的健康度和任务量进行排序,具体的可以对健康度和任务量分别预设一权重值,从而综合健康度和任务量对每一业务节点进行评估。当得到排序后,以健康度较高且任务量较少的前N个业务节点为候选节点,其中N为一预设正整数, N大于或等于2。通过先选出若干候选节点,排除不适合的业务节点,减少了处理量,可提高选举效率。
进一步的,S102所述的从所述若干个候选节点中确定出第二管理节点,具体包括:
S206、每一所述候选节点与其余所述候选节点进行通信,根据其余所述候选节点对该候选节点的通信延迟状况的评价、以及该候选节点的健康度,获取得分。
本实施例中,选举过程由候选节点执行,从各候选节点中投票选出唯一的一个作为第二管理节点。具体的,由各候选节点相互对通信延迟状况进行评价,同时每一候选节点广播自身的健康度,进而综合通信延迟状况的评价和健康度获取得分。例如,对于候选节点A,其余所有候选节点B、C根据与节点A的通信对节点A的通信延迟状况分别进行评价,再结合A的健康度,获取得分。此处也可根据通信延迟状况评价和健康度对得分的重要程度不同分别设置权重。
S207、根据各所述候选节点的得分,淘汰得分最低的所述候选节点。
S208、重复上述获取得分和淘汰得分最低的候选节点,直至剩余一个所述候选节点,作为所述第二管理节点。
本实施例采用末位淘汰的方式,进行多轮投票选举,在得到各候选节点的得分后可进行排序,每一轮中仅淘汰一个得分最低的候选节点。由于候选节点当前并未暂停原有的子任务,因此其通信延迟状况和健康度是实时改变的,仅通过一次选举就得到最终的第二管理节点,是存在一定的风险的,而本实施例通过多轮投票选举,更能反映出候选节点通信延迟状况和健康度的平均水平,选举所得的第二管理节点更为可靠。
需要说明的是,由于各业务节点处于无主状态,因此选举过程是在每一业务节点中进行,也即各业务节点将信息进行公开和同步,并遵循相同的选举规则,当自身未成为候选节点则自动退出,不再继续参与;若成为候选节点后,得分在当期一轮中最低时则自动退出,也不再继续参与;若成为最后剩余的唯一的候选节点时,则作为第二管理节点,承担第一管理节点的工作。
此外,选举过程全部操作均在各业务节点的内存中进行,不进行磁盘读写,从而提高运行速度,提高选举效率。同时,本实施例中各节点通过云联网和云同步机制,提供了高速数据交换的能力。
进一步的,在某一轮投票选举过程中,在每一候选节点与其余候选节点进行通信时,若某一所述候选节点出现通信无反馈,则视为该候选节点弃权,淘汰该候选节点;并将上一轮选举过程淘汰的候选节点重新加入本轮选举过程中。也即,当某一候选节点出现通信无反馈时,说明该候选节点出现故障,若直接淘汰该候选节点,而在该轮投票选举仍会淘汰一个得分最低的候选节点,则投票选举总轮数将减少一轮,当候选节点数量较少的时候,可能存在一定的风险,因此将上一轮选举过程淘汰的候选节点重新加入本轮选举过程中,从而进一步提高可靠性。
需要说明的是,当该弃权的候选节点正常运转后,可能仍处于投票选举进程中,而此时可能投票选举已经结束,因此该候选节点进行信息汇总并发送到第二管理节点,磁盘读写进行备案,进入正常的任务执行状态。
进一步的,所述第二管理节点承担第一管理节点的工作后,若所述第一管理节点修复成功,将其作为业务节点重新添加到所述集群系统中。当然,在重新添加到集群系统中前,需要通过联网确认其健康度、任务执行速度、挤压文件量等指标,确认通过后将其作为业务节点,而不再重新担任管理节点。
本实施例提供的集群系统自构建方法,当业务节点确定第一管理节点出现故障时,通过业务节点间启动相互通信,每一业务节点从多个业务节点中确定若干个候选节点,并从若干个候选节点中确定出第二管理节点,第二管理节点用于替代第一管理节点,若干个候选节点中除第二管理节点之外的其他候选节点用于执行第二管理节点原有的子任务,从而在第一管理节点出现故障后较快的选举出新的管理节点,不需要暂停集群系统的运行,同时也不需要另设备用管理节点,提高集群系统的可靠性和系统资源的高效利用,使得集群系统可以安全和稳定的运行。本实施例中根据各业务节点的健康度和任务量,先选出若干候选节点,排除不适合的业务节点,减少了处理量,以提高选举效率;并根据通信延迟状况和健康度获取候选节点得分,通过末位淘汰的方式经过多轮投票选举从候选节点中选举出第二管理节点,更能反映出候选节点通信延迟状况和健康度的平均水平,选举所得的第二管理节点更为可靠。
实施例三
图3为本发明实施例三提供的集群系统自构建装置的结构图。本发明实施例提供的集群系统自构建装置可以执行实施例一和实施例二提供的处理流程,其中,所述集群系统包括第一管理节点和多个业务节点,所述第一管理节点用于将任务划分为多个子任务并分发给所述业务节点;所述装置部署于所述第一管理节点及所述业务节点上。
需要说明的是由于第一管理节点也是从业务节点选举产生,因此第一管理节点中部署的集群系统自构建装置与业务节点中部署的集群系统自构建装置是相同的。
如图3所示,所述集群系统自构建装置包括:
通信模块31,用于所述业务节点与所述第一管理节通信,并当所述业务节点确定所述第一管理节点出现故障时,所述业务节点间启动相互通信;
候选节点获取模块32,用于所述多个业务节点中的每一业务节点从所述多个业务节点中确定若干个候选节点;
选举模块33,用于从所述候选节点中确定第二管理节点;
配置模块34,用于配置由所述第二管理节点替代所述第一管理节点,由所述若干个候选节点中除所述第二管理节点之外的其他候选节点执行所述第二管理节点原有的子任务。
进一步的,本实施例的集群系统自构建装置还包括:
测试模块35,用于每一所述业务节点自我监控其运转情况和健康度;
所述通信模块31还用于,每一所述业务节点将其健康度和任务量广播给其他业务节点;
所述候选节点获取模块32具体用于:
每一所述业务节点根据各业务节点的健康度和任务量进行排序,以健康度较高且任务量较少的前N个业务节点为所述候选节点。
进一步的,所述选举模块33具体用于:
每一所述候选节点通过所述通信模块与其余所述候选节点进行通信,根据其余所述候选节点对该候选节点的通信延迟状况的评价、以及该候选节点的健康度,获取得分;
根据各所述候选节点的得分,淘汰得分最低的所述候选节点;
重复上述获取得分和淘汰得分最低的候选节点,直至剩余一个所述候选节点,作为所述第二管理节点。
进一步的,所述选举模块33还用于:
若某一所述候选节点出现通信无反馈,则视为该候选节点弃权,淘汰该候选节点;
将上一轮选举过程淘汰的候选节点重新加入本轮选举过程中。
进一步的,所述通信模块31还用于:
所述业务节点接收所述第一管理节点广播的心跳包,所述心跳包由所述第一管理节点通过测试模块自我监控其运转情况和健康度所生成;
所述业务节点未收到所述心跳包时,确定所述第一管理节点出现故障。
进一步的,所述配置模块34还用于,若所述第一管理节点修复成功,将其配置为业务节点重新添加到所述集群系统中。
此外,本实施例的集群系统自构建装置还提供读取、写入接口,便于开发。
本发明实施例提供的可以具体用于执行上述图1和图2所提供的方法实施例,具体功能此处不再赘述。
本实施例提供的集群系统自构建装置,当业务节点确定第一管理节点出现故障时,通过业务节点间启动相互通信,每一业务节点从多个业务节点中确定若干个候选节点,并从若干个候选节点中确定出第二管理节点,第二管理节点用于替代第一管理节点,若干个候选节点中除第二管理节点之外的其他候选节点用于执行第二管理节点原有的子任务,从而在第一管理节点出现故障后较快的选举出新的管理节点,不需要暂停集群系统的运行,同时也不需要另设备用管理节点,提高集群系统的可靠性和系统资源的高效利用,使得集群系统可以安全和稳定的运行。
实施例四
图4为本发明实施例四提供的集群系统的结构图,图5为本发明实施例四提供的集群系统中第一管理节点和业务节点的硬件架构图。如图4和图5 所述,本实施例提供的集群系统,包括第一管理节点41和多个业务节点42,所述第一管理节点和所述业务节点均包括存储器51和处理器52;
所述第一管理节点的处理器52被配置为,将任务划分为多个子任务并分发给所述业务节点;
所述业务节点的处理器52被配置为,执行所述子任务,并且当所述业务节点确定所述第一管理节点出现故障时,所述业务节点间启动相互通信,所述多个业务节点中的每一业务节点从所述多个业务节点中确定若干个候选节点,并从所述若干个候选节点中确定出第二管理节点,所述第二管理节点用于替代所述第一管理节点,所述若干个候选节点中除所述第二管理节点之外的其他候选节点用于执行所述第二管理节点原有的子任务。
本实施例的第一管理节点和业务节点的处理器52可以执行实施例一和实施例二提供的处理流程,具体功能此处不再赘述。
当然,如图5所述,第一管理节点和业务节点还可以包括以下组件:接收器53、发送器54等,其具体功能此处不再赘述。
本实施例提供的集群系统,当业务节点确定第一管理节点出现故障时,通过业务节点间启动相互通信,每一所述业务节点从多个所述业务节点中确定若干个候选节点,并从所述若干个候选节点中确定出第二管理节点,所述第二管理节点用于替代所述第一管理节点,所述若干个候选节点中除所述第二管理节点之外的其他候选节点用于执行所述第二管理节点原有的子任务,从而在第一管理节点出现故障后较快的选举出新的管理节点,不需要暂停集群系统的运行,同时也不需要另设备用管理节点,提高集群系统的可靠性和系统资源的高效利用,使得集群系统可以安全和稳定的运行。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一个计算机设备(可以是个人计算机,服务器,或者网络设备等) 或处理器(processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (7)
1.一种集群系统自构建方法,其特征在于,所述集群系统包括第一管理节点和多个业务节点,所述第一管理节点用于将任务划分为多个子任务并分发给所述业务节点;所述方法包括:
当所述业务节点确定所述第一管理节点出现故障时,所述业务节点间启动相互通信;
所述多个业务节点中的每一业务节点从所述多个业务节点中确定若干个候选节点,并从所述若干个候选节点中确定出第二管理节点,所述第二管理节点用于替代所述第一管理节点,所述若干个候选节点中除所述第二管理节点之外的其他候选节点用于执行所述第二管理节点原有的子任务;
所述多个业务节点中的每一业务节点从所述多个业务节点中确定若干个候选节点,具体包括:
每一所述业务节点自我监控其运转情况和健康度,并将其健康度和任务量广播给其他业务节点;
每一所述业务节点根据各业务节点的健康度和任务量进行排序,以健康度较高且任务量较少的前N个业务节点为所述候选节点;
所述从所述若干个候选节点中确定出第二管理节点,具体包括:
在每一轮选举中每一所述候选节点与其余所述候选节点进行通信,根据其余所述候选节点对该候选节点的通信延迟状况的评价、以及该候选节点的健康度,获取得分;根据各所述候选节点的得分,淘汰得分最低的所述候选节点;
重复上述每一轮选举的获取得分和淘汰得分最低的候选节点,直至剩余一个所述候选节点,作为所述第二管理节点;
所述每一所述候选节点与其余所述候选节点进行通信后,还包括:
若在某一轮选举过程中,某一所述候选节点出现通信无反馈,则视为该候选节点弃权,淘汰该候选节点;
将该某一轮选举的上一轮选举过程淘汰的候选节点重新加入本轮选举过程中。
2.根据权利要求1所述的方法,其特征在于,所述业务节点确定所述第一管理节点出现故障前,还包括:
所述业务节点接收所述第一管理节点广播的心跳包,所述心跳包由所述第一管理节点根据自我监控其运转情况和健康度所生成;
所述业务节点确定所述第一管理节点出现故障,具体包括:
当所述业务节点未收到所述心跳包时,确定所述第一管理节点出现故障。
3.根据权利要求1所述的方法,其特征在于,所述第二管理节点替代所述第一管理节点后,还包括:
若所述第一管理节点修复成功,将其作为业务节点重新添加到所述集群系统中。
4.一种集群系统自构建装置,其特征在于,所述集群系统包括第一管理节点和多个业务节点,所述第一管理节点用于将任务划分为多个子任务并分发给所述业务节点;所述装置部署于所述第一管理节点及所述业务节点上,所述装置包括:
通信模块,用于所述业务节点与所述第一管理节通信,并当所述业务节点确定所述第一管理节点出现故障时,所述业务节点间启动相互通信;
候选节点获取模块,用于所述多个业务节点中的每一业务节点从所述多个业务节点中确定若干个候选节点;
选举模块,用于从所述候选节点中确定第二管理节点;
配置模块,用于配置由所述第二管理节点替代所述第一管理节点,由所述若干个候选节点中除所述第二管理节点之外的其他候选节点执行所述第二管理节点原有的子任务;
测试模块,用于每一所述业务节点自我监控其运转情况和健康度;
所述通信模块还用于,每一所述业务节点将其健康度和任务量广播给其他业务节点;
所述候选节点获取模块具体用于:
每一所述业务节点根据各业务节点的健康度和任务量进行排序,以健康度较高且任务量较少的前N个业务节点为所述候选节点;
所述选举模块具体用于:
在每一轮选举中每一所述候选节点通过所述通信模块与其余所述候选节点进行通信,根据其余所述候选节点对该候选节点的通信延迟状况的评价、以及该候选节点的健康度,获取得分;根据各所述候选节点的得分,淘汰得分最低的所述候选节点;
重复上述每一轮选举的获取得分和淘汰得分最低的候选节点,直至剩余一个所述候选节点,作为所述第二管理节点;
所述选举模块还用于:
若在某一轮选举过程中,某一所述候选节点出现通信无反馈,则视为该候选节点弃权,淘汰该候选节点;
将该某一轮选举的上一轮选举过程淘汰的候选节点重新加入本轮选举过程中。
5.根据权利要求4所述的装置,其特征在于,所述通信模块还用于:
所述业务节点接收所述第一管理节点广播的心跳包,所述心跳包由所述第一管理节点通过测试模块自我监控其运转情况和健康度所生成;
所述业务节点未收到所述心跳包时,确定所述第一管理节点出现故障。
6.根据权利要求4所述的装置,其特征在于,
所述配置模块还用于,若所述第一管理节点修复成功,将其配置为业务节点重新添加到所述集群系统中。
7.一种集群系统,其特征在于,包括第一管理节点和多个业务节点,所述第一管理节点和所述业务节点均包括存储器和处理器;
所述第一管理节点的处理器被配置为,将任务划分为多个子任务并分发给所述业务节点;
所述业务节点的处理器被配置为,执行所述子任务,并且当所述业务节点确定所述第一管理节点出现故障时,所述业务节点间启动相互通信,所述多个业务节点中的每一业务节点从所述多个业务节点中确定若干个候选节点,并从所述若干个候选节点中确定出第二管理节点,所述第二管理节点用于替代所述第一管理节点,所述若干个候选节点中除所述第二管理节点之外的其他候选节点用于执行所述第二管理节点原有的子任务;
并且,每一所述业务节点的处理器还被配置为,自我监控其业务节点运转情况和健康度,并将其健康度和任务量广播给其他业务节点;根据各业务节点的健康度和任务量进行排序,以健康度较高且任务量较少的前N个业务节点为所述候选节点;
每一所述候选节点的处理器还被配置为:
在每一轮选举中与其余所述候选节点进行通信,根据其余所述候选节点对该候选节点的通信延迟状况的评价、以及该候选节点的健康度,获取得分;根据各所述候选节点的得分,淘汰得分最低的所述候选节点;
重复上述每一轮选举的获取得分和淘汰得分最低的候选节点,直至剩余一个所述候选节点,作为所述第二管理节点;
若在某一轮选举过程中,某一所述候选节点出现通信无反馈,则视为该候选节点弃权,淘汰该候选节点;
将该某一轮选举的上一轮选举过程淘汰的候选节点重新加入本轮选举过程中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710867262.1A CN107453929B (zh) | 2017-09-22 | 2017-09-22 | 集群系统自构建方法、装置及集群系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710867262.1A CN107453929B (zh) | 2017-09-22 | 2017-09-22 | 集群系统自构建方法、装置及集群系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107453929A CN107453929A (zh) | 2017-12-08 |
CN107453929B true CN107453929B (zh) | 2020-02-14 |
Family
ID=60497185
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710867262.1A Active CN107453929B (zh) | 2017-09-22 | 2017-09-22 | 集群系统自构建方法、装置及集群系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107453929B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108306760A (zh) * | 2017-12-28 | 2018-07-20 | 中国银联股份有限公司 | 用于在分布式系统中使管理能力自恢复的方法和装置 |
WO2019222995A1 (en) * | 2018-05-25 | 2019-11-28 | Telefonaktiebolaget Lm Ericsson (Publ) | Dynamic backup amf determination and publication |
CN111026521B (zh) * | 2018-10-10 | 2023-07-14 | 上海寒武纪信息科技有限公司 | 任务调度器、任务处理系统及任务处理方法 |
TWI699099B (zh) * | 2019-03-19 | 2020-07-11 | 中華電信股份有限公司 | 單一或跨區域服務主機間通訊的處理系統及其方法 |
CN110086660B (zh) * | 2019-04-15 | 2021-09-21 | 中国银联股份有限公司 | 一种数据处理方法及装置 |
CN111427689B (zh) * | 2020-03-24 | 2022-06-28 | 苏州科达科技股份有限公司 | 集群保活方法、装置及存储介质 |
CN112187567A (zh) * | 2020-09-11 | 2021-01-05 | 苏州浪潮智能科技有限公司 | 一种容器化的无代理私有云管理方法和系统 |
CN112416591B (zh) * | 2020-11-25 | 2023-10-13 | 广州虎牙科技有限公司 | 分布式的任务处理方法、装置、设备、存储介质和系统 |
CN113794595A (zh) * | 2021-09-15 | 2021-12-14 | 领云悠逸(北京)科技有限公司 | 一种基于工业互联网的IoT设备高可用方法 |
CN114338727B (zh) * | 2022-01-05 | 2024-03-12 | 中国建设银行股份有限公司 | 服务集群的构建方法及相关装置 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100558080C (zh) * | 2006-12-12 | 2009-11-04 | 华为技术有限公司 | 集群消息传送方法及分布式集群系统 |
CN103207814B (zh) * | 2012-12-27 | 2016-10-19 | 北京仿真中心 | 一种去中心化的跨集群资源管理与任务调度系统与调度方法 |
CN104580338B (zh) * | 2013-10-29 | 2018-09-07 | 华为技术有限公司 | 一种业务处理方法、系统及设备 |
CN103746838B (zh) * | 2013-12-26 | 2016-12-07 | 华北计算技术研究所 | 一种无中心节点计算机网络的任务调度方法 |
CN104753994B (zh) * | 2013-12-27 | 2019-04-02 | 杭州海康威视系统技术有限公司 | 基于集群服务器系统的数据同步方法及其装置 |
CN104917792B (zh) * | 2014-03-12 | 2018-10-30 | 上海宝信软件股份有限公司 | 民主自治的集群管理方法和系统 |
JP2016158078A (ja) * | 2015-02-24 | 2016-09-01 | 株式会社日立製作所 | ネットワークシステム及びネットワーク管理方法 |
CN106844018A (zh) * | 2015-12-07 | 2017-06-13 | 阿里巴巴集团控股有限公司 | 一种任务处理方法、装置及系统 |
CN106874115A (zh) * | 2017-01-20 | 2017-06-20 | 杭州虚核科技有限公司 | 一种虚拟机资源分配方法及分布式虚拟机资源调度系统 |
-
2017
- 2017-09-22 CN CN201710867262.1A patent/CN107453929B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN107453929A (zh) | 2017-12-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107453929B (zh) | 集群系统自构建方法、装置及集群系统 | |
CN113014634B (zh) | 集群选举处理方法、装置、设备及存储介质 | |
CN106575247B (zh) | 计算集群的容错联盟 | |
US7225356B2 (en) | System for managing operational failure occurrences in processing devices | |
CN107092522B (zh) | 实时数据的计算方法及装置 | |
US8533731B2 (en) | Apparatus and method for distrubuting complex events based on correlations therebetween | |
CN108282514B (zh) | 一种分布式业务建立方法及装置 | |
CN109173270B (zh) | 一种游戏服务系统和实现方法 | |
CN111614708B (zh) | 一种基于区块链的交易系统 | |
CN103607424B (zh) | 一种服务器连接方法及服务器系统 | |
CN112261135A (zh) | 基于一致性协议的节点选举方法、系统、装置及设备 | |
CN110557416B (zh) | 一种多节点协同打块的方法及系统 | |
CN107395458B (zh) | 系统监控方法及装置 | |
CN112333249B (zh) | 一种业务服务系统及方法 | |
CN111459642B (zh) | 一种分布式系统中故障处理和任务处理方法及装置 | |
CN112395269B (zh) | MySQL高可用组的搭建方法及装置 | |
CN112737800A (zh) | 服务节点故障定位方法、调用链生成方法及服务器 | |
CN109189578A (zh) | 存储服务器分配方法、装置、管理服务器以及存储系统 | |
CN105827678A (zh) | 一种基于高可用架构下的通信方法和节点 | |
CN114265753A (zh) | 消息队列的管理方法、管理系统和电子设备 | |
CN111901421A (zh) | 一种数据处理方法及相关设备 | |
CN110708177B (zh) | 分布式系统中的异常处理方法、系统和装置 | |
CN114189495A (zh) | 基于域名的节点调度方法、系统、终端和存储介质 | |
CN106899659B (zh) | 分布式系统及其管理方法和管理装置 | |
CN113347238A (zh) | 基于区块链的消息分区方法及系统、设备、存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |