一种主节点选举方法、装置及存储系统制造方法及图纸

技术编号:14065938 阅读:97 留言:0更新日期:2016-11-28 11:46
本发明专利技术提供了一种主节点选举方法、装置及存储系统,其中,该主节点选举方法包括:复制组中的第一节点与复制组中其他节点建立连接,第一节点判断其他节点中是否存在主节点,若不存在,则第一节点向其他节点发送选举请求消息,其他节点收到选举请求消息后根据选举策略回复选举结果,第一节点根据选举结果确定是否切换为主节点。使得分布式存储系统内复制组中的主节点始终保持为一个,避免了节点之间的数据一致性出现问题。

【技术实现步骤摘要】

本专利技术涉及分布式存储领域,尤其涉及一种主节点选举方法、装置及存储系统
技术介绍
云计算(Cloud Computing)是网格计算(Grid Computing)、分布式计算(Distributed Computing)、并行计算(Parallel Computing)、效用计算(Utility Computing)网络存储(Network Storage Technologies)、虚拟化(Virtualization)、负载均衡(Load Balance)等传统计算机技术和网络技术发展融合的产物。它旨在通过网络把多个成本相对较低的计算实体整合成一个具有强大计算能力的系统。分布式存储是云计算范畴中的一个领域,其作用是提供海量数据的分布式数据存储服务以及高速读写访问的能力。分布式存储系统中的节点都是有状态的,即每个节点上存储的数据可能不同,节点之间无法简单的互相替换。因此,其容灾处理也更为复杂。在主从架构的分布式存储系统中,通常由主节点提供读写服务,并实时向从节点同步数据,在主节点故障时,切换到从节点进行读写,从而达到容灾目的。切换过程要求任何情况下不能产生两个及两个以上的主节点,以避免数据一致性出现问题,同时,要求切换应尽快完成,降低系统故障时间。在传统系统规模和网络环境下,上述问题解决相对容易。通常,系统处于同一交换机内部,即拓扑结构为星型网络,每个节点只有一个网络出口。如果主节点出现网络故障,则从节点和应用服务器均无法连接到该节点。因此,只需要由从节点监测主节点状态,当主节点不可用时,自动切换状态,接管读写请求。相应的,应用服务器也能检测到主节点故障,并转移到从节点进行读写。在分布式存储系统中,系统规模通常要大很多,会存在多个写入者通过不同网络访问数据存储系统的情形,网络连接的可靠性也大大降低,可
能出现网络分区的情形。如附图1所示,当从节点检测到主节点不可达时,主节点可能仍然工作正常。此时,如果从节点自动切换到主用状态,将产生两个及两个以上的主节点,此时应用服务器检测到了多主节点的情况就会停止写入,相关的服务就会中断或者节点之间的数据一致性出现问题。
技术实现思路
为了解决相关技术中节点之间的数据一致性难以保证的问题,本专利技术提供了一种主节点选举方法、装置及存储系统,以至少解决上述问题。根据本专利技术的一个方面,提供了一种主节点选举方法,包括:复制组中的第一节点与复制组中其他节点建立连接;所述第一节点判断所述其他节点中是否存在主节点;若不存在,则所述第一节点向所述其他节点发送选举请求消息,所述选举请求消息用于所述其他节点根据选举策略回复选举结果;所述第一节点根据所述选举结果确定是否切换为主节点。可选地,所述其他节点根据选举策略回复选举结果,包括以下至少之一:所述其他节点接收的所述选举请求消息是预设时间段内第一个请求消息的情况下,所述其他节点回复同意消息,在所述同意消息的数量达到预设阈值的情况下,所述第一节点切换为主节点;所述其他节点根据所述选举请求消息中携带的数据信息以及所述选举策略,回复权重值,所述第一节点的所述权重值总和在所有节点中最大的情况下,所述第一节点切换为主节点;所述其他节点中存在主节点的情况下,所述其他节点回复拒绝消息。可选地,所述第一节点向所述其他节点发送选举请求消息之前,包括:在所述第一节点的优先级符合选举条件的情况下,向所述其他节点发送选举请求消息,其中,所述优先级是预先设定的。可选地,所述复制组中的第一节点与复制组中其他节点建立连接,包括:所述复制组中与所述第一节点建立连接的节点数量达到预设阈值。可选地,所述复制组为至少两个,且均设置在同一个物理服务器上。可选地,所述复制组中的节点数量为至少三个。根据本专利技术的另一个方面,提供了一种主节点选举装置,设置于所述第一节点上,包括:连接模块,用于与复制组中其他节点建立连接;查询
模块,用于判断所述其他节点中是否存在主节点;选举请求模块,用于在所述其他节点中不存在主节点的情况下,向所述其他节点发送选举请求消息,所述选举请求消息用于所述其他节点根据选举策略回复选举结果;切换模块,用于根据所述选举结果确定是否将所述第一节点切换为主节点。可选地,所述切换模块包括以下至少之一:第一触发单元,用于在所述同意消息的数量达到预设阈值的情况下,将所述第一节点切换为主节点,其中,所述同意消息是所述其他节点在接收的所述选举请求消息是预设时间段内第一个请求消息的情况下回复的;第二触发单元,用于所述第一节点的权重值总和在所有节点中最大的情况下,所述第一节点切换为主节点,其中,所述权重值是由所述其他节点根据所述选举请求消息中携带的数据信息以及所述选举策略回复的;其中,所述其他节点中存在主节点的情况下,所述其他节点回复拒绝消息。可选地,所述选举请求模块,包括:优先级单元,用于在所述第一节点的优先级符合选举条件的情况下,触发所述选举请求模块向所述其他节点发送选举请求消息,其中,所述优先级是预先设定的。可选地,所述复制组中的第一节点与复制组中其他节点建立连接,包括:所述复制组中与所述第一节点建立连接的节点数量达到预设阈值。可选地,所述复制组为至少两个,且均设置在同一个物理服务器上。可选地,所述复制组中的节点数量为至少三个。根据本专利技术的再一个方面,提供了一种存储系统,所述存储系统包括至少一个复制组,所述复制组包括:第一节点,包括:连接模块,用于与复制组中其他节点建立连接;查询模块,用于判断所述其他节点中是否存在主节点;选举请求模块,用于在所述其他节点中不存在主节点的情况下,向所述其他节点发送选举请求消息,所述选举请求消息用于所述其他节点根据选举策略回复选举结果;切换模块,用于根据所述选举结果确定是否切换为主节点;其他节点,用于根据所述选举请求消息及选举策略回复选举结果。通过本专利技术,复制组中的第一节点与复制组中其他节点建立连接;所述第一节点判断所述其他节点中是否存在主节点;若不存在,则所述第一节点向所述其他节点发送选举请求消息,所述选举请求消息用于所述其他节点根据选举策略回复选举结果;所述第一节点根据所述选举结果确定是否切换为主节点。使得分布式存储系统内复制组中的主节点始终保持为一个,避免了节点之间的数据一致性出现问题。附图说明此处所说明的附图用来提供对本专利技术的进一步理解,构成本申请的一部分,本专利技术的示意性实施例及其说明用于解释本专利技术,并不构成对本专利技术的不当限定。在附图中:图1是根据本专利技术实施例的分布式系统中网络分区的示意图;图2是根据本专利技术实施例的主节点选举方法流程图一;图3是根据本专利技术实施例的主节点选举方法流程图二;图4是根据本专利技术实施例的主节点选举装置结构框图一;图5是根据本专利技术实施例的主节点选举装置结构框图二;图6是根据本专利技术实施例的存储系统应用示意图。具体实施方式下文中将参考附图并结合实施例来详细说明本专利技术。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。本专利技术实施例提供了一种主节点选举方法,图2是根据本专利技术实施例的主节点选举方法流程图一,如图2所示,该方法包括:S202,复制组中的第一节点与复制组中其他节点建立连接,其中,复制组中的各个节点互相连接在一起并存储相同的数据,该复制组可以通过节点的冗余以本文档来自技高网
...
一种主节点选举方法、装置及存储系统

【技术保护点】
一种主节点选举方法,其特征在于,包括:复制组中的第一节点与复制组中其他节点建立连接;所述第一节点判断所述其他节点中是否存在主节点;若不存在,则所述第一节点向所述其他节点发送选举请求消息,所述选举请求消息用于所述其他节点根据选举策略回复选举结果;所述第一节点根据所述选举结果确定是否切换为主节点。

【技术特征摘要】
1.一种主节点选举方法,其特征在于,包括:复制组中的第一节点与复制组中其他节点建立连接;所述第一节点判断所述其他节点中是否存在主节点;若不存在,则所述第一节点向所述其他节点发送选举请求消息,所述选举请求消息用于所述其他节点根据选举策略回复选举结果;所述第一节点根据所述选举结果确定是否切换为主节点。2.根据权利要求1所述的方法,其特征在于,所述其他节点根据选举策略回复选举结果,包括以下至少之一:所述其他节点接收的所述选举请求消息是预设时间段内第一个请求消息的情况下,所述其他节点回复同意消息,在所述同意消息的数量达到预设阈值的情况下,所述第一节点切换为主节点;所述其他节点根据所述选举请求消息中携带的数据信息以及所述选举策略,回复权重值,所述第一节点的所述权重值总和在所有节点中最大的情况下,所述第一节点切换为主节点;所述其他节点中存在主节点的情况下,所述其他节点回复拒绝消息。3.根据权利要求1所述的方法,其特征在于,所述第一节点向所述其他节点发送选举请求消息之前,包括:在所述第一节点的优先级符合选举条件的情况下,向所述其他节点发送选举请求消息,其中,所述优先级是预先设定的。4.根据权利要求1至3任一项所述的方法,其特征在于,所述复制组中的第一节点与复制组中其他节点建立连接,包括:所述复制组中与所述第一节点建立连接的节点数量达到预设阈值。5.根据权利要求4任一项所述的方法,其特征在于,所述复制组为至少两个,且均设置在同一个物理服务器上。6.根据权利要求5所述的方法,其特征在于,所述复制组中的节点数量为至少三个。7.一种主节点选举装置,设置于所述第一节点上,其特征在于,包括:连接模块,用于与复制组中其他节点建立连接;查询模块,用于判断所述其他节点中是否存在主节点;选举请求模块,用于在所述其他节点中不存在主节点的情况下,向所述其他节点发送选举请求消息,所述选举请求消息用于所述其他节点根据...

【专利技术属性】
技术研发人员:陈正华郭斌陈典强韩银俊
申请(专利权)人:中兴通讯股份有限公司
类型:发明
国别省市:广东;44

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

1