利索能及
我要发布
收藏
专利号: 2016111876009
申请人: 东软集团股份有限公司
专利类型:发明专利
专利状态:已下证
更新日期:2025-03-03
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.一种服务集群,其特征在于,所述服务集群包括:多个主名字节点和至少一个备用名字节点,每个名字节点维护有主名字节点列表、备用名字节点列表以及故障名字节点列表;

所述备用名字节点,按预设的周期向各个主名字节点发送测试信息以测试所述各个主名字节点是否正常工作,当一主名字节点发生故障时,将所述主名字节点列表中第n个正常工作的主名字节点作为目标主名字节点,向所述目标主名字节点发送选主申请,所述选主申请用于申请自身成为主名字节点,其中,n的取值为1…N,N为所述主名字节点列表中正常工作的主名字节点的个数;

所述目标主名字节点,接收到所述备用名字节点发送的选主申请之后,触发各个主名字节点不再接收客户端的数据操作请求,将所述备用名字节点添加至自身的主名字节点列表中,并将所述备用名字节点从自身的备用名字节点列表中删除,将所述发生故障的主名字节点从所述自身的主名字节点列表中删除,并将所述发生故障的主名字节点添加至自身的故障名字节点列表中,将所述主名字节点发生故障以及所述备用名字节点成为主名字节点的信息同步给所述服务集群中的其它名字节点,以使所述其它名字节点基于所述信息更新自身的列表。

2.根据权利要求1所述服务集群,其特征在于,每个主名字节点还维护有元数据;

所述目标主名字节点,在将所述备用名字节点添加至所述自身的主名字节点列表中之后,将自身维护的元数据发送给成为主名字节点的所述备用名字节点。

3.根据权利要求2所述的服务集群,其特征在于,所述目标主名字节点,在所述服务集群中其它名字节点更新完列表,并且将所述自身维护的元数据发送给成为主名字节点的所述备用名字节点之后,触发所述服务集群中的各个主名字节点接收客户端的数据操作请求。

4.根据权利要求1所述的服务集群,其特征在于,所述备用名字节点为多个;

所述目标主名字节点,在多个备用名字节点同时发送选主申请时,将第一个接收到的选主申请所对应的备用名字节点作为主名字节点添加至所述自身的主名字节点列表中。

5.根据权利要求1所述的服务集群,其特征在于,每个主名字节点,周期性的向所述服务集群中的各个备用名字节点发送测试信息以测试各个备用名字节点是否正常工作,当目标备用名字节点发生故障时,将所述目标备用名字节点从自身的备用名字节点列表中删除,并将所述目标备用名字节点添加至自身的故障名字节点列表中,同时,将所述目标备用名字节点发生故障的信息同步给所述服务集群中的其它名字节点。

6.根据权利要求1所述的服务集群,其特征在于,所述服务集群提供扩展名字节点的接口,所述服务集群通过所述接口接收新增名字节点的申请;

所述目标主名字节点,接收所述新增名字节点的申请,将所述新增的名字节点添加至所述自身的备用名字节点列表中,将新增的名字节点成为备用名字节点的信息同步给所述服务集群中的其它名字节点;

或者,

所述目标主名字节点,接收所述新增名字节点的申请,向新增的名字节点发送测试信息,以测试所述新增的名字节点是否正常工作,以及,当所述新增的名字节点正常工作时,将所述新增的名字节点添加至所述自身的备用名字节点列表中,将新增的名字节点成为备用名字节点的信息同步给所述服务集群中的其它名字节点。

7.根据权利要求1或5所述的服务集群,其特征在于,所述目标主名字节点,按预设时间间隔向故障名字节点列表中的故障名字节点发送测试信息,以测试所述故障名字节点是否恢复正常,当所述故障名字节点恢复正常时,将恢复正常的故障名字节点从所述自身的故障名字列表中删除,并将所述恢复正常的故障名字节点添加至所述自身的备用名字节点列表中,将所述故障名字节点恢复正常的信息同步给所述服务集群中的其它名字节点。

8.一种服务集群,其特征在于,所述服务集群包括:至少一个主名字节点和多个备用名字节点,每个名字节点均存储有元数据,每个名字节点均具有节点信息,所述节点信息包括节点标识值、元数据标识值和选举值;

所述多个备用名字节点中的第一备用名字节点,按预设的周期向所述至少一个主名字节点发送测试信息以测试所述至少一个主名字节点是否正常工作,当至少一主名字节点发生故障时,向其它备用名字节点发送自身的节点信息以及选举自身成为主名字节点的信息;

所述其它备用名字节点中的第二备用名字节点,在所述第一备用名字节点的选举值大于自身的选举值时,如果所述第一备用名字节点的元数据标识值大于自身的元数据标识值,则将选举所述第一备用名字节点成为主名字节点的信息作为选举结果发送给其它备用名字节点,如果所述第一备用名字节点的元数据标识值等于自身的元数据标识,则在所述第一备用名字节点的节点标识值大于或者小于自身的节点标识值时,将选举第一备用名字节点成为主名字节点的选举结果发送给其它备用名字节点;

所述第一备用名字节点,在接收到的选举结果表明大于预设数量的名字节点选举自身成为主名字节点时,将自身设置为主名字节点。

9.根据权利要求8所述的服务集群,其特征在于,所述第二备用名字节点,在所述第一备用名字节点的选举值等于自身的选举值时,判断自身的元数据标识值是否大于所述第一备用名字节点的元数据标识值,如果是,则将选举值加1,并将选举自身成为主名字节点的信息作为选举结果发送给其它备用名字节点。

10.根据权利要求9所述的服务集群,其特征在于,所述第二备用名字节点,在所述第一备用名字节点的选举值小于自身的选举值时,将自身的节点信息发送给所述第一备用名字节点。