System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及服务器,特别是涉及一种双机热备系统的脑裂检测方法、装置以及介质。
技术介绍
1、使用双机热备部署的软件系统或平台往往都是非常重要的平台,这类平台通常对服务的可靠性有非常高的要求。双机热备系统中主备两个节点各种配置完全相同,正常情况下系统有且仅有其中一个节点作为主节点对外提供服务,外部请求会直接通过系统提供的外部服务进行访问并进行处理。当主节点服务出现故障时,另外一个节点能够立马接管系统并启动服务响应外部的数据请求,从而保证系统的稳定性。
2、然而,当两个节点之间的网络出现问题时,两节点间的数据和信息可能无法及时同步,进而导致双机热备系统发生脑裂。但目前的双机热备系统不能及时的发现脑裂问题,而双机热备系统不能及时发现脑裂问题或者第一时间进行系统的恢复,会增加系统运行的风险,降低了双机热备系统的可用性和稳定性。
3、由此可见,如何提高双机热备系统的可用性和稳定性,是本领域技术人员亟待解决的问题。
技术实现思路
1、本专利技术的目的是提供一种双机热备系统的脑裂检测方法、装置以及介质,以尽量避免双机热备系统发生脑裂给系统运行带来的风险。
2、为解决上述技术问题,本专利技术提供一种双机热备系统的脑裂检测方法,包括:
3、获取双机热备系统中两个节点的分布式复制块设备的当前状态;
4、比较预设规则与所述双机热备系统中两个节点的所述分布式复制块设备的当前状态;其中,所述预设规则包括所述双机热备系统中两个节点的所述分布式复制块
5、若所述双机热备系统中两个节点的所述分布式复制块设备的当前状态满足所述预设规则,则判定所述双机热备系统发生脑裂;
6、若所述双机热备系统中两个节点的所述分布式复制块设备的当前状态不满足所述预设规则,则判定所述双机热备系统未发生脑裂。
7、一方面,在所述判定所述双机热备系统发生脑裂之后,还包括:
8、获取所述双机热备系统的双机服务状态信息和心跳链路的日志信息;
9、根据所述双机服务状态信息和所述心跳链路的日志信息从所述双机热备系统的两个节点中选取目标节点;
10、将所述目标节点作为主节点对所述双机热备系统进行脑裂恢复。
11、另一方面,所述双机服务状态信息包括所述双机热备系统中两个节点正常启动的服务的对应信息;
12、所述心跳链路的日志信息包括心跳链路发生死亡的次数。
13、另一方面,所述根据所述双机服务状态信息和所述心跳链路的日志信息从所述双机热备系统的两个节点中选取目标节点包括:
14、确定所述双机热备系统中进行脑裂恢复所必要的服务已正常启动的节点;
15、若存在且仅存在一个节点中进行脑裂恢复所必要的服务已正常启动,则选取对应节点为所述目标节点;
16、若存在两个节点中进行脑裂恢复所必要的服务已正常启动,则比较两个节点的心跳链路发生死亡的次数;
17、选取心跳链路发生死亡的次数更少的节点作为所述目标节点。
18、另一方面,所述获取双机热备系统中两个节点的分布式复制块设备的当前状态包括:
19、获取所述双机热备系统中两个节点的所述分布式复制块设备的日志信息;
20、抓取各所述分布式复制块设备的日志信息中关于所述分布式复制块设备挂载和卸载的关键字;
21、根据抓取的关键字确定所述双机热备系统中两个节点的所述分布式复制块设备的当前状态。
22、另一方面,所述预设时长的确定方法包括:
23、获取系统的性能以及系统对主备切换的启动速度要求;
24、根据系统的性能以及系统对主备切换的启动速度要求确定所述预设时长。
25、另一方面,所述双机热备系统中两个节点的所述分布式复制块设备的当前状态具体为所述双机热备系统中所述分布式复制块设备当前的挂载数量;
26、在所述获取双机热备系统中两个节点的分布式复制块设备的当前状态之后,还包括:
27、控制目标变量的值响应于所述双机热备系统中所述分布式复制块设备当前的挂载数量;
28、其中,当所述双机热备系统的所述分布式复制块设备的挂载数量为零个时,所述目标变量的值为第一数值;
29、当所述双机热备系统的所述分布式复制块设备的挂载数量为一个时,所述目标变量的值为第二数值;
30、当所述双机热备系统的所述分布式复制块设备的挂载数量为两个时,所述目标变量的值为第三数值;
31、对应的,所述比较预设规则与所述双机热备系统中两个节点的所述分布式复制块设备的当前状态包括:
32、若所述目标变量的值为所述第三数值,则表征所述双机热备系统中两个节点的所述分布式复制块设备的当前状态满足所述预设规则;
33、若所述目标变量的值为所述第一数值,且持续时长超过所述预设时长,则表征所述双机热备系统中两个节点的所述分布式复制块设备的当前状态满足所述预设规则;
34、若所述目标变量的值为所述第二数值,则表征所述双机热备系统中两个节点的所述分布式复制块设备的当前状态不满足所述预设规则。
35、为解决上述技术问题,本专利技术还提供一种双机热备系统的脑裂检测装置,包括:
36、第一获取模块,用于获取双机热备系统中两个节点的分布式复制块设备的当前状态;
37、比较模块,用于比较预设规则与所述双机热备系统中两个节点的所述分布式复制块设备的当前状态;其中,所述预设规则包括所述双机热备系统中两个节点的所述分布式复制块设备同时挂载,以及所述双机热备系统中两个节点的所述分布式复制块设备同时卸载且卸载时长超过预设时长;
38、判定模块,用于若所述双机热备系统中两个节点的所述分布式复制块设备的当前状态满足所述预设规则,则判定所述双机热备系统发生脑裂;
39、所述判定模块,还用于若所述双机热备系统中两个节点的所述分布式复制块设备的当前状态不满足所述预设规则,则判定所述双机热备系统未发生脑裂。
40、另一方面,所述双机热备系统的脑裂检测装置还包括:第二获取模块,用于在所述判定所述双机热备系统发生脑裂之后,获取所述双机热备系统的双机服务状态信息和心跳链路的日志信息;
41、选取模块,用于根据所述双机服务状态信息和所述心跳链路的日志信息从所述双机热备系统的两个节点中选取目标节点;
42、第一控制模块,用于将所述目标节点作为主节点对所述双机热备系统进行脑裂恢复。
43、另一方面,所述选取模块,具体用于确定所述双机热备系统中进行脑裂恢复所必要的服务已正常启动的节点;
44、若存在且仅存在一个节点中进行脑裂恢复所必要的服务已正常启动,则选取对应节点为所述目标节点;
45、若存在两个节点中进行脑裂恢复所必要的本文档来自技高网...
【技术保护点】
1.一种双机热备系统的脑裂检测方法,其特征在于,包括:
2.根据权利要求1所述的双机热备系统的脑裂检测方法,其特征在于,在所述判定所述双机热备系统发生脑裂之后,还包括:
3.根据权利要求2所述的双机热备系统的脑裂检测方法,其特征在于,所述双机服务状态信息包括所述双机热备系统中两个节点正常启动的服务的对应信息;
4.根据权利要求3所述的双机热备系统的脑裂检测方法,其特征在于,所述根据所述双机服务状态信息和所述心跳链路的日志信息从所述双机热备系统的两个节点中选取目标节点包括:
5.根据权利要求1所述的双机热备系统的脑裂检测方法,其特征在于,所述获取双机热备系统中两个节点的分布式复制块设备的当前状态包括:
6.根据权利要求1所述的双机热备系统的脑裂检测方法,其特征在于,所述预设时长的确定方法包括:
7.根据权利要求1至6任意一项所述的双机热备系统的脑裂检测方法,其特征在于,所述双机热备系统中两个节点的所述分布式复制块设备的当前状态具体为所述双机热备系统中所述分布式复制块设备当前的挂载数量;
8.一种双机
9.一种双机热备系统的脑裂检测装置,其特征在于,包括存储器,用于存储计算机程序;
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的双机热备系统的脑裂检测方法的步骤。
...【技术特征摘要】
1.一种双机热备系统的脑裂检测方法,其特征在于,包括:
2.根据权利要求1所述的双机热备系统的脑裂检测方法,其特征在于,在所述判定所述双机热备系统发生脑裂之后,还包括:
3.根据权利要求2所述的双机热备系统的脑裂检测方法,其特征在于,所述双机服务状态信息包括所述双机热备系统中两个节点正常启动的服务的对应信息;
4.根据权利要求3所述的双机热备系统的脑裂检测方法,其特征在于,所述根据所述双机服务状态信息和所述心跳链路的日志信息从所述双机热备系统的两个节点中选取目标节点包括:
5.根据权利要求1所述的双机热备系统的脑裂检测方法,其特征在于,所述获取双机热备系统中两个节点的分布式复制块设备的当前状态包括:
...【专利技术属性】
技术研发人员:杨子康,
申请(专利权)人:济南浪潮数据技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。