一种主节点的选举方法、装置及设备制造方法及图纸

技术编号:19437271 阅读:28 留言:0更新日期:2018-11-14 13:22
本申请公开了一种主节点的选举方法,包括:接收分布式集群的各个候选主节点分别发送的选举请求;并在接收到选举请求后均执行获取候选主节点的运行数据以及将候选主节点的运行数据与第一节点当前选定的待定主节点的运行数据进行比较的操作;以便从候选主节点和待定主节点中择优选定为更新后的待定主节点;第一节点默认选定的待定主节点为第一候选主节点;根据最终更新后的待定主节点确定分布式集群的主节点。本申请可有效避免比较次数的增加,解决了选举周期不固定的问题,有效提高了选举效率和系统的服务性能。本申请还公开了一种主节点的选举装置、设备及计算机可读存储介质,同样具有上述有益效果。

【技术实现步骤摘要】
一种主节点的选举方法、装置及设备
本申请涉及计算机
,特别涉及一种主节点的选举方法、装置、设备及计算机可读存储介质。
技术介绍
分布式系统目前在计算、存储、网络服务等领域中得到了广泛应用。在分布式系统或称为分布式集群中,集群的节点作为一个整体而对外提供统一的服务,例如CTDB(ClusterTrivalDatabase,集群键值数据库)服务。其中,主节点是分布式集群的节点中可以管理和配置其他节点的特殊节点。在CTDB服务中,主节点具体可以负责节点故障检测、虚拟IP分配和切换、以及集群服务功能的启停控制等工作。一般地,可以通过比较节点的运行状态,例如选举进程启动时间的早晚,来确定出主节点。现有技术中有许多选举算法,但一般都是将发起选举请求的节点和接收选举请求的节点进行比较,决出最优者作为待定主节点。由于每一个要竞选主节点的节点都会向其他节点发送选举请求,因此,经常会出现同一个节点先后选出了两个不同待定主节点的矛盾,进而不得不令这两个待定主节点进行二次比较,或者重新进行一次选举(同时随机更换各个节点间发送选举请求的次序)。因此,现有技术的选举效率并不高,尤其在一些大规模的分布式集群中,该问题更为明显,选举时长的过多耗费严重影响到了系统的服务性能和运行效率。可见,采用何种主节点的选举方法,以便有效地提高选举效率进而提高系统的服务性能,是本领域技术人员所亟待解决的技术问题。
技术实现思路
本申请的目的在于提供一种主节点的选举方法、装置、设备及计算机可读存储介质,以便有效地提高选举效率进而提高系统的服务性能。为解决上述技术问题,本申请提供一种主节点的选举方法,包括:接收所述分布式集群的各个候选主节点分别发送的选举请求;并在接收到所述选举请求后均执行获取所述候选主节点的运行数据以及将所述候选主节点的运行数据与所述第一节点当前选定的待定主节点的运行数据进行比较的操作;以便从所述候选主节点和所述待定主节点中择优选定为更新后的待定主节点;所述第一节点默认选定的待定主节点为第一候选主节点;根据最终更新后的待定主节点确定所述分布式集群的主节点。可选地,所述根据最终更新后的待定主节点确定所述分布式集群的主节点包括:判断所述最终更新后的待定主节点是否为当前节点;若是,则判定所述当前节点为所述主节点,并向其他所述节点发送主节点确认信息。可选地,在所述判定所述当前节点为所述主节点之后,还包括:将预设数量个满足预设候选条件的其他节点的预设寄存器置为第一标志位,以便将所述预设寄存器被置为所述第一标志位的其他所述节点均作为参加下次主节点选举的所述候选主节点;其中,所述预设寄存器的默认值为第二标志位。可选地,在所述将所述预设寄存器被置为所述第一标志位的其他所述节点作为参加下次主节点选举的所述候选主节点之后,还包括:当所述主节点和所述候选主节点均不在线时,所述分布式集群中的其他所述节点分别将各自的所述预设寄存器置为所述第一标志位,以便参加下次主节点选举。可选地,所述运行数据包括开机时间或者选举进程启动时间;所述从所述候选主节点和所述待定主节点中择优选定为更新后的待定主节点包括:从所述候选主节点和所述待定主节点中,将所述开机时间或者所述选举进程启动时间较早的节点选定为所述更新后的待定主节点。本申请还提供了一种主节点的选举装置,应用于分布式集群中的第一节点,包括:接收模块:用于接收所述分布式集群的各个候选主节点分别发送的选举请求;比较模块:用于在接收到所述选举请求后,获取所述候选主节点的运行数据,并将所述候选主节点的运行数据与所述第一节点当前选定的待定主节点的运行数据进行比较,以便从所述候选主节点和所述待定主节点中择优选定为更新后的待定主节点;所述第一节点默认选定的待定主节点为所述第一节点;确定模块:用于根据最终更新后的待定主节点确定所述分布式集群的主节点。可选地,所述确定模块具体用于:判断所述最终更新后的待定主节点是否为当前节点;若是,则判定所述当前节点为所述主节点,并向其他所述节点发送主节点确认信息。可选地,还包括:配置模块:用于在所述确定模块判定所述当前节点为所述主节点之后,将预设数量个满足预设候选条件的其他节点的预设寄存器置为第一标志位,以便将所述预设寄存器被置为所述第一标志位的其他所述节点均作为参加下次主节点选举的所述候选主节点;其中,所述预设寄存器的默认值为第二标志位。本申请还提供了一种主节点的选举设备,包括:存储器:用于存储计算机程序;处理器:用于执行所述计算机程序以实现如上所述的任一种主节点的选举方法的步骤。本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时用以实现如上所述的任一种主节点的选举方法的步骤。本申请所提供的主节点的选举方法包括:接收所述分布式集群的各个候选主节点分别发送的选举请求;并在接收到所述选举请求后均执行获取所述候选主节点的运行数据以及将所述候选主节点的运行数据与所述第一节点当前选定的待定主节点的运行数据进行比较的操作;以便从所述候选主节点和所述待定主节点中择优选定为更新后的待定主节点;所述第一节点默认选定的待定主节点为第一候选主节点;根据最终更新后的待定主节点确定所述分布式集群的主节点。可见,相比于现有技术,本申请所提供的主节点的选举方法中,由于每当第一节点接收到候选主节点发来的选举请求后,与发送选举请求的候选主节点参与比较竞选的都是第一节点在上一次比较后优选的待定主节点,而并不是第一节点本身。因此,对于节点数量固定的分布式集群来说,每次进行主节点选举时,本申请都可以保障在固定次数的比较之后准确确定出主节点的最优选择,而不会出现先后选择不同的节点作为主节点的情况,可有效避免比较次数的增加,解决了选举周期不固定的问题,有效提高了选举效率和系统的服务性能。本申请所提供的主节点的选举装置、设备及计算机可读存储介质可以实现上述主节点的选举方法,同样具有上述有益效果。附图说明为了更清楚地说明现有技术和本申请实施例中的技术方案,下面将对现有技术和本申请实施例描述中需要使用的附图作简要的介绍。当然,下面有关本申请实施例的附图描述的仅仅是本申请中的一部分实施例,对于本领域普通技术人员来说,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图,所获得的其他附图也属于本申请的保护范围。图1为本申请所提供的一种主节点的选举方法的流程图;图2为本申请所提供的一种主节点的选举装置的结构框图。具体实施方式本申请的核心在于提供一种主节点的选举方法、装置、设备及计算机可读存储介质,以便有效地提高选举效率进而提高系统的服务性能。为了对本申请实施例中的技术方案进行更加清楚、完整地描述,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行介绍。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。请参考图1,图1为本申请所提供的一种主节点的选举方法的流程图,应用于分布式集群中的第一节点,主要包括以下步骤:步骤1:接收分布式集群的各个候选主节点分别发送的选举请求;并在接收到选举请求后均执行获取候选主节点的运行数据以及将候选主节点的运本文档来自技高网...

【技术保护点】
1.一种主节点的选举方法,应用于分布式集群中的第一节点,其特征在于,包括:接收所述分布式集群的各个候选主节点分别发送的选举请求;并在接收到所述选举请求后均执行获取所述候选主节点的运行数据以及将所述候选主节点的运行数据与所述第一节点当前选定的待定主节点的运行数据进行比较的操作;以便从所述候选主节点和所述待定主节点中择优选定为更新后的待定主节点;所述第一节点默认选定的待定主节点为第一候选主节点;根据最终更新后的待定主节点确定所述分布式集群的主节点。

【技术特征摘要】
1.一种主节点的选举方法,应用于分布式集群中的第一节点,其特征在于,包括:接收所述分布式集群的各个候选主节点分别发送的选举请求;并在接收到所述选举请求后均执行获取所述候选主节点的运行数据以及将所述候选主节点的运行数据与所述第一节点当前选定的待定主节点的运行数据进行比较的操作;以便从所述候选主节点和所述待定主节点中择优选定为更新后的待定主节点;所述第一节点默认选定的待定主节点为第一候选主节点;根据最终更新后的待定主节点确定所述分布式集群的主节点。2.根据权利要求1所述的选举方法,其特征在于,所述根据最终更新后的待定主节点确定所述分布式集群的主节点包括:判断所述最终更新后的待定主节点是否为当前节点;若是,则判定所述当前节点为所述主节点,并向其他所述节点发送主节点确认信息。3.根据权利要求2所述的选举方法,其特征在于,在所述判定所述当前节点为所述主节点之后,还包括:将预设数量个满足预设候选条件的其他节点的预设寄存器置为第一标志位,以便将所述预设寄存器被置为所述第一标志位的其他所述节点均作为参加下次主节点选举的所述候选主节点;其中,所述预设寄存器的默认值为第二标志位。4.根据权利要求3所述的选举方法,其特征在于,在所述将所述预设寄存器被置为所述第一标志位的其他所述节点作为参加下次主节点选举的所述候选主节点之后,还包括:当所述主节点和所述候选主节点均不在线时,所述分布式集群中的其他所述节点分别将各自的所述预设寄存器置为所述第一标志位,以便参加下次主节点选举。5.根据权利要求1至4任一项所述的选举方法,其特征在于,所述运行数据包括开机时间或者选举进程启动时间;所述从所述候选主节点和所述待定主节点中择优选定为更新后的待定主节点...

【专利技术属性】
技术研发人员:毕敬强
申请(专利权)人:郑州云海信息技术有限公司
类型:发明
国别省市:河南,41

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1