一种管理集群的方法、装置和服务器集群与流程

未命名 09-24 阅读:57 评论:0


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.图1是本发明一个实施例提供的一种管理集群的方法的流程示意图;
37.图2a是本发明一个实施例提供的一种集群状态的结构示意图;
38.图2b是本发明一个实施例提供的一种集群分裂状态的结构示意图;
39.图3是本发明一个实施例提供的一种管理集群的装置的结构示意图;
40.图4是本发明一个实施例提供的一种服务器集群的结构示意图;
41.图5是本发明实施例可以应用于其中的示例性系统架构图;
42.图6是适于用来实现本发明实施例的终端设备或服务器的计算机系统的结构示意图。
具体实施方式
43.以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
44.互联式分布式服务集群是指在普通分布式服务集群的基础上,集群中的每一台服务器均可以通过通讯协议(例如:通过socket或其他通讯层协议)和集群中其他各个服务器保持长连接,以使集群中的各个服务器处于互通状态,从而根据业务逻辑处理发送方的数据或请求;当请求发送到集群中的一个服务器时可以通过相应的逻辑运算筛选出处理该请求的服务器,通过服务器之间的互联通讯将数据发送到对应的服务器,对应的服务器接收到其他节点转发的数据后就会进行后续的处理,如发送给连接到该服务器关联的客户端,该集群实现方式广泛应用于多种服务端框架中;在这种实现中,集群中通常设置有一个主
服务器,除主服务器以外的其他服务器为从服务器,主服务器可以用于维护集群中各个服务器的信息(例如:服务器标识、ip地址等、服务器连接状态等),还用于同步服务器之间更新的连接状态给各个从服务器。
45.现有的确定主服务器的方法一般是在集群初始化的阶段选举得到,当主服务器出现异常时,通常集群会重新通过特定的选举策略选择出新的主服务器以保持整个集群的可用性,由此可见,在现有方法中,集群的运行依赖于主服务器的选举结果,如果在集群初始化或集群运行过程中出现网络异常的情况,可能造成集群出现分裂,而集群分裂后无法正常提供预期的服务;如果集群分裂问题发生在集群初始化过程中,例如:主服务器的选举过程中,在确定主服务器之后,集群中一个或多个服务器与主服务器之间存在通讯异常(连接失败),由于主服务器的信息已经发送到集群的其他服务器上,其他服务器需要等待主服务器恢复正常后提供服务;同时主服务器也需要等待与连接失败的服务器重新建立通讯,在这种情况下如果连接失败持续的时长超过设定阈值;可能造成正常的集群分裂为两个或多个子集群,子集群无法提供完整集群的服务吞吐能力,且子集群中的服务器的数据状态无法跟其他子集群互通(此时子集群中每一个服务器只在子集群的范围内是连接成功的互联状态的),基于这种情况,现有的方法通常需要暂停集群服务,利用人工操作重新执行集群初始化。
46.如果集群分裂发生集群运行过程中,例如集群中的多个服务器位于不同的地理位置(例如:位于不同城市的不同机房),当多个服务器之间的通讯出现连接失败的情况,可能造成集群分裂为两个或多个子集群;在这种情况下集群无法提供服务,现有的方法通常需要停止服务,利用人工操作在处理异常数据后重启集群。
47.由此可见,现有的处理集群异常(例如集群分裂)的方法存在管理集群的效率较低、自动化程度较低的问题,导致集群容错性较低的问题。
48.有鉴于此,如图1所示,本发明实施例提供了一种管理集群的方法,该方法可以包括以下步骤:
49.步骤s101:当集群分裂为第一子集群时,利用设定规则确定所述第一子集群中唯一的第一主服务器;其中,所述第一子集群中还包含除所述第一主服务器以外的从服务器。
50.具体地,集群包含多个服务器,在任意两个服务器均处于已连接的状态时,确定集群为可以提供设定服务的正常工作状态;图2a示出的示例集群包含5个服务器,服务器1-服务器5,且任意两个服务器为已连接的连接状态,则图2a示出的示例集群处于可以提供设定服务的状态,在处于正常工作状态状态的集群中包含唯一的主服务器,以及一个或多个从服务器。但是在集群中的服务器之间出现网络异常或者服务器异常时,往往导致集群分裂为多个子集群。
51.进一步地,确定集群分裂出的子集群的方法包括如下几种:
52.第一种方法:所述集群中的任意一个服务器获取其存储的集群服务器状态信息;在所述集群服务器状态信息指示其与所述集群包含的多个第一服务器的连接状态为已连接,并且与所述集群包含的多个第二服务器的连接状态为未连接的情况下,确定所述集群分裂,以及确定所述服务器归属于分裂后的子集群中。具体地,获取集群中的任意一个服务器所存储的集群服务器状态信息;在所述集群服务器状态信息指示其与所述集群包含的多个第一服务器的连接状态为已连接,并且与所述集群包含的多个第二服务器的连接状态为
未连接的情况下,确定所述服务器归属于分裂后的子集群中。具体地,对比于图2a示例的集群可用状态,图2b示出了集群的分裂状态,如图2b所示,集群中包含的5个服务器分裂为两个子集群,子集群1包含服务器1、服务器2、服务器4;子集群2包含服务器3、服务器5。针对集群中的任一服务器,例如服务器3,其集群服务器状态信息指示服务器3与服务器5的连接状态为“已连接”,而与服务器1、服务器2、服务器4的连接状态均为“未连接”;则确定服务器3归属于分裂后的子集群中。
53.第二种方法:确定所述集群分裂为子集群,还包括:所述集群中的任意一个服务器获取其存储的集群服务器状态信息;在所述集群服务器状态信息中指示所述服务器与所述集群包含的所述多个第二服务器的连接状态指示未连接的时长超过设定时间阈值的情况下,确定所述集群分裂,以及确定所述服务器归属于所述集群分裂成的子集群。。具体地,例如:如图2b中所示的服务器3,其集群服务器状态信息指示服务器3与服务器1、服务器2、服务器4(即第二服务器)的连接状态均为“未连接”;并且指示未连接的时长超过设定时间阈值(例如:1分钟、5分钟、10分钟)的情况下,则确定服务器3归属于分裂后的子集群中。可以理解的是,在集群初始化的阶段,由于各个服务器的启动时间存在先后,因此可能在较短时间内存在与多个服务器的连接状态均为“未连接”的情况,则可以进一步根据业务场景设置的设定时间阈值判断是否存在集群分裂出的子集群。
54.第三种方法:判断服务器的特征信息是否指示所述服务器为所述集群分裂出的任意一个子集群重新确定出的主服务器,包括:确定所述服务器所属集群为正常的可用状态;在监听到所述服务器的服务器特征信息对应的特征值(用于指示服务器类型)由从服务器变更为主服务器的情况下,确定所述服务器为所述集群分裂出的任意一个子集群重新确定出的主服务器。具体地,如图2b所示的示例中,在确定所述服务器所属集群为正常状态的情况下,服务器3通过获取集群服务器状态信息得到服务器的特征信息(例如服务器类型)的特征值为主服务器,并且通过监听得到服务器特征信息包括的用于指示服务器类型的特征值由“从服务器”的特征值变更为“主服务器”的特征值,可以确定服务器3为集群分裂出的任意一个子集群重新确定出的主服务器;在确定为子集群的情况下,基于所述子集群,执行利用设定规则确定子集群中的第一主服务器的步骤。
55.进一步地,利用设定规则确定所述第一子集群中唯一的第一主服务器;具体地,为分裂出的子集群确定主服务器(即第一主服务器);进一步地,所述子集群中包含所述第一主服务器以及除所述第一主服务器以外的从服务器;在确定第一主服务器后,可以利用第一主服务器执行针对子集群的从服务器的服务器状态信息收集、触发子集群合并等操作。
56.具体地,所述设定规则包括:主服务器的启动时间先于集群中的其他服务器;和/或,主服务器的设备指标高于集群中的其他服务器;利用设定规则确定所述第一子集群中唯一的第一主服务器,包括:获取所述第一子集群中包含的各个服务器的启动时间,将启动时间在先的服务器确定为所述第一子集群中唯一的所述第一主服务器;和/或,获取所述第一子集群中包含的各个服务器的设备指标,将设备指标最高的服务器确定为所述第一子集群中唯一的所述第一主服务器;将确定出唯一的所述第一主服务器的特征信息对应的特征值设置为主服务器。
57.以下举例说明所述设定规则;例如集群a中包含5个服务器,服务器1-服务器5;在集群初始化过程中,服务器1启动,并向集群中其他服务器:服务器2-服务器5发送建立连接
请求;示例性地,服务器5在服务器1之后在服务器2-服务器4之前启动,则服务器1与服务器5的连接状态为已连接,由于服务器1的启动时间先于服务器5,则确定服务器1为主服务器,即主服务器的启动时间先于集群中的其他服务器;和/或,获取集群a中包含的5个服务器的设备指标,其中,设备指标包括服务器的性能指标、生产日期等信息中的任意一种或多种,根据设备指标最高的服务器确定为主服务器,并将确定出的所述第一主服务器的特征信息设置为主服务器;可以理解的是,为集群或分裂后的子集群确定主服务的设定规则为一致。
58.现有的确定主服务器的方法为在集群初始化的过程中采用“投票机制”确定,在现有方法中,集群中的各个服务器需要被设置有投票标识,在各个服务器启动过程利用投票标识给自身、以及连接成功的其他服务器投票;按照时间顺序,设置在后发送的投票标识大于在先发送的投票标识,当服务器关联的票数大于服务器总量半数的情况下,确定该服务器为主服务器;由此可见,当服务器数量较大时,现有确定主服务器的方法存在效率较低的问题、出现异常概率较高的问题,例如通过选举机制确定主服务器后,若存在多个其他服务器与主服务器连接失败的情况,处于连接失败的其他服务器需要等待与主服务器之间的连接通讯恢复,等待的操作可能阻塞服务器后续多种初始化操作(例如:加载关联组件、发起注册等),如果在重试次数阈值内连接通讯恢复,可以继续后续的初始化操作,如果重试的次数超出重试次数阈值,则造成集群的初始化失败,使集群处于不可用的异常状态(即集群无法提供设定范围的服务)。
59.由此可见,对比于利用“投票机制”确定主服务器的方法,本发明的确定唯一主服务器的方法提高了确定主服务器的效率,降低了集群出现异常的概率,从而提高了集群的容错性。
60.可以以理解的是,分裂后的子集群中包含两个或两个以上连接成功(即已连接)的服务器时,根据本发明确定主服务器的设定规则确定主服务器,即为所述集群分裂出的任意一个子集群重新确定出唯一的主服务器;可以理解的是,若子集群包含的服务器数量小于2,则可以不确定主服务器。
61.步骤s102:第一子集群中的各个服务器根据存储的所述集群服务器状态信息确定所述集群中与其连接状态为未连接的目标服务器,并发起与所述目标服务器的连接请求;其中,第二子集群包含一个或多个所述目标服务器;其中,所述第一子集群中的各个服务器均设置有集群服务器状态信息,所述集群服务器状态信息指示其与所述集群中的其他服务器的连接状态。
62.具体地,所述第一子集群中的各个服务器均设置有集群服务器状态信息,所述集群服务器状态信息指示其与所述集群中的其他服务器的连接状态。例如如图2a所示的示例中,集群包含5个服务器,服务器1-服务器5,服务器1存储的集群服务器状态信息可以包括:服务器1状态:已连接、服务器2状态:已连接、服务器3状态:已连接、服务器4状态:已连接、服务器5状态:已连接;通过集群服务器状态信息,各个服务器可以获取服务器与除自身以外的其他服务器连接的状态,从而确定该服务器的运行状态,从而提高了服务器监控异常的效率和实时性。
63.进一步地,所述第一子集群中的各个服务器根据存储的所述集群服务器状态信息确定所述集群中与其连接状态为未连接的目标服务器,并发起与所述目标服务器的连接请求。即,分裂出的子集群中各个服务器根据自身存储的集群服务器状态信息确定与子集群
内其他服务器的连接状态,对处于未连接状态的目标服务器发起连接请求;例如:针对图2b中的服务器3,其集群服务器状态信息指示服务器3与服务器5的连接状态为“已连接”,而与服务器1、服务器2、服务器4的连接状态均为“未连接”;则服务器1、服务器2、服务器4即为对应于服务器3的未连接的一个或多个目标服务器,例如:服务器1、服务器2、服务器4归属于第二子集群,即,第二子集群包含一个或多个所述目标服务器,进一步地,服务器3向服务器1、服务器2、服务器4分别发起连接请求;具体地,可以利用服务器的轮询进程根据设定间隔时间发起连接请求,可以理解的是,集群中的每一个服务器(包括唯一的主服务器)均可以利用进程根据设定间隔时间发起对未连接的一个或多个服务器的连接操作;即,所述集群中的任意一个服务器,在所述服务器存储的集群服务器状态信息指示所述服务器与任意一个或多个其他服务器的连接状态为未连接的情况下,所述服务器按照设定时间间隔发送与未连接的一个或多个其他服务器的连接请求;并根据连接请求返回的连接状态,更新所述服务器的所述集群服务器状态信息。由此可见,通过集群中的每一个服务器利用轮询进程根据设定间隔时间对未连接的服务器发起连接操作,提高了集群的容错能力。
64.进一步地,所述第一子集群中的各个服务器根据存储的所述集群服务器状态信息确定所述集群中与其连接状态为未连接的目标服务器,并发起与所述目标服务器的连接请求之后,所述第一子集群中的各个服务器获取所述连接请求返回的连接状态,在所述第一子集群中的任一服务器的连接状态为从未连接更新为已连接的情况下,所述第一子集群中连接状态更新的服务器从已连接的所述第二子集群中的服务器获取所述第二子集群的集群状态信息;并将所述第二子集群的集群状态信息同步给所述第一子集群包含的各个服务器;其中,所述第二子集群的集群状态信息指示所述第二子集群包含的第二主服务器以及各个从服务器。仍以图2b的示意图为例,假设服务器3(即第一子集群中的任一服务器)与服务器2(即相对于服务器3的目标服务器)的连接状态从“未连接”更新为“已连接”的情况下,代表第一子集群服务器和第二子集群之间的通信恢复为正常状态,则利用服务器3从服务器2包含的集群状态信息中获取第二子集群的服务器状态(包括唯一的主服务器:服务器1、以及从服务器:服务器2、服务器4);并将第二子集群的集群状态信息同步给所述第一子集群包含的各个服务器,例如第一子集群包括服务器3和服务器5,则服务器3将第二子集群的集群状态信息同步给服务器5。即,所述第一子集群包含的各个服务器根据获取的所述第二子集群的集群状态信息,确定所述第二子集群包含的各个服务器。
65.步骤s103:当所述第一主服务器确定所述第一子集群包含的各个所述从服务器与所述第二子集群中包含的各个服务器的连接状态均为已连接时,所述第一主服务器触发将所述第一子集群与所述第二子集群合并的操作。
66.具体地,第一服务器确定所述第一子集群包含的各个所述从服务器与所述第二子集群中包含的各个服务器的连接状态均为已连接,包括:当所述第一子集群包含的所述从服务器与所述第二子集群中包含的各个服务器的连接状态更新时,所述从服务器向所述第一主服务器发送更新的集群服务器状态信息的请求;所述请求包含更新后的连接状态;所述第一主服务器根据接收到的各个从服务器对应的所述更新后的连接状态,确定所述第一子集群包含的各个所述从服务器与所述第二子集群中包含的各个服务器的连接状态是否均为已连接。具体地,仍以图2b的示意图为例,第一子集群包含服务器3和服务器5,服务器3为第一主服务器,在服务器5与第二子集群(包括服务器1、服务器2、服务器4)的各个服务器
从未连接到已连接(即连接状态更新)时,服务器5想服务器1发送更新的集群服务器状态信息,服务器3(第一主服务器)根据接收的来自从服务器的更新的集群服务器状态信息,判断各个从服务器与所述第二子集群中包含的各个服务器的连接状态是否均为已连接;如果是,则执行下一步集群合并的操作。
67.进一步地,所述第一子集群的所述第一主服务器根据获取的所述第二子集群的所述集群状态信息,确定所述第二子集群的所述集群状态信息所指示的所述第二子集群的第二主服务器;所述第一主服务器触发将所述第一子集群与第二子集群合并的操作,包括:所述第一主服务器向所述第二主服务器发送合并消息,以触发所述第一子集群与第二子集群的合并操作。具体地,第一子集群的第一主服务器(例如服务器3)可以根据获取的第二子集群的集群状态信息确定第二子集群的第二主服务器(例如服务器1);在确定之后,第一主服务器(服务器3)触发将所述第一子集群与第二子集群合并的操作,触发的方法为:第一主服务器(服务器3)向所述第二主服务器(服务器1)发送合并消息,以触发所述第一子集群与第二子集群的合并操作。具体地,第一主服务器可以通过存储的集群服务器信息获取集群中除所述第一主服务器以外的其他主服务器的信息,例如获取其他主服务器的服务器标识、ip地址等;进一步地,发送合并消息,以通过合并消息通知其他主服务器合并分裂出的子集群,得到完整的处于可用状态的集群,其中合并消息可以包含预先设定的指示“合并”的数据加以区分。即,发送合并消息给所述其他主服务器以触发针对子集群的合并操作。
68.由此可见,通过本发明的实施例可以自动合并子集群以恢复集群的可用状态尤其是在集群中服务器数量较大时,本发明的方法可以在较大程度上降低集群的服务器运维的人工成本、降低发生集群异常时对应用的影响、提高了管理集群的效率。
69.步骤s104:利用所述设定规则重新确定所述第一子集群与所述第二子集群合并后的集群中唯一的主服务器。
70.具体地,关于子集群合并的描述与步骤s103的描述一致,在此不再赘述。
71.进一步地,利用设定规则从合并后的集群中重新确定新的唯一的主服务器;可以理解的是,集群或子集群均包含一个主服务器以及一个或多个从服务器,以对集群进行管理;利用所述设定规则所述从合并后的集群中重新确定唯一的主服务器,用所述设定规则重新确定所述第一子集群与所述第二子集群合并后的集群中唯一的主服务器,包括:在确定出的所述合并后的集群新的唯一的主服务器与子集群合并之前的所述第一子集群的所述第一主服务器为不同服务器的情况下,将所述第一主服务器的特征信息对应的特征值从主服务器更新为从服务器。具体地,关于设定规则的描述与步骤s101的描述一致,在此不再赘述;在子集群合并之后,根据设定规则判断子集群包含的第一主服务器是否与合并后的集群的主服务器为不同服务器,如果不是,则将第一主服务器的服务器特征信息对应的特征值更新为从服务器,从而达到一个集群(或子集群)仅包含一个主服务器(即唯一的主服务器)的目的。
72.进一步地,所述合并后的集群包含的新主服务器将所述合并后的集群对应的集群服务器状态信息同步至所述合并后的集群包含的各个从服务器。例如,如图2b所示的两个子集群在合并为图2a所示的合并后的集群后,利用设定规则确定出的新的唯一的主服务器为服务器1(服务器3变更为从服务器),则利用服务器1向合并后的集群中的各个从服务器集群服务器状态信息,以使整个合并后的集群的每一个服务器包含有相同的集群服务器状
态信息,提高了管理集群的实时性和效率。
73.如图3所示,本发明实施例提供了一种管理集群的装置300,应用于所述集群中的各个服务器,包括:确定子集群模块301、建立连接模块302和合并集群模块303;其中,
74.所述确定子集群模块301,用于当集群分裂为第一子集群时,利用设定规则确定所述第一子集群中唯一的第一主服务器;其中,所述第一子集群中还包含除所述第一主服务器以外的从服务器;
75.所述建立连接模块302,用于确定所述第一主服务器或所述从服务器设置有集群服务器状态信息,所述集群服务器状态信息指示其与所述集群中的其他服务器的连接状态;所述第一主服务器或所述从服务器根据存储的所述集群服务器状态信息确定所述集群中与其连接状态为未连接的目标服务器,并发起与所述目标服务器的连接请求;其中,第二子集群包含一个或多个目标服务器;
76.所述合并集群模块302,用于当所述第一主服务器确定所述第一子集群包含的各个所述从服务器与所述第二子集群中包含的各个服务器的连接状态均为已连接时,所述第一主服务器触发将所述第一子集群与第二子集群合并的操作;利用所述设定规则重新确定所述第一子集群与所述第二子集群合并后的集群中唯一的主服务器。
77.如图4所示,本发明实施例提供了一种服务器集群400,包括多个服务器,其中,每一个服务器设置有所述管理集群的装置300。
78.本发明实施例还提供了一种管理集群的电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现上述任一实施例提供的方法。
79.本发明实施例还提供了一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现上述任一实施例提供的方法。
80.图5示出了可以应用本发明实施例的管理集群的方法或管理集群的装置的示例性系统架构500。
81.如图5所示,系统架构500可以包括终端设备501、502、503,网络504和服务器505。网络504用以在终端设备501、502、503和服务器505之间提供通信链路的介质。网络504可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
82.用户可以使用终端设备501、502、503通过网络504与服务器505交互,以接收或发送消息等。终端设备501、502、503上可以安装有各种客户端应用,例如电子商城客户端应用、网页浏览器应用、搜索类应用、即时通信工具等。
83.终端设备501、502、503可以是具有显示屏并且支持各种客户端应用的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
84.服务器505可以是提供各种服务的服务器,例如对用户利用终端设备501、502、503所使用的客户端应用提供业务和数据支持的集群中包含的任意服务器。服务器可以对接收到的业务请求进行处理,并将业务对应的数据反馈给终端设备。
85.需要说明的是,本发明实施例所提供的管理集群的方法一般由各个服务器505执行,相应地,管理集群的装置一般设置于服务器505中。
86.应该理解,图5中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
87.下面参考图6,其示出了适于用来实现本发明实施例的终端设备的计算机系统600的结构示意图。图6示出的终端设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
88.如图6所示,计算机系统600包括中央处理单元(cpu)601,其可以根据存储在只读存储器(rom)602中的程序或者从存储部分608加载到随机访问存储器(ram)603中的程序而执行各种适当的动作和处理。在ram 603中,还存储有系统600操作所需的各种程序和数据。cpu 601、rom 602以及ram 603通过总线604彼此相连。输入/输出(i/o)接口605也连接至总线604。
89.以下部件连接至i/o接口605:包括键盘、鼠标等的输入部分606;包括诸如阴极射线管(crt)、液晶显示器(lcd)等以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如lan卡、调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至i/o接口605。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装入存储部分608。
90.特别地,根据本发明公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。在该计算机程序被中央处理单元(cpu)601执行时,执行本发明的系统中限定的上述功能。
91.需要说明的是,本发明所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、rf等等,或者上述的任意合适的组合。
92.附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所
标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
93.描述于本发明实施例中所涉及到的模块和/或单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块和/或单元也可以设置在处理器中,例如,可以描述为:一种处理器包括确定子集群模块、确定状态模块和合并集群模块;其中,这些模块的名称在某种情况下并不构成对该模块本身的限定,例如,确定子集群模块还可以被描述为“确定集群分裂出的子集群的模块”。
94.作为另一方面,本发明还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该设备包括:当集群分裂为第一子集群时,利用设定规则确定所述第一子集群中唯一的第一主服务器;其中,所述第一子集群中还包含除所述第一主服务器以外的从服务器;所述第一子集群中的各个服务器均设置有集群服务器状态信息,所述集群服务器状态信息指示其与所述集群中的其他服务器的连接状态;所述第一子集群中的各个服务器根据存储的所述集群服务器状态信息确定所述集群中与其连接状态为未连接的目标服务器,并发起与所述目标服务器的连接请求;其中,第二子集群包含一个或多个所述目标服务器;当所述第一主服务器确定所述第一子集群包含的各个所述从服务器与所述第二子集群中包含的各个服务器的连接状态均为已连接时,所述第一主服务器触发将所述第一子集群与所述第二子集群合并的操作;利用所述设定规则重新确定所述第一子集群与所述第二子集群合并后的集群中唯一的主服务器。
95.本发明的实施例能够在集群分裂为第一子集群后,确定第一子集群中的第一主服务器;子集群中的各个服务器根据集群服务器状态信息确定集群中与其连接状态为未连接的目标服务器,并发起与目标服务器的连接请求;根据连接请求连接状态,第一服务器在确定第一子集群包含的各个从服务器与第二子集群中包含的各个服务器的连接状态均为已连接后,触发合并所述第一子集群与第二子集群操作。通过集群中各个服务器的判断逻辑自动合并集群分裂出的子集群,提高了管理集群的效率,提高了处理集群异常的效率,提高了所管理的集群的容错性。
96.上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。

技术特征:
1.一种管理集群的方法,其特征在于,包括:当集群分裂为第一子集群时,利用设定规则确定所述第一子集群中唯一的第一主服务器;其中,所述第一子集群中还包含除所述第一主服务器以外的从服务器;所述第一子集群中的各个服务器均设置有集群服务器状态信息,所述集群服务器状态信息指示其与所述集群中的其他服务器的连接状态;所述第一子集群中的各个服务器根据存储的所述集群服务器状态信息确定所述集群中与其连接状态为未连接的目标服务器,并发起与所述目标服务器的连接请求;其中,第二子集群包含一个或多个所述目标服务器;当所述第一主服务器确定所述第一子集群包含的各个所述从服务器与所述第二子集群中包含的各个服务器的连接状态均为已连接时,所述第一主服务器触发将所述第一子集群与所述第二子集群合并的操作;利用所述设定规则重新确定所述第一子集群与所述第二子集群合并后的集群中唯一的主服务器。2.根据权利要求1所述的管理集群的方法,其特征在于,确定所述集群分裂为子集群,包括:所述集群中的任意一个服务器获取其存储的集群服务器状态信息;在所述集群服务器状态信息指示其与所述集群包含的多个第一服务器的连接状态为已连接,并且与所述集群包含的多个第二服务器的连接状态为未连接的情况下,确定所述集群分裂,以及确定所述服务器归属于分裂后的子集群中。3.根据权利要求2所述的方法,其特征在于,确定所述集群分裂为子集群,还包括:所述集群中的任意一个服务器获取其存储的集群服务器状态信息;在所述集群服务器状态信息中指示所述服务器与所述集群包含的所述多个第二服务器的连接状态指示未连接的时长超过设定时间阈值的情况下,确定所述集群分裂,以及确定所述服务器归属于所述集群分裂成的子集群。4.根据权利要求1所述的管理集群的方法,其特征在于,所述设定规则包括:主服务器的启动时间先于集群中的其他服务器;和/或,主服务器的设备指标高于集群中的其他服务器;利用设定规则确定所述第一子集群中唯一的第一主服务器,包括:获取所述第一子集群中包含的各个服务器的启动时间,将启动时间在先的服务器确定为所述第一子集群中唯一的所述第一主服务器;和/或,获取所述第一子集群中包含的各个服务器的设备指标,将设备指标最高的服务器确定为所述第一子集群中唯一的所述第一主服务器;将确定出唯一的所述第一主服务器的特征信息对应的特征值设置为主服务器。5.根据权利要求1所述的管理集群的方法,其特征在于,所述第一子集群中的各个服务器根据存储的所述集群服务器状态信息确定所述集群中与其连接状态为未连接的目标服务器,并发起与所述目标服务器的连接请求之后,所述第一子集群中的各个服务器获取所述连接请求返回的连接状态,
在所述第一子集群中的任一服务器的连接状态为从未连接更新为已连接的情况下,所述第一子集群中连接状态更新的服务器从已连接的所述第二子集群中的服务器获取所述第二子集群的集群状态信息;并将所述第二子集群的集群状态信息同步给所述第一子集群包含的各个服务器;其中,所述第二子集群的集群状态信息指示所述第二子集群包含的第二主服务器以及各个从服务器。6.根据权利要求5所述的方法,其特征在于,所述第一子集群包含的各个服务器根据获取的所述第二子集群的集群状态信息,确定所述第二子集群包含的各个服务器;所述第一服务器确定所述第一子集群包含的各个所述从服务器与所述第二子集群中包含的各个服务器的连接状态均为已连接,包括:当所述第一子集群包含的所述从服务器与所述第二子集群中包含的各个服务器的连接状态更新时,所述从服务器向所述第一主服务器发送更新的集群服务器状态信息的请求;所述请求包含更新后的连接状态;所述第一主服务器根据接收到的各个从服务器对应的所述更新后的连接状态,确定所述第一子集群包含的各个所述从服务器与所述第二子集群中包含的各个服务器的连接状态是否均为已连接。7.根据权利要求1所述的方法,其特征在于,进一步包括:所述集群中的任意一个服务器,在所述服务器存储的集群服务器状态信息指示所述服务器与任意一个或多个其他服务器的连接状态为未连接的情况下,所述服务器按照设定时间间隔发送与未连接的一个或多个其他服务器的连接请求;并根据连接请求返回的连接状态,更新所述服务器的所述集群服务器状态信息。8.根据权利要求5所述的方法,其特征在于,所述第一子集群的所述第一主服务器根据获取的所述第二子集群的所述集群状态信息,确定所述第二子集群的所述集群状态信息所指示的所述第二子集群的第二主服务器;所述第一主服务器触发将所述第一子集群与第二子集群合并的操作,包括:所述第一主服务器向所述第二主服务器发送合并消息,以触发所述第一子集群与第二子集群的合并操作。9.根据权利要求1所述的方法,其特征在于,利用所述设定规则重新确定所述第一子集群与所述第二子集群合并后的集群中唯一的主服务器,包括:在确定出的所述合并后的集群新的唯一的主服务器与子集群合并之前的所述第一子集群的所述第一主服务器为不同服务器的情况下,将所述第一主服务器的特征信息对应的特征值从主服务器更新为从服务器。10.根据权利要求9所述的方法,其特征在于,进一步包括:所述合并后的集群包含的新主服务器将所述合并后的集群对应的集群服务器状态信息同步至所述合并后的集群包含的各个从服务器。11.一种管理集群的装置,其特征在于,应用于所述集群中的各个服务器,包括:确定子集群模块、建立连接模块和合并集群模块;其中,所述确定子集群模块,用于当集群分裂为第一子集群时,利用设定规则确定所述第一
子集群中唯一的第一主服务器;其中,所述第一子集群中还包含除所述第一主服务器以外的从服务器;所述建立连接模块,用于确定所述第一主服务器或所述从服务器设置有集群服务器状态信息,所述集群服务器状态信息指示其与所述集群中的其他服务器的连接状态;所述第一主服务器或所述从服务器根据存储的所述集群服务器状态信息确定所述集群中与其连接状态为未连接的目标服务器,并发起与所述目标服务器的连接请求;其中,第二子集群包含一个或多个目标服务器;所述合并集群模块,用于当所述第一主服务器确定所述第一子集群包含的各个所述从服务器与所述第二子集群中包含的各个服务器的连接状态均为已连接时,所述第一主服务器触发将所述第一子集群与第二子集群合并的操作;利用所述设定规则重新确定所述第一子集群与所述第二子集群合并后的集群中唯一的主服务器。12.一种服务器集群,其特征在于,包括:多个服务器,每一个服务器设置有权利要求11所述的管理集群的装置。13.一种电子设备,其特征在于,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-10中任一所述的方法。14.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1-10中任一所述的方法。

技术总结
本发明公开了一种管理集群的方法、装置和服务器集群,涉及大数据技术领域。该方法的一具体实施方式包括:确定集群分裂出的子集群以及子集群中的第一主服务器;各个服务器根据存储的集群服务器状态信息确定集群中与其连接状态为未连接的目标服务器,并发起与目标服务器的连接操作;第一主服务器在确定各个从服务器与目标服务器的连接状态均为已连接的情况下,触发针对子集群的合并操作;并从合并后的集群中重新确定第二主服务器。通过集群中各个服务器的判断逻辑自动合并集群分裂出的子集群,从而使集群可以从分裂状态自动恢复为可用状态,提高了管理集群的效率,提高了处理集群异常的效率,提高了所管理的集群的容错性。提高了所管理的集群的容错性。提高了所管理的集群的容错性。


技术研发人员:李温良
受保护的技术使用者:京东科技控股股份有限公司
技术研发日:2022.03.15
技术公布日:2023/9/22
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

航空商城 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

评论

相关推荐