CN109327544A - 一种领导节点的确定方法和装置 - Google Patents
一种领导节点的确定方法和装置 Download PDFInfo
- Publication number
- CN109327544A CN109327544A CN201811392780.3A CN201811392780A CN109327544A CN 109327544 A CN109327544 A CN 109327544A CN 201811392780 A CN201811392780 A CN 201811392780A CN 109327544 A CN109327544 A CN 109327544A
- Authority
- CN
- China
- Prior art keywords
- election
- monitor node
- node
- monitor
- request message
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- 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
-
- 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/0695—Management of faults, events, alarms or notifications the faulty arrangement being the maintenance, administration or management system
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
Abstract
本申请实施例提供了一种领导节点的确定方法和装置,应用于ceph集群中的第一监视器节点,当达到选举时刻时,如果ceph集群中当前存在发生故障的监视器节点,则向其他各监视器节点及预设非监视器节点发送第一选举请求消息,根据第一预设时长内接收到的其他各监视器节点发送的选举请求消息和预设非监视器节点发送的选举响应消息的总数目,判断是否满足预设选举条件,如果满足预设选举条件,则根据预设选举规则,从发送选举请求消息的监视器节点中确定领导节点。基于上述处理,第一监视器节点可以向预设非监视器节点发送第一选举请求消息,以请求协助确定领导节点,能够提高满足预设选举条件的概率,降低ceph集群不可用的概率。
Description
技术领域
本申请涉及计算机网络领域,特别是涉及一种领导节点的确定方法和装置。
背景技术
Ceph(赛弗)集群是一种具有较高可靠性和可扩展性的分布式存储系统。Ceph集群中的节点可以分为monitor(监视器)节点和非监视器节点。Ceph集群通常包含多个监视器节点,在ceph集群运行过程中,需要从多个监视器节点中确定出一个监视器节点作为leader(领导者),可以称为领导节点。领导节点和其他监视器节点共同管理和维护ceph集群的状态。
现有技术中,当达到选举时刻时,Ceph集群中的每一监视器节点都可以向ceph集群中其他各监视器节点发送选举请求消息。然后,该监视器节点可以确定预设时长内接收到其他监视器节点发送的选举请求消息,并判断所有发送选举请求消息的监视器节点的总数目,与ceph集群中所有监视器节点的总数目的比值是否大于预设阈值。如果比值大于预设阈值,该监视器节点可以根据预设选举规则,从所有发送选举请求消息的监视器节点中,确定领导节点。如果比值小于或者等于预设阈值,该监视器节点则不会确定出领导节点,同理,其他监视器节点也不会确定出领导节点。
然而,在ceph集群运行过程中,监视器节点宕机可能会导致发送选举请求消息的监视器节点的总数目,与ceph集群中所有监视器节点的总数目的比值小于或者等于预设阈值,也即,在ceph集群中,实际参与选举的节点在可参与选举的节点中所占的比例未达到预设选举条件。此时,监视器节点不会在ceph集群中确定出领导节点,进而导致ceph集群不可用。
发明内容
本申请实施例的目的在于提供一种领导节点的确定方法和装置,可以降低ceph集群不可用的概率。具体技术方案如下:
第一方面,为了达到上述目的,本申请公开了一种领导节点的确定方法,所述方法应用于ceph集群中的第一监视器节点,所述方法包括:
当达到选举时刻时,判断所述ceph集群中当前是否存在发生故障的监视器节点;
如果所述ceph集群中当前存在发生故障的监视器节点,向所述ceph集群中其他各监视器节点及预设非监视器节点发送第一选举请求消息;
根据第一预设时长内接收到的其他各监视器节点发送的选举请求消息和所述预设非监视器节点发送的选举响应消息的总数目,判断是否满足预设选举条件;
如果满足所述预设选举条件,则根据预设选举规则,从发送选举请求消息的监视器节点中,确定领导节点。
可选的,所述根据第一预设时长内接收到的其他各监视器节点发送的选举请求消息和所述预设非监视器节点发送的选举响应消息的总数目,判断是否满足预设选举条件,包括:
确定第一预设时长内接收到的其他各监视器节点发送的选举请求消息和所述预设非监视器节点发送的选举响应消息的总数目,作为第一总数目,如果所述第一总数目与所述ceph集群中监视器节点的总数目的比值大于第一预设阈值,则判定满足预设选举条件;
或,
确定第一预设时长内接收到的其他各监视器节点发送的选举请求消息与所述预设非监视器节点发送的选举响应消息的总数目,作为第一总数目,并确定所述ceph集群中监视器节点和所述预设非监视器节点的总数目,作为第二总数目,如果所述第一总数目与所述第二总数目的比值大于第二预设阈值,则判定满足预设选举条件。
可选的,所述第一选举请求消息中携带有第一选举标识;
在所述根据第一预设时长内接收到的其他各监视器节点发送的选举请求消息和所述预设非监视器节点发送的选举响应消息的总数目,判断是否满足预设选举条件之前,所述方法还包括:
判断在第一预设时长内接收到的所述预设非监视器节点发送的选举响应消息中携带的选举标识,是否为目标选举标识,其中,所述目标选举标识包括:与自身网络互通的其他监视器节点发送的选举请求消息中携带的选举标识和所述第一选举标识;
如果在第一预设时长内接收到的所述预设非监视器节点发送的选举响应消息中携带的选举标识,不是所述目标选举标识,则判定不满足预设选举条件;
所述根据第一预设时长内接收到的其他各监视器节点发送的选举请求消息和所述预设非监视器节点发送的选举响应消息的总数目,判断是否满足预设选举条件,包括:
如果在第一预设时长内接收到的所述预设非监视器节点发送的选举响应消息中携带的选举标识,是所述目标选举标识,根据第一预设时长内接收到的其他各监视器节点发送的选举请求消息和所述预设非监视器节点发送的选举响应消息的总数目,判断是否满足预设选举条件。
可选的,如果所述第一选举请求消息为本次选举过程中监视器节点发送的第一个选举请求消息,则所述第一预设时长为从发送所述第一选举请求消息开始的时长;
或者,
如果所述第一选举请求消息不是本次选举过程中监视器节点发送的第一个选举请求消息,则所述第一预设时长为所述选举时刻后从接收到的第一个选举请求消息开始的时长。
可选的,所述方法还包括:
在所述第一监视器节点为所述领导节点的情况下,向发送所述选举响应消息的预设非监视器节点,发送具有预设有效期的证书,以使发送所述选举响应消息的预设非监视器节点在所述预设有效期内,丢弃接收到的选举请求消息。
可选的,在所述向所述ceph集群中其他各监视器节点及预设非监视器节点发送第一选举请求消息之前,所述方法还包括:
获取所述ceph集群中监视器节点的总数目;
如果所述ceph集群中监视器节点的总数目为奇数,从所述ceph集群中确定出偶数个非监视器节点,作为所述预设非监视器节点;
如果所述ceph集群中监视器节点的总数目为偶数,从所述ceph集群中确定出奇数个非监视器节点,作为所述预设非监视器节点。
第二方面,为了达到上述目的,本申请公开了一种领导节点的确定方法,所述方法应用于ceph集群中的非监视器节点,所述方法包括:
接收所述ceph集群中的第一监视器节点发送的第一选举请求消息;
向所述第一监视器节点发送第一选举响应消息,以使所述第一监视器节点根据预设选举规则和所述第一选举响应消息,确定领导节点。
可选的,所述第一选举请求消息中携带有第一选举标识;
在所述接收所述ceph集群中的第一监视器节点发送的第一选举请求消息之后,所述方法还包括:
向所述ceph集群中除所述第一监视器节点外的各监视器节点发送所述第一选举响应消息,其中,所述第一选举响应消息中携带有所述第一选举标识;
在接收到所述第一选举请求消息后的第二预设时长内,接收到未携带有所述第一选举标识的选举请求消息的情况下,丢弃接收到的选举请求消息。
可选的,所述方法还包括:
接收所述第一监视器节点发送的具有预设有效期的证书;
在所述预设有效期内,当接收到选举请求消息时,丢弃接收到的选举请求消息;
当检测到所述证书无效时,向所述第一监视器节点发送证书请求消息;
在第三预设时长内未接收到所述第一监视器节点发送的证书的情况下,当接收到携带有第二选举标识的第二选举请求消息时,向所述ceph集群中各监视器节点发送携带有所述第二选举标识的选举响应消息。
第三方面,为达到上述目的,本申请还公开了一种领导节点的确定装置,所述装置应用于ceph集群中的第一监视器节点,所述装置包括:
第一判断模块,用于当达到选举时刻时,判断所述ceph集群中当前是否存在发生故障的监视器节点;
请求发送模块,用于如果所述ceph集群中当前存在发生故障的监视器节点,向所述ceph集群中其他各监视器节点及预设非监视器节点发送第一选举请求消息;
第二判断模块,用于根据第一预设时长内接收到的其他各监视器节点发送的选举请求消息和所述预设非监视器节点发送的选举响应消息的总数目,判断是否满足预设选举条件;
确定模块,用于如果满足所述预设选举条件,则根据预设选举规则,从发送选举请求消息的监视器节点中,确定领导节点。
可选的,所述第一判断模块,具体用于确定第一预设时长内接收到的其他各监视器节点发送的选举请求消息和所述预设非监视器节点发送的选举响应消息的总数目,作为第一总数目,如果所述第一总数目与所述ceph集群中监视器节点的总数目的比值大于第一预设阈值,则判定满足预设选举条件;
或,
确定第一预设时长内接收到的其他各监视器节点发送的选举请求消息与所述预设非监视器节点发送的选举响应消息的总数目,作为第一总数目,并确定所述ceph集群中监视器节点和所述预设非监视器节点的总数目,作为第二总数目,如果所述第一总数目与所述第二总数目的比值大于第二预设阈值,则判定满足预设选举条件。
可选的,所述第一选举请求消息中携带有第一选举标识;
所述装置还包括:
第一处理模块,用于判断在第一预设时长内接收到的所述预设非监视器节点发送的选举响应消息中携带的选举标识,是否为目标选举标识,其中,所述目标选举标识包括:与自身网络互通的其他监视器节点发送的选举请求消息中携带的选举标识和所述第一选举标识;
如果在第一预设时长内接收到的所述预设非监视器节点发送的选举响应消息中携带的选举标识,不是所述目标选举标识,则判定不满足预设选举条件;
所述第二判断模块,具体用于如果在第一预设时长内接收到的所述预设非监视器节点发送的选举响应消息中携带的选举标识,是所述目标选举标识,根据第一预设时长内接收到的其他各监视器节点发送的选举请求消息和所述预设非监视器节点发送的选举响应消息的总数目,判断是否满足预设选举条件。
可选的,如果所述第一选举请求消息为本次选举过程中监视器节点发送的第一个选举请求消息,则所述第一预设时长为从发送所述第一选举请求消息开始的时长;
或者,
如果所述第一选举请求消息不是本次选举过程中监视器节点发送的第一个选举请求消息,则所述第一预设时长为所述选举时刻后从接收到的第一个选举请求消息开始的时长。
可选的,所述装置还包括:
证书发送模块,用于在所述第一监视器节点为所述领导节点的情况下,向发送所述选举响应消息的预设非监视器节点,发送具有预设有效期的证书,以使发送所述选举响应消息的预设非监视器节点在所述预设有效期内,丢弃接收到的选举请求消息。
可选的,所述装置还包括:第二处理模块,用于获取所述ceph集群中监视器节点的总数目;
如果所述ceph集群中监视器节点的总数目为奇数,从所述ceph集群中确定出偶数个非监视器节点,作为所述预设非监视器节点;
如果所述ceph集群中监视器节点的总数目为偶数,从所述ceph集群中确定出奇数个非监视器节点,作为所述预设非监视器节点。
第四方面,为达到上述目的,本申请还公开了一种领导节点的确定装置,所述装置应用于ceph集群中的非监视器节点,所述装置包括:
接收模块,用于接收所述ceph集群中的第一监视器节点发送的第一选举请求消息;
发送模块,用于向所述第一监视器节点发送第一选举响应消息,以使所述第一监视器节点根据预设选举规则和所述第一选举响应消息,确定领导节点。
可选的,所述第一选举请求消息中携带有第一选举标识;
所述装置还包括:
第一处理模块,用于向所述ceph集群中除所述第一监视器节点外的各监视器节点发送所述第一选举响应消息,其中,所述第一选举响应消息中携带有所述第一选举标识;
在接收到所述第一选举请求消息后的第二预设时长内,接收到未携带有所述第一选举标识的选举请求消息的情况下,丢弃接收到的选举请求消息。
可选的,所述装置包括:
第二处理模块,用于接收所述第一监视器节点发送的具有预设有效期的证书;
在所述预设有效期内,当接收到选举请求消息时,丢弃接收到的选举请求消息;
当检测到所述证书无效时,向所述第一监视器节点发送证书请求消息;
在第三预设时长内未接收到所述第一监视器节点发送的证书的情况下,当接收到携带有第二选举标识的第二选举请求消息时,向所述ceph集群中各监视器节点发送携带有所述第二选举标识的选举响应消息。
另一方面,提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现第一方面所述的方法步骤。
另一方面,提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现第二方面所述的方法步骤。
另一方面,提供了一种机器可读存储介质,存储有机器可执行指令,在被处理器调用和执行时,所述机器可执行指令促使所述处理器:实现第一方面所述的方法步骤。
另一方面,提供了一种机器可读存储介质,存储有机器可执行指令,在被处理器调用和执行时,所述机器可执行指令促使所述处理器:实现第二方面所述的方法步骤。
另一方面,提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面所述的方法步骤。
另一方面,提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第二方面所述的方法步骤。
本申请实施例提供了一种选举方法和装置,可以应用于ceph集群中的第一监视器节点,当达到选举时刻时,如果ceph集群中当前存在发生故障的监视器节点,第一监视器节点可以向其他各监视器节点及预设非监视器节点发送第一选举请求消息,根据第一预设时长内接收到的其他各监视器节点发送的选举请求消息和预设非监视器节点发送的选举响应消息的总数目,判断是否满足预设选举条件,如果满足预设选举条件,第一监视器节点则根据预设选举规则,从发送选举请求消息的监视器节点中确定领导节点。基于上述处理,第一监视器节点可以向预设非监视器节点发送第一选举请求消息,以请求协助确定领导节点,能够提高满足预设选举条件的概率,降低ceph集群不可用的概率。
当然,实施本申请的任一产品或方法并不一定需要同时达到以上的所有优点。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种组网架构的框架图;
图2为本申请实施例提供的一种领导节点的确定方法的流程图;
图3为本申请实施例提供的一种领导节点的确定方法的流程图;
图4为本申请实施例提供的一种领导节点的确定方法示例的流程图;
图5为本申请实施例提供的一种领导节点的确定装置的结构图;
图6为本申请实施例提供的一种领导节点的确定装置的结构图;
图7为本申请实施例提供的一种电子设备的结构图;
图8为本申请实施例提供的一种电子设备的结构图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请提供了一种领导节点的确定方法和装置,可以应用于ceph集群中的第一监视器节点,第一监视器节点可以为ceph集群中的任一监视器节点,ceph集群还可以包括其他监视器节点,以及非监视器节点,非监视器节点可以为存储节点或者应用节点。
参见图1,图1为本申请实施例提供的一种组网架构的框架图,为一种可能的应用场景。该组网包括:监视器节点A、监视器节点B、监视器节点C、监视器节点D、非监视器节点A、非监视器节点B和非监视器节点C。通常,在ceph集群中,当实际参与选举的节点在可参与选举的节点中所占的比例大于1/2时,才达到预设要求条件,能够确定出领导节点。
如果当前监视器节点C和监视器节点D宕机,监视器节点A和监视器节点B都可以向除自身以外的监视器节点发送选举请求消息。以第一监视器节点为监视器节点A为例进行说明,监视器节点A可以向监视器节点B、监视器节点C和监视器节点D发送选举请求消息,而监视器节点A只能接收到监视器节点B发送的选举请求消息,也即,实际参加选举的节点为监视器节点A和监视器节点B,可参与选举的节点为监视器节点A、监视器节点B、监视器节点C和监视器节点D,实际参与选举的节点在可参与选举的节点中所占的比例为1/2,未达到预设选举条件,此时,监视器节点A不会确定出领导节点。监视器节点B的处理方法与监视器节点A类似,在此不再赘述。也即,无法在ceph集群中确定出领导节点,导致ceph集群不可用。
基于本申请实施例的方法,预设非监视器节点可以为非监视器节点A、非监视器节点B和非监视器节点C。当监视器节点C和监视器节点D宕机时,也即,ceph集群中当前存在发生故障的监视器节点,监视器节点A可以向监视器节点B、监视器节点C和监视器节点D发送选举请求消息,同时,监视器节点A还可以向非监视器节点A、非监视器节点B和非监视器节点C发送选举请求消息。
监视器节点A会接收到监视器节点B发送的选举请求消息,以及非监视器节点A、非监视器节点B和非监视器节点C发送的选举响应消息,也即,实际参加选举的节点为监视器节点A、监视器节点B、非监视器节点A、非监视器节点B和非监视器节点C,可参与选举的节点为监视器节点A、监视器节点B、监视器节点C、监视器节点D、非监视器节点A、非监视器节点B和非监视器节点C。实际参与选举的节点在可参与选举的节点中所占的比例为5/7>1/2,达到预设选举条件,监视器节点A可以在监视器节点A和监视器节点B中确定出领导节点,同理,监视器节点B也可以在监视器节点A和监视器节点B中确定出领导节点,且监视器节点A和监视器节点B确定出的领导节点为同一监视器节点,进而可以避免ceph集群不可用。
参见图2,图2为本申请实施例提供的一种领导节点的确定方法的流程图,该方法可以应用于ceph集群中的第一监视器节点,该方法可以包括以下步骤:
S201:当达到选举时刻时,判断ceph集群中当前是否存在发生故障的监视器节点。
其中,选举时刻可以由技术人员根据经验进行设置。例如,选举时刻可以为ceph集群中添加新的监视器节点对应的时刻,也可以为ceph集群中删除已有的监视器节点对应的时刻,还可以为ceph集群中的监视器节点发送故障对应的时刻。监视器节点发生故障可以为监视器节点宕机,也可以为监视器节点之间的通信链路故障。
在申请实施例中,当达到选举时刻时,第一监视器节点可以判断ceph集群中当前是否存在发生故障的监视器节点,以根据判断结果进行不同处理。
例如,当ceph集群中添加新的监视器节点时,第一监视器节点可以接收到新增的监视器节点发送的心跳报文,此时,第一监视器节点可以确定达到选举时刻,然后,第一监视器节点可以判断ceph集群中当前是否存在发生故障的监视器节点。
本步骤中,第一监视器节点可以根据接收到的心跳报文,判断ceph集群中是否存在发生故障的监视器节点。针对某一监视器节点,如果第一监视器节点在上一次接收到该监视器节点的心跳报文后的预设心跳时长内,未再次接收到该监视器节点的心跳报文,也即,该监视器节点宕机,或者,第一监视器节点与该监视器节点之间的通信链路故障,进而,第一监视器节点可以确定ceph集群中当前存在发生故障的监视器节点。其中,预设心跳时长可以由技术人员根据经验进行设置。
S202:如果ceph集群中当前存在发生故障的监视器节点,向ceph集群中其他各监视器节点及预设非监视器节点发送第一选举请求消息。
其中,预设非监视器节点可以由技术人员根据经验在ceph集群中的非监视器节点中确定。第一监视器节点也可以根据ceph集群中的监视器节点的数目,在ceph集群中的非监视器节点中确定预设非监视器节点。第一监视器节点确定预设非监视器节点的方法,将在后续实施例中详细介绍。
在申请实施例中,当第一监视器节点判定ceph集群中当前存在发生故障的监视器节点时,第一监视器节点可以向ceph集群中其他各监视器节点发送选举请求消息(即第一选举请求消息),同时,第一监视器节点还可以向预设非监视器节点发送第一选举请求消息,以使预设非监视器节点协助确定领导节点。
例如,第一监视器节点中可以记录有预设非监视器节点的标识,当达到选举时刻,且第一监视器节点判定ceph集群中当前存在发生故障的监视器节点时,第一监视器节点可以通过广播或者组播的方式,向ceph集群中其他各监视器节点及预设非监视器节点发送第一选举请求消息。
S203:根据第一预设时长内接收到的其他各监视器节点发送的选举请求消息和预设非监视器节点发送的选举响应消息的总数目,判断是否满足预设选举条件。
在申请实施例中,第一监视器节点向ceph集群中其他各监视器节点发送第一选举请求消息时,第一监视器节点也可以接收其他各监视器节点发送的选举请求消息(可以称为第二选举请求消息)。预设非监视器节点接收到第一选举请求消息后,可以向各监视器节点发送选举响应消息(可以称为第一选举响应消息)。第一监视器节点则可以确定第一预设时长内,接收到的第二选举请求消息与第一选举响应消息的总数目(即第一总数目),进而可以根据第一总数目,判断当前是否满足预设选举条件。
第一预设时长可以由技术人员根据经验进行设置。具体的,第一预设时长的计时时刻可以根据第一监视器节点发送第一选举请求消息的时刻确定。
可选的,如果第一选举请求消息为本次选举过程中监视器节点发送的第一个选举请求消息,则第一预设时长为从发送第一选举请求消息开始的时长。
在申请实施例中,如果第一选举请求消息为本次选举过程中监视器节点发送的第一个选举请求消息,也即,第一监视器节点是各监视器节点中最先发送选举请求消息的节点,此时,第一监视器节点可以从发送第一选举请求消息开始计时,当计时时长达到第一预设时长时,第一监视器节点可以确定接收到的选举请求消息的数目,以及接收到的选举响应消息的数目,进而得到第一总数目。
或者,
如果第一选举请求消息不是本次选举过程中监视器节点发送的第一个选举请求消息,则第一预设时长为选举时刻后从接收到的第一个选举请求消息开始的时长。
在申请实施例中,如果第一选举请求消息不是本次选举过程中监视器节点发送的第一个选举请求消息,也即,第一监视器节点不是各监视器节点中最先发送选举请求消息的节点,此时,第一监视器节点可以在选举时刻后从接收到的第一个选举请求消息开始计时,当计时时长达到第一预设时长时,第一监视器节点可以确定接收到的选举请求消息的数目,以及接收到的选举响应消息的数目,进而得到第一总数目。
可选的,第一监视器节点可以采取以下两种方式,判断当前是否满足预设选举条件:
方式一,确定第一预设时长内接收到的其他各监视器节点发送的选举请求消息和预设非监视器节点发送的选举响应消息的总数目,作为第一总数目,如果第一总数目与ceph集群中监视器节点的总数目的比值大于第一预设阈值,则判定满足预设选举条件。
其中,第一预设阈值可以由技术人员根据经验进行设置。
在申请实施例中,第一监视器节点可以将第一预设时长内接收到的其他各监视器节点发送的选举请求消息和预设非监视器节点发送的选举响应消息的总数目,作为第一总数目,然后,第一监视器节点可以判断第一总数目与ceph集群中监视器节点的总数目(可以称为第三总数目)的比值是否大于第一预设阈值。当第一监视器节点判定第一总数目与第三总数目的比值大于第一预设阈值时,第一监视器节点可以确定当前满足预设选举条件,可以理解的是,第三总数目通常大于2。
第一总数目与第三总数目比值大于第一预设阈值,也即达到预设选举条件。通常,当实际参与选举的节点在可参与选举的节点中所占的比例大于1/2时,才达到预设选举条件,相应的,可以根据1/2和第三总数目确定第一预设阈值,若使实际参与选举的节点在可参与选举的节点中所占的比例大于1/2,得到即
例如,参见图1的组网,ceph集群中监视器节点的总数目(即第三总数目)为4,可以得到第一预设阈值为1/4。也即,当第一监视器节点判定第一总数目与第三总数目的比值大于1/4时,第一监视器节点可以确定当前满足预设选举条件。
方式二,确定第一预设时长内接收到的其他各监视器节点发送的选举请求消息与预设非监视器节点发送的选举响应消息的总数目,作为第一总数目,并确定ceph集群中监视器节点和预设非监视器节点的总数目,作为第二总数目,如果第一总数目与第二总数目的比值大于第二预设阈值,则判定满足预设选举条件。
其中,第二预设阈值可以由技术人员根据经验进行设置。
在申请实施例中,第一监视器节点可以将第一预设时长内接收到的其他各监视器节点发送的选举请求消息和预设非监视器节点发送的选举响应消息的总数目,作为第一总数目,将ceph集群中监视器节点和预设非监视器节点的总数目,作为第二总数目。然后,第一监视器节点可以判断第一总数目与第二总数目的比值是否大于第二预设阈值。当第一监视器节点判定第一总数目与第二总数目的比值大于第二预设阈值时,第一监视器节点可以确定当前满足预设选举条件。
第一总数目与第二总数目比值大于第二预设阈值,也即达到预设选举条件。通常,当实际参与选举的节点在可参与选举的节点中所占的比例大于1/2时,才达到预设选举条件,相应的,可以根据1/2和第二总数目确定第二预设阈值,若使实际参与选举的节点在可参与选举的节点中所占的比例大于1/2,同理,得到
例如,参见图1的组网,预设非监视器节点包括:非监视器节点A、非监视器节点B和非监视器节点C。ceph集群中监视器节点和预设非监视器节点的总数目(即第二总数目)为7,可以得到第二预设阈值为5/14。也即,当第一监视器节点判定第一总数目与第二总数目的比值大于5/14时,第一监视器节点可以确定当前满足预设选举条件。
S204:如果满足预设选举条件,则根据预设选举规则,从发送选举请求消息的监视器节点中,确定领导节点。
其中,预设选举规则可以由技术人员根据经验进行设置。例如,选举请求消息中可以携带有发送选举请求的监视器节点的rank(等级),第一监视器节点可以将rank的数值最小的监视器节点确定为领导节点。
在申请实施例中,当第一监视器节点判定当前满足预设选举条件时,第一监视器节点可以根据预设选举规则,从发送选举请求消息的监视器节点中,确定领导节点,也即,第一监视器节点从自身以及发送第二选举请求消息的监视器节点中,确定领导节点。同理,ceph集群中其他各监视器节点都可以从发送选举请求消息的监视器节点中确定出领导节点,且确定出的领导节点为同一监视器节点。
例如,第二选举请求消息中携带有各监视器节点的等级。当第一监视器节点判定当前满足预设选举条件时,第一监视器节点可以获取发送第二选举请求消息中携带的各监视器节点的等级,并确定获取的各等级和自身的等级中数值最小的等级,将数值最小的等级对应的监视器节点确定为领导节点。
基于上述可见,如果ceph集群中当前存在发生故障的监视器节点,第一监视器节点不仅可以向ceph集群中其他各监视器节点发送第一选举请求消息,还可以向预设非监视器节点发送第一选举请求消息,以请求预设非监视器节点协助确定领导节点,使得实际参与选举的节点在可参与选举的节点中所占的比例达到预设选举条件,能够提高满足预设选举条件的概率,降低ceph集群不可用的概率,保证ceph集群的高可用性和健壮性,提高ceph集群对异常环境的适应能力。
为了避免确定出多个领导节点,第一选举请求消息中还可以携带有第一选举标识,在S203之前,该方法还可以包括以下步骤:
步骤一,判断在第一预设时长内接收到的预设非监视器节点发送的选举响应消息中携带的选举标识,是否为目标选举标识。
其中,目标选举标识包括:与自身网络互通的其他监视器节点发送的选举请求消息中携带的选举标识和第一选举标识。第一选举标识用于标识第一监视器节点发起的选举请求消息,第一选举标识可以为第一监视器节点的设备标识。
在申请实施例中,第一监视器节点可以向ceph集群中其他各监视器节点及预设非监视器节点,发送携带有第一选举标识的第一选举请求消息。相应的,如果第一选举请求消息为预设非监视器节点接收到的第一个选举请求消息,在接收到第一选举请求消息后,预设非监视器节点可以向ceph集群中各监视器节点发送携带有第一选举标识的选举响应消息。第一监视器节点可以判断收到的选举响应消息中携带的选举标识,是否为目标选举标识,以确定当前是否满足预设选举条件。
可见,如果第一监视器节点为ceph集群中第一个发送选举请求消息的监视器节点,则ceph集群中的各监视器节点都会接收到携带有第一选举标识的选举响应消息。如果第一监视器节点不是ceph集群中第一个发送选举请求消息的监视器节点,则第一监视器节点会接收到携带有其他选举标识的选举响应消息。
步骤二,如果在第一预设时长内接收到的预设非监视器节点发送的选举响应消息中携带的选举标识,不是目标选举标识,则判定不满足预设选举条件。
在申请实施例中,当第一监视器节点判定选举响应消息中携带的选举标识不是目标选举标识时,第一监视器节点可以确定当前不满足预设选举条件,则不会确定出领导节点。
示例性的,ceph集群中包括监视器节点A、监视器节点B、监视器节点C、监视器节点D和预设非监视器节点E。如果ceph集群分裂为两个子网络,一个子网络包括监视器节点A和监视器节点B,另一个子网络包括监视器节点C和监视器节点D,两个子网络之间无法进行数据传输,预设非监视器节点E可以与两个子网络进行数据传输。
如果监视器节点A第一个发送选举请求消息,该选举请求消息中携带有监视器节点A的标识。预设非监视器节点E接收到该选举请求消息后,可以向监视器节点A、监视器节点B、监视器节点C和监视器节点D发送携带有监视器节点A的标识的选举响应消息。
监视器节点A和监视器节点B网络互通,因此,监视器节点A和监视器节点B均可以确认接收到的选举响应消息中携带的选举标识为目标选举标识,并可以从监视器节点A和监视器节点B中确定出领导节点。
而监视器节点A与监视器节点C和监视器节点D并未网络互通,监视器节点C和监视器节点D则会确认接收到的选举响应消息中携带的选举标识不是目标选举标识,进而判定不满足预设选举条件,并不会从监视器节点C和监视器节点D中确定出领导节点。
可见,针对该ceph集群,可以避免确定出多个领导节点。
相应的,第一监视器节点可以在第一预设时长内接收到的预设非监视器节点发送的选举响应消息中携带的选举标识,是目标选举标识的情况下,根据第一总数目判断是否满足预设选举条件。
另外,如果ceph集群中当前不存在发生故障的监视器节点,第一监视器节点则可以根据现有技术的方法确定出领导节点。
可选的,在第一监视器节点为领导节点的情况下,第一监视器节点可以向预设非监视器节点发送证书,以避免确定出多个领导节点。具体的,该方法还可以包括以下步骤:
在第一监视器节点为领导节点的情况下,向发送选举响应消息的预设非监视器节点,发送具有预设有效期的证书,以使发送选举响应消息的预设非监视器节点在预设有效期内,丢弃接收到的选举请求消息,
其中,预设有效期和发送证书的时刻可以由技术人员根据经验进行设置。例如,证书可以为lease(租契),预设有效期可以为6秒或者10秒,但并不限于此。
发送证书的时刻可以为周期性的时刻,通常,证书的发送周期可以小于证书的预设有效期。如果证书的预设有效期为6秒,在第一次向预设非监视器节点发送证书之后,第一监视器节点可以每间隔5秒向预设非监视器节点发送证书,以更新证书的有效期,直至达到下一个选举时刻。另外,第一监视器节点也可以在接收到预设非监视器节点发送的证书请求消息时,向预设非监视器节点发送证书。
在申请实施例中,如果第一监视器节点被确定为领导节点,第一监视器节点可以确定发送选举响应消息的预设非监视器节点(可以称为目标非监视器节点)。第一监视器节点可以向目标非监视器节点发送证书。在证书的预设有效期内,目标非监视器节点可以丢弃接收到的选举请求消息,以避免确定出多个领导节点。
通常,当实际参与选举的节点在可参与选举的节点中所占的比例大于1/2时,才达到预设选举条件。而针对上述方式二,如果第二总数目为偶数时,则有可能无法确定出领导节点。
例如,ceph集群中包括监视器节点A、监视器节点B、监视器节点C和预设非监视器节点A。如果ceph集群中监视器节点组成的网络分裂为两个子网络,一个子网络包括监视器节点A和监视器节点B,另一个子网络包括监视器节点C,两个子网络之间无法进行数据传输。监视器节点A可以向监视器节点B、监视器节点C以及预设非监视器节点A发送选举请求消息,另外,监视器节点C也可以向监视器节点A、监视器节点B以及预设非监视器节点A发送选举请求消息。
为了避免确定出多个领导节点,预设非监视器节点A只响应监视器节点A或监视器节点C的选举请求消息。如果预设非监视器节点A响应监视器节点C的选举请求消息,此时,监视器节点C确定实际参与选举的节点(即监视器节点C和非监视器节点A)的个数为2,可参与选举的节点(即监视器节点A、监视器节点B、监视器节点C和预设非监视器节点A)的个数为4,即实际参与选举的节点在可参与选举的节点中所占的比例为1/2,未达到预设选举条件。相应的,监视器节点A确定实际参与选举的节点(即监视器节点A和监视器节点B)的个数为2,可参与选举的节点(即监视器节点A、监视器节点B、监视器节点C和预设非监视器节点A)的个数为4,即实际参与选举的节点在可参与选举的节点中所占的比例为1/2,未达到预设选举条件。监视器节点A和监视器节点C都不会确定出领导节点,导致ceph集群不可用。
基于上述考虑,第一监视器节点可以根据ceph集群中监视器节点的总数目,确定预设非监视器节点。具体的,在向ceph集群中其他各监视器节点及预设非监视器节点发送第一选举请求消息之前,该方法还可以包括以下步骤:
步骤一,获取ceph集群中监视器节点的总数目。
在申请实施例中,当达到选举时刻,且第一监视器节点判定ceph集群中当前存在发生故障的监视器节点时,第一监视器节点可以获取ceph集群中监视器节点的总数目(即第三总数目),以根据第三总数目确定预设非监视器节点。
第一监视器节点可以在ceph集群中不存在发生故障的监视器节点时,根据接收到的心跳报文,确定第三总数目。
步骤二,如果ceph集群中监视器节点的总数目为奇数,从ceph集群中确定出偶数个非监视器节点,作为预设非监视器节点。
在申请实施例中,如果第三总数目为奇数,则第一监视器节点可以从ceph集群中确定出偶数个非监视器节点,作为预设非监视器节点。例如,第三总数目为5,则第一监视器节点可以从ceph集群中确定出2个非监视器节点,作为预设非监视器节点,或者,第一监视器节点也可以从ceph集群中确定出4个非监视器节点,作为预设非监视器节点。
步骤三,如果ceph集群中监视器节点的总数目为偶数,从ceph集群中确定出奇数个非监视器节点,作为预设非监视器节点。
在申请实施例中,如果第三总数目为偶数,则第一监视器节点可以从ceph集群中确定出奇数个非监视器节点,作为预设非监视器节点。例如,第三总数目为6,则第一监视器节点可以从ceph集群中确定出1个非监视器节点,作为预设非监视器节点,或者,第一监视器节点也可以从ceph集群中确定出3个非监视器节点,作为预设非监视器节点。
第一监视器节点从ceph集群中确定预设非监视器节点的方式可以是多种多样的。例如,第一监视器节点可以从ceph集群中随机选择奇数/偶数个非监视器节点,作为预设非监视器节点;第一监视器节点也可以根据非监视器节点的心跳报文,获取非监视器节点的设备标识,选择设备标识较小的奇数/偶数个非监视器节点,作为预设非监视器节点。对于第一监视器节点从ceph集群中确定预设非监视器节点的方法,本实施例并不进行限定。
基于本实施例的领导节点的确定方法,使得第二总数目为奇数,避免两个子网络中实际参与选举的节点在可参与选举的节点中所占的比例均为1/2的情况,进而可以避免ceph集群不可用。
参见图3,图3为本申请实施例提供的一种领导节点的确定方法的流程图,该方法可以应用于ceph集群中的非监视器节点,该方法可以包括以下步骤:
S301:接收ceph集群中的第一监视器节点发送的第一选举请求消息。
其中,第一监视器节点可以为ceph集群中的任一监视器节点。
在申请实施例中,当达到选举时刻,且ceph集群中的第一监视器节点判定ceph集群中当前存在发生故障的监视器节点时,第一监视器节点可以向ceph集群中的预设非监视器节点发送选举请求消息(即第一选举请求消息)。相应的,如果某一非监视器节点为预设非监视器节点,则该非监视器节点可以接收到第一选举请求消息。
S302:向第一监视器节点发送第一选举响应消息,以使第一监视器节点根据预设选举规则和所述第一选举响应消息,确定领导节点。
在申请实施例中,非监视器节点接收到第一选举请求消息后,可以向第一监视器节点发送选举响应消息(即第一选举响应消息)。第一监视器节点可以根据预设选举规则和第一选举响应消息,确定领导节点。
可见,非监视器节点可以在接收到选举请求消息后,向第一监视器节点发送选举响应消息,能够增加实际参与选举的节点的数目,促使达到预设选举条件,进而协助监视器节点确定出领导节点。
可选的,第一选举请求消息中可以携带有第一选举标识,以避免确定出多个领导节点,该方法还可以包括以下处理步骤:
步骤一,向ceph集群中除第一监视器节点外的各监视器节点发送第一选举响应消息。
其中,第一选举响应消息中携带有第一选举标识;
在申请实施例中,在接收到第一选举请求消息后,非监视器节点可以获取第一选举标识,然后,该非监视器节点不仅可以向第一监视器节点发送第一选举响应消息,还可以向ceph集群中除第一监视器节点外的各监视器节点发送第一选举响应消息。
步骤二,在接收到第一选举请求消息后的第二预设时长内,接收到未携带有第一选举标识的第二选举请求消息的情况下,丢弃接收到的选举请求消息。
其中,第一选举标识用于标识第一监视器节点发起的选举请求消息,第一选举标识可以为第一监视器节点的设备标识。第二预设时长可以由技术人员根据经验进行设置,例如,第二预设时长可以为从非监视器节点接收到第一选举请求消息开始,到第一监视器节点确定出领导节点的时长。
在申请实施例中,如果在接收到第一选举请求消息后的第二预设时长内,非监视器节点接收到未携带有第一选举标识的选举请求消息,该非监视器节点可以丢弃接收到的选举请求消息。
可选的,非监视器节点还可以根据领导节点发送的证书,丢弃接收到的其他选举请求消息,以避免确定出多个领导节点。具体的,该方法还可以包括以下步骤:
步骤一,接收第一监视器节点发送的具有预设有效期的证书。
其中,预设有效期可以由技术人员根据经验进行设置,例如,证书可以为lease(租契),预设有效期可以为6秒或者10秒。
在申请实施例中,如果第一监视器节点接收到非监视器节点发送的选举响应消息,且第一监视器节点被确定为领导节点,第一监视器节点可以向该非监视器节点发送证书,该非监视器节点则可以接收到第一监视器节点发送的证书。
步骤二,在预设有效期内,当接收到选举请求消息时,丢弃接收到的选举请求消息。
在申请实施例中,在非监视器节点接收到第一监视器节点发送的证书的情况下,在该证书的预设有效期内,如果该非监视器节点接收到其他的选举请求消息,则该非监视器节点可以丢弃接收到的选举请求消息,以避免确定出多个领导节点。
步骤三,当检测到证书无效时,向第一监视器节点发送证书请求消息。
在申请实施例中,当非监视器节点检测到证书无效时,该非监视器节点可以主动向当前的领导节点(即第一监视器节点)发送证书请求消息,以再次获得证书。第一监视器节点接收到证书请求消息后,则可以再次向该非监视器节点发送证书。
步骤四,在第三预设时长内未接收到第一监视器节点发送的证书的情况下,当接收到携带有第二选举标识的选举请求消息时,向ceph集群中各监视器节点发送携带有第二选举标识的选举响应消息。
其中,第三预设时长可以由技术人员根据经验进行设置,例如,第三预设时长可以为10秒或者15秒,用于表示证书请求消息的响应超时时长。
在申请实施例中,在发送证书请求消息后的第三预设时长内,如果第一监视器节点出现故障,或者,第一监视器节点与该非监视器节点之间的通信链路出现故障,都会导致该非监视器节点无法接收到第一监视器节点发送的证书。该非监视器节点可以确定第一监视器节点当前不再是领导节点,此时,如果该非监视器节点接收到携带有第二选举标识的选举请求消息,则该非监视器节点可以向ceph集群中各监视器节点发送携带有第二选举标识的选举响应消息,以再次协助确定领导节点。
另外,该非监视器节点可以向第一监视器节点多次发送证书请求消息,直至该非监视器节点接收到第一监视器节点发送的证书。或者,如果直至最后一次发送证书请求消息后的第二预设时长内,该非监视器节点仍未接收到第一监视器节点发送的证书,则该非监视器节点可以响应接收到的其他选举请求消息,以再次协助确定领导节点。
参见图4,图4为本申请实施例提供的一种领导节点的确定方法示例的流程图,实施例以方法应用于图1中的监视器节点A、监视器节点B和非监视器节点A为例进行说明,第二总数目为5。其中,当实际参与选举的节点在可参与选举的节点中所占的比例大于1/2时,才达到预设选举条件,则第二预设阈值为3/10,该方法可以包括以下步骤:
S401:当ceph集群中不存在发生故障的监视器节点时,监视器节点A获取ceph集群中监视器节点的总数目(即为4),并从ceph集群中确定出1个非监视器节点(即非监视器节点A),作为预设非监视器节点。
S402:当ceph集群中不存在发生故障的监视器节点时,监视器节点B获取ceph集群中监视器节点的总数目(即为4),并从ceph集群中确定出1个非监视器节点(即非监视器节点A),作为预设非监视器节点。
S403:当检测到监视器节点C和监视器节点D宕机时,监视器节点A向监视器节点B、监视器节点C、监视器节点D和非监视器节点A发送第一选举请求消息。
其中,第一选举请求消息中携带有监视器节点A的等级和监视器节点A的标识。
S404:当检测到监视器节点C和监视器节点D宕机时,监视器节点B向监视器节点A、监视器节点C、监视器节点D和非监视器节点A发送第二选举请求消息。
其中,第二选举请求消息中携带有监视器节点B的等级和监视器节点B的标识。
S405:当接收到第一选举请求消息时,非监视器节点A向监视器节点A和监视器节点B发送第一选举响应消息。
其中,非监视器节点节点A首先接收到第一选举请求消息,然后,接收到第二选举请求消息。第一选举响应消息中携带有监视器节点A的标识。
S406:监视器节点A判定接收到的选举响应消息中的选举标识为目标选举标识,确定第一总数目为3,第二总数目为5,判断第一总数目与第二总数目的比值为3/5大于第二预设阈值,达到预设选举条件,将监视器节点A和监视器节点B中等级的数值较小的监视器节点确定为领导节点。
其中,目标选举标识包括监视器节点A的标识和监视器节点B的标识。
S407:监视器节点B判定接收到的选举响应消息中的选举标识为目标选举标识,确定第一总数目为3,第二总数目为5,判断第一总数目与第二总数目的比值为3/5大于第二预设阈值,达到预设选举条件,将监视器节点A和监视器节点B中等级的数值较小的监视器节点确定为领导节点。
其中,目标选举标识包括监视器节点A的标识和监视器节点B的标识。
基于本申请实施例的领导节点的确定方法,当达到选举时刻时,如果ceph集群中当前存在发生故障的监视器节点,则向其他各监视器节点及预设非监视器节点发送第一选举请求消息,根据第一预设时长内接收到的其他各监视器节点发送的选举请求消息和预设非监视器节点发送的选举响应消息的总数目,判断是否满足预设选举条件,如果满足预设选举条件,则根据预设选举规则,从发送选举请求消息的监视器节点中确定领导节点。基于上述处理,可以向预设非监视器节点发送第一选举请求消息,以请求协助确定领导节点,能够提高满足预设选举条件的概率,降低ceph集群不可用的概率。
参见图5,图5为本申请实施例提供的一种领导节点的确定装置的结构图,所述装置应用于ceph集群中的第一监视器节点,所述装置包括:
第一判断模块501,用于当达到选举时刻时,判断所述ceph集群中当前是否存在发生故障的监视器节点;
请求发送模块502,用于如果所述ceph集群中当前存在发生故障的监视器节点,向所述ceph集群中其他各监视器节点及预设非监视器节点发送第一选举请求消息;
第二判断模块503,用于根据第一预设时长内接收到的其他各监视器节点发送的选举请求消息和所述预设非监视器节点发送的选举响应消息的总数目,判断是否满足预设选举条件;
确定模块504,用于如果满足所述预设选举条件,则根据预设选举规则,从发送选举请求消息的监视器节点中,确定领导节点。
可选的,所述第一判断模块501,具体用于确定第一预设时长内接收到的其他各监视器节点发送的选举请求消息和所述预设非监视器节点发送的选举响应消息的总数目,作为第一总数目,如果所述第一总数目与所述ceph集群中监视器节点的总数目的比值大于第一预设阈值,则判定满足预设选举条件;
或,
确定第一预设时长内接收到的其他各监视器节点发送的选举请求消息与所述预设非监视器节点发送的选举响应消息的总数目,作为第一总数目,并确定所述ceph集群中监视器节点和所述预设非监视器节点的总数目,作为第二总数目,如果所述第一总数目与所述第二总数目的比值大于第二预设阈值,则判定满足预设选举条件。
可选的,所述第一选举请求消息中携带有第一选举标识;
所述装置还包括:
第一处理模块,用于判断在第一预设时长内接收到的所述预设非监视器节点发送的选举响应消息中携带的选举标识,是否为目标选举标识,其中,所述目标选举标识包括:与自身网络互通的其他监视器节点发送的选举请求消息中携带的选举标识和所述第一选举标识;
如果在第一预设时长内接收到的所述预设非监视器节点发送的选举响应消息中携带的选举标识,不是所述目标选举标识,则判定不满足预设选举条件;
所述第二判断模块,具体用于如果在第一预设时长内接收到的所述预设非监视器节点发送的选举响应消息中携带的选举标识,是所述目标选举标识,根据第一预设时长内接收到的其他各监视器节点发送的选举请求消息和所述预设非监视器节点发送的选举响应消息的总数目,判断是否满足预设选举条件。
可选的,如果所述第一选举请求消息为本次选举过程中监视器节点发送的第一个选举请求消息,则所述第一预设时长为从发送所述第一选举请求消息开始的时长;
或者,
如果所述第一选举请求消息不是本次选举过程中监视器节点发送的第一个选举请求消息,则所述第一预设时长为所述选举时刻后从接收到的第一个选举请求消息开始的时长。
可选的,所述装置还包括:
证书发送模块,用于在所述第一监视器节点为所述领导节点的情况下,向发送所述选举响应消息的预设非监视器节点,发送具有预设有效期的证书,以使发送所述选举响应消息的预设非监视器节点在所述预设有效期内,丢弃接收到的选举请求消息。
可选的,所述装置还包括:第二处理模块,用于获取所述ceph集群中监视器节点的总数目;
如果所述ceph集群中监视器节点的总数目为奇数,从所述ceph集群中确定出偶数个非监视器节点,作为所述预设非监视器节点;
如果所述ceph集群中监视器节点的总数目为偶数,从所述ceph集群中确定出奇数个非监视器节点,作为所述预设非监视器节点。
参见图6,图6为本申请实施例提供的一种领导节点的确定装置的结构图,所述装置应用于ceph集群中的非监视器节点,所述装置包括:
接收模块601,用于接收所述ceph集群中的第一监视器节点发送的第一选举请求消息;
发送模块602,用于向所述第一监视器节点发送第一选举响应消息,以使所述第一监视器节点根据预设选举规则和所述第一选举响应消息,确定领导节点。
可选的,所述第一选举请求消息中携带有第一选举标识;
所述装置还包括:
第一处理模块,用于向所述ceph集群中除所述第一监视器节点外的各监视器节点发送所述第一选举响应消息,其中,所述第一选举响应消息中携带有所述第一选举标识;
在接收到所述第一选举请求消息后的第二预设时长内,接收到未携带有所述第一选举标识的选举请求消息的情况下,丢弃接收到的选举请求消息。
可选的,所述装置包括:
第二处理模块,用于接收所述第一监视器节点发送的具有预设有效期的证书;
在所述预设有效期内,当接收到选举请求消息时,丢弃接收到的选举请求消息;
当检测到所述证书无效时,向所述第一监视器节点发送证书请求消息;
在第三预设时长内未接收到所述第一监视器节点发送的证书的情况下,当接收到携带有第二选举标识的第二选举请求消息时,向所述ceph集群中各监视器节点发送携带有所述第二选举标识的选举响应消息。
基于本申请实施例的领导节点的确定装置,当达到选举时刻时,如果ceph集群中当前存在发生故障的监视器节点,则向其他各监视器节点及预设非监视器节点发送第一选举请求消息,根据第一预设时长内接收到的其他各监视器节点发送的选举请求消息和预设非监视器节点发送的选举响应消息的总数目,判断是否满足预设选举条件,如果满足预设选举条件,则根据预设选举规则,从发送选举请求消息的监视器节点中确定领导节点。基于上述处理,可以向预设非监视器节点发送第一选举请求消息,以请求协助确定领导节点,能够提高满足预设选举条件的概率,降低ceph集群不可用的概率。
本申请实施例还提供了一种电子设备,如图7所示,包括处理器701、通信接口702、存储器703和通信总线704,其中,处理器701,通信接口702,存储器703通过通信总线704完成相互间的通信,
存储器703,用于存放计算机程序;
处理器701,用于执行存储器703上所存放的程序时,以使该电子设备执行领导节点的确定方法的步骤,该方法包括:
当达到选举时刻时,判断所述ceph集群中当前是否存在发生故障的监视器节点;
如果所述ceph集群中当前存在发生故障的监视器节点,向所述ceph集群中其他各监视器节点及预设非监视器节点发送第一选举请求消息;
根据第一预设时长内接收到的其他各监视器节点发送的选举请求消息和所述预设非监视器节点发送的选举响应消息的总数目,判断是否满足预设选举条件;
如果满足所述预设选举条件,则根据预设选举规则,从发送选举请求消息的监视器节点中,确定领导节点。
可选的,所述根据第一预设时长内接收到的其他各监视器节点发送的选举请求消息和所述预设非监视器节点发送的选举响应消息的总数目,判断是否满足预设选举条件,包括:
确定第一预设时长内接收到的其他各监视器节点发送的选举请求消息和所述预设非监视器节点发送的选举响应消息的总数目,作为第一总数目,如果所述第一总数目与所述ceph集群中监视器节点的总数目的比值大于第一预设阈值,则判定满足预设选举条件;
或,
确定第一预设时长内接收到的其他各监视器节点发送的选举请求消息与所述预设非监视器节点发送的选举响应消息的总数目,作为第一总数目,并确定所述ceph集群中监视器节点和所述预设非监视器节点的总数目,作为第二总数目,如果所述第一总数目与所述第二总数目的比值大于第二预设阈值,则判定满足预设选举条件。
可选的,所述第一选举请求消息中携带有第一选举标识;
在所述根据第一预设时长内接收到的其他各监视器节点发送的选举请求消息和所述预设非监视器节点发送的选举响应消息的总数目,判断是否满足预设选举条件之前,所述方法还包括:
判断在第一预设时长内接收到的所述预设非监视器节点发送的选举响应消息中携带的选举标识,是否为目标选举标识,其中,所述目标选举标识包括:与自身网络互通的其他监视器节点发送的选举请求消息中携带的选举标识和所述第一选举标识;
如果在第一预设时长内接收到的所述预设非监视器节点发送的选举响应消息中携带的选举标识,不是所述目标选举标识,则判定不满足预设选举条件;
所述根据第一预设时长内接收到的其他各监视器节点发送的选举请求消息和所述预设非监视器节点发送的选举响应消息的总数目,判断是否满足预设选举条件,包括:
如果在第一预设时长内接收到的所述预设非监视器节点发送的选举响应消息中携带的选举标识,是所述目标选举标识,根据第一预设时长内接收到的其他各监视器节点发送的选举请求消息和所述预设非监视器节点发送的选举响应消息的总数目,判断是否满足预设选举条件。
可选的,如果所述第一选举请求消息为本次选举过程中监视器节点发送的第一个选举请求消息,则所述第一预设时长为从发送所述第一选举请求消息开始的时长;
或者,
如果所述第一选举请求消息不是本次选举过程中监视器节点发送的第一个选举请求消息,则所述第一预设时长为所述选举时刻后从接收到的第一个选举请求消息开始的时长。
可选的,所述方法还包括:
在所述第一监视器节点为所述领导节点的情况下,向发送所述选举响应消息的预设非监视器节点,发送具有预设有效期的证书,以使发送所述选举响应消息的预设非监视器节点在所述预设有效期内,丢弃接收到的选举请求消息。
可选的,在所述向所述ceph集群中其他各监视器节点及预设非监视器节点发送第一选举请求消息之前,所述方法还包括:
获取所述ceph集群中监视器节点的总数目;
如果所述ceph集群中监视器节点的总数目为奇数,从所述ceph集群中确定出偶数个非监视器节点,作为所述预设非监视器节点;
如果所述ceph集群中监视器节点的总数目为偶数,从所述ceph集群中确定出奇数个非监视器节点,作为所述预设非监视器节点。
本申请实施例还提供了一种电子设备,如图8所示,包括处理器801、通信接口802、存储器803和通信总线804,其中,处理器801,通信接口802,存储器803通过通信总线804完成相互间的通信,
存储器803,用于存放计算机程序;
处理器801,用于执行存储器803上所存放的程序时,以使该电子设备执行领导节点的确定方法的步骤,该方法包括:
接收所述ceph集群中的第一监视器节点发送的第一选举请求消息;
向所述第一监视器节点发送第一选举响应消息,以使所述第一监视器节点根据预设选举规则和所述第一选举响应消息,确定领导节点。
可选的,所述第一选举请求消息中携带有第一选举标识;
在所述接收所述ceph集群中的第一监视器节点发送的第一选举请求消息之后,所述方法还包括:
向所述ceph集群中除所述第一监视器节点外的各监视器节点发送所述第一选举响应消息,其中,所述第一选举响应消息中携带有所述第一选举标识;
在接收到所述第一选举请求消息后的第二预设时长内,接收到未携带有所述第一选举标识的选举请求消息的情况下,丢弃接收到的选举请求消息。
可选的,所述方法还包括:
接收所述第一监视器节点发送的具有预设有效期的证书;
在所述预设有效期内,当接收到选举请求消息时,丢弃接收到的选举请求消息;
当检测到所述证书无效时,向所述第一监视器节点发送证书请求消息;
在第三预设时长内未接收到所述第一监视器节点发送的证书的情况下,当接收到携带有第二选举标识的第二选举请求消息时,向所述ceph集群中各监视器节点发送携带有所述第二选举标识的选举响应消息。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本申请提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一应用于第一监视器节点的领导节点的确定方法的步骤。
在本申请提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一应用于非监视器节点的领导节点的确定方法的步骤。
在本申请提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一应用于第一监视器节点的领导节点的确定方法。
在本申请提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一应用于非监视器节点的领导节点的确定方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、电子设备、计算机可读存储介质,以及计算机程序产品实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本申请的保护范围内。
Claims (16)
1.一种领导节点的确定方法,其特征在于,所述方法应用于赛弗ceph集群中的第一监视器节点,所述方法包括:
当达到选举时刻时,判断所述ceph集群中当前是否存在发生故障的监视器节点;
如果所述ceph集群中当前存在发生故障的监视器节点,向所述ceph集群中其他各监视器节点及预设非监视器节点发送第一选举请求消息;
根据第一预设时长内接收到的其他各监视器节点发送的选举请求消息和所述预设非监视器节点发送的选举响应消息的总数目,判断是否满足预设选举条件;
如果满足所述预设选举条件,则根据预设选举规则,从发送选举请求消息的监视器节点中,确定领导节点。
2.根据权利要求1所述的方法,其特征在于,所述根据第一预设时长内接收到的其他各监视器节点发送的选举请求消息和所述预设非监视器节点发送的选举响应消息的总数目,判断是否满足预设选举条件,包括:
确定第一预设时长内接收到的其他各监视器节点发送的选举请求消息和所述预设非监视器节点发送的选举响应消息的总数目,作为第一总数目,如果所述第一总数目与所述ceph集群中监视器节点的总数目的比值大于第一预设阈值,则判定满足预设选举条件;
或,
确定第一预设时长内接收到的其他各监视器节点发送的选举请求消息与所述预设非监视器节点发送的选举响应消息的总数目,作为第一总数目,并确定所述ceph集群中监视器节点和所述预设非监视器节点的总数目,作为第二总数目,如果所述第一总数目与所述第二总数目的比值大于第二预设阈值,则判定满足预设选举条件。
3.根据权利要求1所述的方法,其特征在于,所述第一选举请求消息中携带有第一选举标识;
在所述根据第一预设时长内接收到的其他各监视器节点发送的选举请求消息和所述预设非监视器节点发送的选举响应消息的总数目,判断是否满足预设选举条件之前,所述方法还包括:
判断在第一预设时长内接收到的所述预设非监视器节点发送的选举响应消息中携带的选举标识,是否为目标选举标识,其中,所述目标选举标识包括:与自身网络互通的其他监视器节点发送的选举请求消息中携带的选举标识和所述第一选举标识;
如果在第一预设时长内接收到的所述预设非监视器节点发送的选举响应消息中携带的选举标识,不是所述目标选举标识,则判定不满足预设选举条件;
所述根据第一预设时长内接收到的其他各监视器节点发送的选举请求消息和所述预设非监视器节点发送的选举响应消息的总数目,判断是否满足预设选举条件,包括:
如果在第一预设时长内接收到的所述预设非监视器节点发送的选举响应消息中携带的选举标识,是所述目标选举标识,根据第一预设时长内接收到的其他各监视器节点发送的选举请求消息和所述预设非监视器节点发送的选举响应消息的总数目,判断是否满足预设选举条件。
4.根据权利要求1所述的方法,其特征在于,如果所述第一选举请求消息为本次选举过程中监视器节点发送的第一个选举请求消息,则所述第一预设时长为从发送所述第一选举请求消息开始的时长;
或者,
如果所述第一选举请求消息不是本次选举过程中监视器节点发送的第一个选举请求消息,则所述第一预设时长为所述选举时刻后从接收到的第一个选举请求消息开始的时长。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述第一监视器节点为所述领导节点的情况下,向发送所述选举响应消息的预设非监视器节点,发送具有预设有效期的证书,以使发送所述选举响应消息的预设非监视器节点在所述预设有效期内,丢弃接收到的选举请求消息。
6.根据权利要求1所述的方法,其特征在于,在所述向所述ceph集群中其他各监视器节点及预设非监视器节点发送第一选举请求消息之前,所述方法还包括:
获取所述ceph集群中监视器节点的总数目;
如果所述ceph集群中监视器节点的总数目为奇数,从所述ceph集群中确定出偶数个非监视器节点,作为所述预设非监视器节点;
如果所述ceph集群中监视器节点的总数目为偶数,从所述ceph集群中确定出奇数个非监视器节点,作为所述预设非监视器节点。
7.一种领导节点的确定方法,其特征在于,所述方法应用于赛弗ceph集群中的非监视器节点,所述方法包括:
接收所述ceph集群中的第一监视器节点发送的第一选举请求消息;
向所述第一监视器节点发送第一选举响应消息,以使所述第一监视器节点根据预设选举规则和所述第一选举响应消息,确定领导节点。
8.根据权利要求7所述的方法,其特征在于,所述第一选举请求消息中携带有第一选举标识;
在所述接收所述ceph集群中的第一监视器节点发送的第一选举请求消息之后,所述方法还包括:
向所述ceph集群中除所述第一监视器节点外的各监视器节点发送所述第一选举响应消息,其中,所述第一选举响应消息中携带有所述第一选举标识;
在接收到所述第一选举请求消息后的第二预设时长内,接收到未携带有所述第一选举标识的选举请求消息的情况下,丢弃接收到的选举请求消息。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
接收所述第一监视器节点发送的具有预设有效期的证书;
在所述预设有效期内,当接收到选举请求消息时,丢弃接收到的选举请求消息;
当检测到所述证书无效时,向所述第一监视器节点发送证书请求消息;
在第三预设时长内未接收到所述第一监视器节点发送的证书的情况下,当接收到携带有第二选举标识的第二选举请求消息时,向所述ceph集群中各监视器节点发送携带有所述第二选举标识的选举响应消息。
10.一种领导节点的确定装置,其特征在于,所述装置应用于赛弗ceph集群中的第一监视器节点,所述装置包括:
第一判断模块,用于当达到选举时刻时,判断所述ceph集群中当前是否存在发生故障的监视器节点;
请求发送模块,用于如果所述ceph集群中当前存在发生故障的监视器节点,向所述ceph集群中其他各监视器节点及预设非监视器节点发送第一选举请求消息;
第二判断模块,用于根据第一预设时长内接收到的其他各监视器节点发送的选举请求消息和所述预设非监视器节点发送的选举响应消息的总数目,判断是否满足预设选举条件;
确定模块,用于如果满足所述预设选举条件,则根据预设选举规则,从发送选举请求消息的监视器节点中,确定领导节点。
11.根据权利要求10所述的装置,其特征在于,所述第一判断模块,具体用于确定第一预设时长内接收到的其他各监视器节点发送的选举请求消息和所述预设非监视器节点发送的选举响应消息的总数目,作为第一总数目,如果所述第一总数目与所述ceph集群中监视器节点的总数目的比值大于第一预设阈值,则判定满足预设选举条件;
或,
确定第一预设时长内接收到的其他各监视器节点发送的选举请求消息与所述预设非监视器节点发送的选举响应消息的总数目,作为第一总数目,并确定所述ceph集群中监视器节点和所述预设非监视器节点的总数目,作为第二总数目,如果所述第一总数目与所述第二总数目的比值大于第二预设阈值,则判定满足预设选举条件。
12.根据权利要求10所述的装置,其特征在于,所述第一选举请求消息中携带有第一选举标识;
所述装置还包括:
第一处理模块,用于判断在第一预设时长内接收到的所述预设非监视器节点发送的选举响应消息中携带的选举标识,是否为目标选举标识,其中,所述目标选举标识包括:与自身网络互通的其他监视器节点发送的选举请求消息中携带的选举标识和所述第一选举标识;
如果在第一预设时长内接收到的所述预设非监视器节点发送的选举响应消息中携带的选举标识,不是所述目标选举标识,则判定不满足预设选举条件;
所述第二判断模块,具体用于如果在第一预设时长内接收到的所述预设非监视器节点发送的选举响应消息中携带的选举标识,是所述目标选举标识,根据第一预设时长内接收到的其他各监视器节点发送的选举请求消息和所述预设非监视器节点发送的选举响应消息的总数目,判断是否满足预设选举条件。
13.根据权利要求10所述的装置,其特征在于,如果所述第一选举请求消息为本次选举过程中监视器节点发送的第一个选举请求消息,则所述第一预设时长为从发送所述第一选举请求消息开始的时长;
或者,
如果所述第一选举请求消息不是本次选举过程中监视器节点发送的第一个选举请求消息,则所述第一预设时长为所述选举时刻后从接收到的第一个选举请求消息开始的时长。
14.根据权利要求10所述的装置,其特征在于,所述装置还包括:
第二处理模块,用于获取所述ceph集群中监视器节点的总数目;
如果所述ceph集群中监视器节点的总数目为奇数,从所述ceph集群中确定出偶数个非监视器节点,作为所述预设非监视器节点;
如果所述ceph集群中监视器节点的总数目为偶数,从所述ceph集群中确定出奇数个非监视器节点,作为所述预设非监视器节点。
15.一种领导节点的确定装置,其特征在于,所述装置应用于赛弗ceph集群中的非监视器节点,所述装置包括:
接收模块,用于接收所述ceph集群中的第一监视器节点发送的第一选举请求消息;
发送模块,用于向所述第一监视器节点发送第一选举响应消息,以使所述第一监视器节点根据预设选举规则和所述第一选举响应消息,确定领导节点。
16.根据权利要求15所述的装置,其特征在于,所述第一选举请求消息中携带有第一选举标识;
所述装置还包括:
处理模块,用于向所述ceph集群中除所述第一监视器节点外的各监视器节点发送所述第一选举响应消息,其中,所述第一选举响应消息中携带有所述第一选举标识;
在接收到所述第一选举请求消息后的第二预设时长内,接收到未携带有所述第一选举标识的选举请求消息的情况下,丢弃接收到的选举请求消息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811392780.3A CN109327544B (zh) | 2018-11-21 | 2018-11-21 | 一种领导节点的确定方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811392780.3A CN109327544B (zh) | 2018-11-21 | 2018-11-21 | 一种领导节点的确定方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109327544A true CN109327544A (zh) | 2019-02-12 |
CN109327544B CN109327544B (zh) | 2021-06-18 |
Family
ID=65258342
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811392780.3A Active CN109327544B (zh) | 2018-11-21 | 2018-11-21 | 一种领导节点的确定方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109327544B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109960469A (zh) * | 2019-03-25 | 2019-07-02 | 新华三技术有限公司 | 数据处理方法和装置 |
CN110618863A (zh) * | 2019-09-18 | 2019-12-27 | 神州数码融信软件有限公司 | 一种基于Raft算法的作业调度方法 |
CN112055365A (zh) * | 2020-09-16 | 2020-12-08 | 北京数码视讯技术有限公司 | 终端组网的方法及装置、终端、可读存储介质 |
US20230129446A1 (en) * | 2021-10-26 | 2023-04-27 | Hewlett Packard Enterprise Development Lp | Disaggregated storage with mutiple cluster levels |
US20230136274A1 (en) * | 2021-11-04 | 2023-05-04 | Softiron Limited | Ceph Media Failure and Remediation |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015127647A1 (zh) * | 2014-02-28 | 2015-09-03 | 运软网络科技(上海)有限公司 | 一种基于Ceph的分布式机制的存储虚拟化管理器及系统 |
CN104933132A (zh) * | 2015-06-12 | 2015-09-23 | 广州巨杉软件开发有限公司 | 基于操作序列号的分布式数据库有权重选举方法 |
CN105592139A (zh) * | 2015-10-28 | 2016-05-18 | 杭州华三通信技术有限公司 | 一种分布式文件系统管理平台的ha实现方法及装置 |
US20160349993A1 (en) * | 2015-05-29 | 2016-12-01 | Cisco Technology, Inc. | Data-driven ceph performance optimizations |
CN106331046A (zh) * | 2015-07-02 | 2017-01-11 | 中兴通讯股份有限公司 | 集群主节点选举方法及装置 |
CN106878083A (zh) * | 2017-02-28 | 2017-06-20 | 新华三技术有限公司 | 一种节点选举方法及装置 |
CN108600328A (zh) * | 2018-03-29 | 2018-09-28 | 新华三技术有限公司 | 一种集群选举方法和装置 |
CN108810046A (zh) * | 2017-04-28 | 2018-11-13 | 华为技术有限公司 | 一种选举领导者Leader的方法、装置及设备 |
-
2018
- 2018-11-21 CN CN201811392780.3A patent/CN109327544B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015127647A1 (zh) * | 2014-02-28 | 2015-09-03 | 运软网络科技(上海)有限公司 | 一种基于Ceph的分布式机制的存储虚拟化管理器及系统 |
US20160349993A1 (en) * | 2015-05-29 | 2016-12-01 | Cisco Technology, Inc. | Data-driven ceph performance optimizations |
CN104933132A (zh) * | 2015-06-12 | 2015-09-23 | 广州巨杉软件开发有限公司 | 基于操作序列号的分布式数据库有权重选举方法 |
CN106331046A (zh) * | 2015-07-02 | 2017-01-11 | 中兴通讯股份有限公司 | 集群主节点选举方法及装置 |
CN105592139A (zh) * | 2015-10-28 | 2016-05-18 | 杭州华三通信技术有限公司 | 一种分布式文件系统管理平台的ha实现方法及装置 |
CN106878083A (zh) * | 2017-02-28 | 2017-06-20 | 新华三技术有限公司 | 一种节点选举方法及装置 |
CN108810046A (zh) * | 2017-04-28 | 2018-11-13 | 华为技术有限公司 | 一种选举领导者Leader的方法、装置及设备 |
CN108600328A (zh) * | 2018-03-29 | 2018-09-28 | 新华三技术有限公司 | 一种集群选举方法和装置 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109960469A (zh) * | 2019-03-25 | 2019-07-02 | 新华三技术有限公司 | 数据处理方法和装置 |
CN109960469B (zh) * | 2019-03-25 | 2022-05-31 | 新华三技术有限公司 | 数据处理方法和装置 |
CN110618863A (zh) * | 2019-09-18 | 2019-12-27 | 神州数码融信软件有限公司 | 一种基于Raft算法的作业调度方法 |
CN112055365A (zh) * | 2020-09-16 | 2020-12-08 | 北京数码视讯技术有限公司 | 终端组网的方法及装置、终端、可读存储介质 |
CN112055365B (zh) * | 2020-09-16 | 2024-04-09 | 北京数码视讯技术有限公司 | 终端组网的方法及装置、终端、可读存储介质 |
US20230129446A1 (en) * | 2021-10-26 | 2023-04-27 | Hewlett Packard Enterprise Development Lp | Disaggregated storage with mutiple cluster levels |
US11645014B1 (en) * | 2021-10-26 | 2023-05-09 | Hewlett Packard Enterprise Development Lp | Disaggregated storage with multiple cluster levels |
US20230136274A1 (en) * | 2021-11-04 | 2023-05-04 | Softiron Limited | Ceph Media Failure and Remediation |
Also Published As
Publication number | Publication date |
---|---|
CN109327544B (zh) | 2021-06-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109327544A (zh) | 一种领导节点的确定方法和装置 | |
CN108810100B (zh) | 一种主节点的选举方法、装置及设备 | |
CN109617731A (zh) | 一种多网关环境下自适应的网关角色配置方法及装置 | |
CN110351311B (zh) | 负载均衡方法 | |
CN113596176B (zh) | 物联网中心节点的自选方法、装置、物联网设备和系统 | |
CN101015170A (zh) | 探查服务器在点对点监视系统中的存在 | |
US11483383B2 (en) | Data reporting method and system | |
CN109787827B (zh) | 一种cdn网络监控的方法及装置 | |
CN109921925B (zh) | 一种拨测方法及装置 | |
CN109688604B (zh) | 一种基于贝叶斯网络的高动态移动自组织网络抗毁性评估方法 | |
CN104125590B (zh) | 链路故障诊断装置以及方法 | |
CN113395192B (zh) | 互联方法、系统及设备 | |
CN112328421A (zh) | 一种系统故障处理方法、装置、计算机设备和存储介质 | |
CN112671813B (zh) | 服务器确定方法、装置、设备及存储介质 | |
Sridhar | Decentralized local failure detection in dynamic distributed systems | |
CN104079663B (zh) | 分布式实时同步网络系统及其通告数据的方法 | |
CN108600328A (zh) | 一种集群选举方法和装置 | |
CN110321287A (zh) | 一种服务器功能的检测方法、装置及电子设备 | |
CN111050356A (zh) | 数据传输的处理方法及装置、存储介质、电子装置 | |
CN112860427A (zh) | 容器集群的负载均衡方法、装置与容器集群 | |
CN114173396B (zh) | 终端联网时间的确定方法和装置、电子设备和存储介质 | |
CN112929594A (zh) | 自组网级联方法、音频采集设备、会议系统、存储介质 | |
CN112367373B (zh) | 分布式系统的节点确定方法和装置及存储介质 | |
CN109525408A (zh) | 一种设备异常处理方法、装置及云存储系统 | |
CN109120547A (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 |