一种多集群下应用故障的处理方法、系统、介质和设备与流程

文档序号:30338679发布日期:2022-06-08 07:28阅读:87来源:国知局
一种多集群下应用故障的处理方法、系统、介质和设备与流程

1.本技术涉及云原生技术领域,特别涉及一种多集群下应用故障的处理方法、系统、计算机可读存储介质和电子设备。


背景技术:

2.在生产实践中,企业通常采用主/备集群部署模式来部署应用实例,即将应用实例分别部署在主集群和备用集群中,并且让备用集群中的应用实例(又可称作应用副本)对主集群中的应用的运行状态进行同步,当主集群中的应用出现故障无法正常对外部访问流量进行响应时,让备用集群中的应用副本代替主集群中的应用进行响应,或者从多个备用集群中选择某个备用集群的应用副本代替主集群的应用进行响应。具体的,当主集群中的应用出现故障时,由多集群管理员手动修改负载均衡流量分发配置,将访问该应用的外部访问流量切换至备用集群中的应用副本。
3.现有技术采用手动进行流量切换的方式来应对主集群中的应用出现故障的情况,但在备用集群中的应用副本成为新的应用后,原先的应用和对应的应用副本之间的同步机制不会自动修改相应的同步配置,处于失效状态,即原先的应用同步机制不会自动适配流量的切换,其他集群中的应用实例不会对新的应用的运行状态进行同步,新的应用没有对应的应用副本。
4.因此,需要提供一种针对上述现有技术不足的改进技术方案。


技术实现要素:

5.本技术的目的在于提供一种多集群下应用故障的处理方法、系统、计算机可读存储介质和电子设备,以解决或缓解上述现有技术中存在的问题。
6.为了实现上述目的,本技术提供如下技术方案:
7.本技术实施例提供一种多集群下应用故障的处理方法,应用部署在第一集群中,所述第一集群属于第一应用集群组,所述第一应用集群组中除所述第一集群以外的其它集群组成第二应用集群组;所述第一应用集群组中的每个集群中均部署有灾备系统,所述第一集群的灾备系统作为所述应用的灾备主系统,用于将所述应用备份至所述第二应用集群组中的所有集群,所述多集群应用故障的处理方法包括:响应于所述应用出现故障,所述灾备主系统停止对所述应用进行备份;在所述第二应用集群组中的所有集群的灾备系统中确定新的灾备主系统;所述新的灾备主系统部署在第二集群中,所述第二集群中的所述应用对应的应用副本成为新的应用,所述新的灾备主系统用于将所述新的应用备份至所述第二应用集群组中除所述第二集群以外的其它集群。
8.优选的,所述第一集群的灾备系统基于接收到的应用管理资源对象,成为所述应用的灾备主系统,并根据所述应用管理资源对象的内容,确定所述第一应用集群组中的所有集群。
9.优选的,在所述根据所述应用管理资源对象的内容,确定所述第一应用集群组中
的所有集群之后,还包括:所述应用的灾备主系统将所述应用管理资源对象的内容同步至所述第二应用集群组中的所有集群的灾备系统;所述第二应用集群组中的每个集群的灾备系统根据接收到的所述应用管理资源对象的内容,获知所述第一应用集群组中的所有集群。
10.优选的,所述灾备主系统停止对所述应用进行备份,包括:对所述灾备主系统中的集群管理资源对象的内容进行修改,以使所述灾备主系统丧失对所述应用的操作权限。
11.优选的,在所述灾备主系统停止对所述应用进行备份之后,还包括:所述灾备主系统成为灾备副系统,并告知所述第二应用集群组中的所有集群的灾备系统;所述第二应用集群组中的所有集群的灾备系统将所述第一集群标记为维护状态。
12.优选的,还包括:响应于所述应用恢复正常,所述灾备副系统告知所述第二应用集群组中的所有集群的灾备系统;所述第二应用集群组中的所有集群的灾备系统去除所述第一集群的维护状态标记;所述新的灾备主系统将所述新的应用备份至所述第一集群。
13.优选的,还包括:响应于所述应用出现故障,所述灾备主系统指示负载均衡组件停止向所述第一集群转发所述应用的外部访问流量;在确定新的灾备主系统之后,所述新的灾备主系统指示所述负载均衡组件向所述第二集群转发所述应用的外部访问流量。
14.本技术实施例还提供一种多集群下应用故障的处理系统,应用部署在第一集群中,所述第一集群属于第一应用集群组,所述第一应用集群组中除所述第一集群以外的其它集群组成第二应用集群组,所述第一应用集群组中的每个集群中均部署有灾备系统,所述第一集群的灾备系统作为所述应用的灾备主系统,用于将所述应用备份至所述第二应用集群组中的所有集群,所述多集群下应用故障处理系统包括:停止单元,配置为响应于所述应用出现故障,所述灾备主系统停止对所述应用进行备份;备份单元,配置为在所述第二应用集群组中的所有集群的灾备系统中确定新的灾备主系统;所述新的灾备主系统部署在第二集群中,所述第二集群中的所述应用对应的应用副本成为新的应用,所述新的灾备主系统用于将所述新的应用备份至所述第二应用集群组中除所述第二集群以外的其它集群。
15.本技术实施例还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序为如上任一所述的多集群下应用故障的处理方法。
16.本技术实施例还提供一种电子设备,包括:存储器、处理器、以及存储在所述存储器中并可在所述处理器上运行的程序,所述处理器执行所述程序时实现如上任一所述的多集群下应用故障的处理方法。
17.有益效果:
18.本技术实施例提供的技术方案中,应用部署在属于第一应用集群组的第一集群中,第一应用集群组中除第一集群外的其它集群组成第二应用集群组;第一应用集群组中的每个集群中部署有灾备系统,第一集群的灾备系统作为指定的要备份的应用的灾备主系统,将应用备份至第二集群组中的所有集群,当第一集群中的要备份的应用出现故障时,第一集群的灾备系统停止对应用进行备份;在第二应用集群组中的所有集群的灾备系统中确定出新的灾备主系统,第二集群中的应用对应的应用副本成为新的要备份的应用,第二集群中的新的灾备主系统将新的应用备份至第二集群中除第二集群以外的其它集群。籍此,当第一集群中的要备份的应用出现故障时,原灾备主系统立即停止对该应用的同步,并从灾备主系统以外的其它灾备系统中确定新的灾备主系统,由新的灾备主系统对新的要备份
的应用进行同步,从而在要备份的应用出现故障时自动切换用于备份的灾备主系统和要备份的应用,确保应用同步机制长期有效。
附图说明
19.构成本技术的一部分的说明书附图用来提供对本技术的进一步理解,本技术的示意性实施例及其说明用于解释本技术,并不构成对本技术的不当限定。其中:
20.图1为根据本技术的一些实施例提供的各个集群之间建立连接的逻辑示意图;
21.图2为根据本技术的一些实施例提供的选定灾备主系统的逻辑示意图;
22.图3为根据本技术的一些实施例提供的建立应用集群组的逻辑示意图;
23.图4为根据本技术的一些实施例提供的一种多集群下应用故障的处理方法的流程示意图;
24.图5为根据本技术的一些实施例提供的应用故障时外部访问流量切换的逻辑示意图;
25.图6为根据本技术的一些实施例提供的一种多集群下应用故障的处理系统的结构示意图;
26.图7为根据本技术的一些实施例提供的电子设备的结构示意图;
27.图8为根据本技术的一些实施例提供的电子设备的硬件结构。
具体实施方式
28.下面将参考附图并结合实施例来详细说明本技术。各个示例通过本技术的解释的方式提供而非限制本技术。实际上,本领域的技术人员将清楚,在不脱离本技术的范围或精神的情况下,可在本技术中进行修改和变型。例如,示为或描述为一个实施例的一部分的特征可用于另一个实施例,以产生又一个实施例。因此,所期望的是,本技术包含归入所附权利要求及其等同物的范围内的此类修改和变型。
29.在多集群场景下,本技术实施例以分布式的形式在每个集群中均部署了灾备系统,用于对多集群场景下应用的运行状态进行同步。
30.为了便于说明,将指定的要备份的应用所在的集群称作第一集群,将该应用同步。
31.将第一集群与指定的要备份的应用所对应的至少一个备用集群所组成的集群组称作第一集群组,而将指定的要备份的应用所对应的至少一个备用集群所组成的集群组称作第二集群组。
32.根据灾备系统在对指定的要备份的应用的运行状态进行同步过程中所发挥的作用不同,可以将第一集群组中的所有集群中的灾备系统分为灾备主系统和灾备副系统,第一集群组中的所有集群中所包括的灾备主系统和至少一个灾备副系统共同组成了完整的灾备体系。
33.第一集群中的灾备系统负责将指定的要备份的应用的运行状态同步至该应用对应的所有备用集群,因此第一集群中的灾备系统为指定的要备份的应用对应的灾备主系统,而第二集群组中的所有备用集群中的灾备系统为指定的要备份的应用对应的灾备副系统。相应地,灾备主系统所在的第一集群又可以被称作主集群,第二集群组中部署了灾备副系统的集群即为与主集群相对应的备用集群。
34.也就是说,指定的要备份的应用(简称为“应用”)部署在第一集群中,第一集群属于第一应用集群组,第一应用集群组中除第一集群以外的其它集群组成第二应用集群组;第一应用集群组中的每个集群中均部署有灾备系统,第一集群的灾备系统作为应用的灾备主系统,用于将应用备份至第二应用集群组中的所有集群。
35.为了更加清楚地说明本技术实施例所提出的多集群下应用故障的处理方法,首先对指定要备份的应用和对应的备用集群,以及建立以指定的要备份的应用为核心的应用备份体系的过程进行说明。
36.图1为根据本技术的一些实施例提供的各个集群之间建立连接的逻辑示意图;如图1所示,本技术实施例所提出的应用故障的处理方法适用于多集群场景,灾备系统分布式部署在每个集群中。多集群管理员通过将集群资源管理对象写入部署在多集群管理系统上的自定义集群管理资源,由多集群管理系统将集群之间建立连接的连接认证信息发送至各个集群,实现各个集群之间的连接。在此,各个集群之间建立连接的连接认证信息包括:证书、密钥、令牌等,每个集群均可以通过连接认证信息与其它集群建立连接,集群中分布式部署的灾备系统通过连接认证信息建立实时检测和通信通道,实现分布式部署的灾备系统之间的互联。
37.图2为根据本技术的一些实施例提供的选定灾备主系统的逻辑示意图;如图2所示,该多集群下应用故障的处理方法还包括:第一集群的灾备系统基于接收到的应用管理资源对象,成为应用的灾备主系统,并根据应用管理资源对象的内容,确定第一应用集群组中的所有集群。
38.具体的,应用管理员将应用管理资源对象写入指定的要备份的应用所在集群的灾备系统,使得指定的要备份的应用所在集群成为主集群,主集群的灾备系统成为灾备主系统。应用管理资源对象中要备份的应用字段指明了要备份的应用的唯一标识信息(比如名称、id等),备用集群字段列明了指定的备用集群的唯一标识信息(比如名称、id、访问地址等),因此灾备主系统对应用管理资源对象的内容进行解析,即可确定指定的要备份的应用和指定的至少一个备用集群,进而可以确定第一应用集群组中的所有集群,即主集群和所有备用集群。
39.图3为根据本技术的一些实施例提供的建立应用集群组的逻辑示意图;如图3所示,在根据应用管理资源对象的内容,确定第一应用集群组中的所有集群之后,该多集群下应用故障的处理方法还包括:应用的灾备主系统将应用管理资源对象的内容同步至第二应用集群组中的所有集群的灾备系统;第二应用集群组中的每个集群的灾备系统根据接收到的应用管理资源对象的内容,获知第一应用集群组中的所有集群。
40.当灾备主系统确定所有备用集群后,即可使用多集群管理系统下发的连接认证信息主动向所有备用集群发出建立连接的请求,与备用集群中的灾备系统建立连接关系,并将应用管理资源对象的内容同步至所有备用集群的灾备系统,即第二应用集群组中的所有集群的灾备系统。应当理解,在灾备主系统与第二应用集群组中的每个集群的灾备系统建立连接关系之后,第二应用集群组中的所有集群的灾备系统之间并没有建立连接关系,也就是说,第二应用集群组中的每个集群的灾备系统并不知道第二应用集群组中还包括哪些集群。
41.在此,灾备主系统将应用管理资源对象的内容同步至第二应用集群组中的所有集
群的灾备系统,第二应用集群组中的每个集群的灾备系统对接收到的应用管理资源对象的内容进行解析,即可获知包括主集群在内的第一应用集群组中的所有集群,进而可以使用多集群管理系统下发的连接认证信息主动向第二应用集群组中的其他备用集群发出建立连接的请求,与其他备用集群中的灾备系统建立连接关系,从而让第一应用集群组中的全部灾备系统两两之间建立连接关系。
42.基于上述说明可知,当应用管理员将应用管理资源对象写入指定的要备份的应用所在集群的灾备系统后,该集群即为该应用对应的主集群,主集群的灾备系统即为该应用对应的灾备主系统,其它指定的备用集群的灾备系统相对于指定的要备份的应用所在集群的灾备系统即为灾备副系统;灾备主系统和灾备副系统之间通过应用管理员写入的应用管理资源对象建立连接关系。可以理解,如果应用管理员将不同应用管理资源对象写入多个指定的要备份的应用所在集群的灾备系统(多个要备份的应用可以位于同一集群中,也可以位于不同集群中),并且在不同的应用管理资源对象中为每个要备份的应用分别指定了至少一个备用集群,则可以在若干集群组成的集群组中形成多套包含灾备主系统、至少一个灾备副系统、主集群和至少一个备用集群的应用备份体系。
43.具体地,可以在每个灾备系统中设置配置管理器,用于接收应用管理员写入的应用管理资源对象,此外应用管理员还可以通过访问配置管理器来对应用管理资源对象的内容进行修改,以变更指定的要备份的应用和指定的至少一个备用集群,以及对灾备系统的运行过程进行配置,以将应用管理资源对象的内容同步至第二应用集群组中的所有集群的灾备系统。
44.籍此,通过应用管理员写入应用管理资源对象的方式指定要备份的应用以及指定相应的备用集群,定义应用对应的灾备主系统、灾备副系统、主集群和备用集群,使得多个集群及部署在其上的灾备系统可以同时将不同集群中的多个指定的要备份的应用同步至相应的备用集群中。
45.在建立了以指定的要备份的应用为核心的应用备份体系后,灾备主系统即根据应用管理资源对象的内容,将指定的要备份的应用的运行状态同步至指定的至少一个备用集群。
46.当指定的要备份的应用正常运行时,灾备主系统将指定的要备份的应用的运行状态同步至所有备用集群,即第二应用集群组中的所有备用集群,在所有备用集群中生成指定的要备份的应用对应的应用副本,使得每个备用集群中的应用副本的运行状态与主集群中指定的要备份的应用始终保持一致。
47.当指定的要备份的应用出现故障时,则采用本技术实施例所提出的一种多集群下应用故障的处理方法进行处理,图4为根据本技术的一些实施例提供的一种多集群下应用故障的处理方法的流程示意图;如图4所示,该多集群下应用故障的处理方法包括:
48.步骤s401、响应于应用出现故障,灾备主系统停止对应用进行备份。
49.需要说明的是,灾备主系统在对指定的要备份的应用进行备份的同时,还会对指定的要备份的应用的运行状态进行实时检测,当灾备主系统监测到指定的要备份的应用出现故障,无法对外部访问流量进行正常响应时,立即停止对指定的要备份的应用进行同步。
50.可以理解,如果指定的要备份的应用出现故障,则此时指定的要备份的应用已无法正常对外部访问流量进行响应,也就不会产生新的有效运行状态信息,因此应当立即停
止将指定的要备份的应用的运行状态同步至备用集群,以防应用的故障对备用集群中的应用副本造成影响。
51.进一步地,对于步骤s401中的灾备主系统停止对应用进行备份,包括多种可能的实现方式。
52.第一种可能的实现方式是,在每个集群中设置告警系统,由告警系统对部署在所在集群中的全部应用的运行状态进行实时检测,当某个集群中的告警系统检测到该集群中某个应用出现故障,无法对外部流量进行正常响应时,立即以短信、邮件、电话等通信方式将发生故障的应用的唯一标识信息告知该集群的集群管理员,由集群管理员手动进行处理。
53.具体的,集群管理员可以在知道发生故障的应用后,通过访问该应用对应的灾备主系统中的配置管理器,对该应用对应的应用管理资源对象的内容进行修改,让该应用对应的灾备主系统停止对该应用进行实时或周期性备份。
54.第二种可能的实现方式是,在每个灾备系统中设置集群控制器,当灾备系统成为指定的要备份的应用对应的灾备主系统后,该灾备主系统中的集群控制器立即开始对主集群中指定的要备份的应用的状态进行实时检测,当检测到该应用出现故障,无法对外部流量进行正常响应时,指示该应用对应的灾备主系统停止对该应用进行实时或周期性备份,而无需集群管理员手动关闭。
55.具体的,对灾备主系统中的集群管理资源对象的内容进行修改,以使灾备主系统丧失对该应用的操作权限,使得灾备主系统无法再对该应用进行实时或周期性备份。
56.第三种可能的实现方式是,在每个灾备系统中设置集群控制器的同时,在每个集群中设置告警系统,集群控制器对指定的要备份的应用进行实时检测和告警系统对部署在所在集群中的全部应用的运行状态进行实时检测,当检测到指定的要备份的应用出现故障,无法对外部流量进行正常响应时,由集群控制器自动对灾备主系统中的集群管理资源对象的内容进行修改,使灾备主系统停止对应用进行备份,同时告警系统将发生故障的应用的唯一标识信息告知该集群的集群管理员,让集群管理员尽快对发生故障的应用进行处理。
57.进一步的,在步骤s401中的灾备主系统停止对应用进行备份之后,该多集群下应用故障的处理方法还包括:灾备主系统成为灾备副系统,并告知第二应用集群组中的所有集群的灾备系统;第二应用集群组中的所有集群的灾备系统将第一集群标记为维护状态。也就是说,当指定的要备份的应用出现故障后,灾备主系统在停止对应用进行备份的同时,灾备主系统就自动转变为指定的要备份的应用对应的灾备副系统,整套以指定的要备份的应用为核心的应用备份体系处于没有灾备主系统的状态,因此需要尽快确定出新的灾备主系统。
58.步骤s402、在第二应用集群组中的所有集群的灾备系统中确定新的灾备主系统。
59.其中,新的灾备主系统部署在第二集群中,第二集群中的应用对应的应用副本成为新的应用,新的灾备主系统用于将新的应用备份至第二应用集群组中除第二集群以外的其它集群。
60.在本技术实施例中,当指定的要备份的应用出现故障,通知相对应的全部备用集群中部署的灾备副系统自行确定出新的灾备主系统,新的灾备主系统所在的备用集群则转
换为新的主集群,新的主集群中部署有指定的要备份的应用对应的应用副本,且该应用副本的运行状态始终与指定的要备份的应用保持一致,当该应用副本所在的备用集群成为新的主集群后,该应用副本也相应转换为新的指定的要备份的应用(简称为“新的应用”),由新的灾备主系统将新的应用的运行状态同步备份至其它备用集群中。
61.需要说明的是,新的灾备主系统所在备用集群是原先的备用集群中的一个,如果原先只有一个备用集群,则该备用集群中的灾备副系统直接转换为灾备主集群,如果原先存在两个以上的备用集群,则这些备用集群中的灾备副系统在自行确定出新的灾备主系统后,新的灾备主系统所在备用集群即为新的主集群,原先的备用集群中除转换为新的主集群以外的其它集群为新的备用集群(即与新的主集群相对应的备用集群)。在确定出新的灾备主系统后,由新的灾备主系统将新的集群中的新的应用的运行状态同步至新的备用集群中,从而实现主集群和备用集群的自动切换,确保应用同步机制的长期有效。
62.进一步地,两个以上的灾备副系统可以采用选举机制确定出新的灾备主系统,具体可以通过事先设置选举优先级的方式进行选举,即为预先为每个集群设置优先级,在选举时选取优先级最高的集群中的灾备副系统作为新的灾备主系统,也可以通过对集群进行性能评分的方式进行选举,即通过部署在每个备用集群中的监控组件对所在集群的硬件资源使用情况进行采集,并由灾备系统根据采集到的硬件资源使用情况对所在集群的性能进行评分,选取性能评分最高的集群中的灾备副系统作为新的灾备主系统,还可以通过对集群进行加权评分的方式进行选举,即预先为每个集群设置权重数值,在根据采集到的硬件资源使用情况对所在集群的性能进行评分时将所得评分乘以权重数值,选取加权处理后性能评分最高的集群中的灾备副系统作为新的灾备主系统,本技术实施例对此不做限定。
63.在此,需要说明的是,灾备主系统、灾备副系统、主集群和备用集群都是相对于某个具体应用而言的,也就是说,一个集群可以同时作为第一应用的主集群和不同于第一应用的第二应用的备用集群,相应的,该集群中运行的灾备系统同时为第一应用的灾备主系统和第二应用的灾备副系统。可以理解的是,要备份的应用所在的集群即为该应用对应的主集群,主集群中部署的灾备系统即为该应用对应的灾备主系统;该应用对应的应用副本所在的集群即为该应用的对应的备用集群,备用集群中部署的灾备系统即为该应用对应的灾备副系统。主集群、备用集群、灾备主系统、灾备副系统随要备份的应用的转变而转变,在当前主集群中的要备份的应用出现故障后,该应用对应的备用集群中的一个集群中的应用副本就会转变为新的应用,其所对应的集群会相应地转变为新的主集群,其所对应的灾备系统也会相应地转变为新的灾备主系统。
64.由前述说明可知,在集群中呈分布式部署的灾备系统之间通过连接认证信息建立实时检测和通信通道,实现分布式灾备系统之间的互联。在灾备主系统停止对指定的要备份的应用进行同步的同时,通知对应的灾备副系统代替原来的灾备主系统成为新的灾备主系统,相对应的,新的灾备主系统所在的集群(第二集群)代替原来的主集群(第一集群)成为新的主集群对外提供服务,新的主集群中的应用副本转变为新的应用。
65.可以理解的是,如果主集群具有多个备用集群,当第一集群进入某个应用对应的维护状态,第一集群中运行的灾备主系统告知该应用对应的所有备用集群中的灾备副系统部署在主集群中的该应用出现故障,由所有备用集群中的灾备副系统自行选举出新的灾备主系统,且所有备用集群中的灾备副系统将第一集群标记为该应用对应的维护状态。在第
一集群处于该应用对应的维护状态期间,第一集群中部署的灾备系统无法被选定为该应用对应的灾备主系统,第一集群也无法被选定为该应用对应的主集群。也就是说,在第一集群退出该应用对应的维护状态之前,第一集群将会一直被排除在该应用对应的主集群选定范围之外。基于前述说明可知,本技术中的灾备主系统、灾备副系统、主集群和备用集群都是相对于某个具体应用而言的,因此即便因第一集群中要备份的应用a出现故障,使得第一集群被应用a对应的灾备副系统标记为维护状态,第一集群中的灾备系统仍可被选定为应用b对应的灾备主系统。
66.当第一集群中的指定的要备份的应用出现故障,灾备副系统通过选举产生新的灾备主系统后,新的灾备主系统所在的集群成为新的主集群,而原先的备用集群中的其它集群继续作为新的灾备主系统的备用集群,以部署新的应用对应的应用副本,同时,新的灾备主系统将新的应用的数据同步备份至其它备用集群。也就是说,主集群的确定依赖灾备主系统的选取,灾备主系统所在的集群即为主集群,因此,在所有灾备副系统自行选举产生新的灾备主系统时,间接实现了主集群的选举。
67.可以理解,由于原先的每个备用集群中的应用副本需要与原先的主集群中的应用保持同步,因此原先的每个备用集群中的应用副本之间也始终保持同步。因此在原先的主集群转换为备用集群,且某个备用集群成为新的主集群后,剩余的备用集群可以继续作为新的主集群的备用集群接收新的主集群中的灾备系统同步新的应用的运行状态,实现运行状态同步的无缝切换。
68.图5为根据本技术的一些实施例提供的应用故障时外部访问流量切换的逻辑示意图;如图5所示,为了保证部署的应用的高可用性,一旦第一集群中指定的要备份的应用出现故障,除了需要对应用备份体系进行调整,还需要对指向指定的要备份的应用的外部访问流量进行切换,具体需要立即将该应用的访问流量切换至新的主集群中新的应用(即应用对应的应用副本)。具体的,响应于应用出现故障,灾备主系统指示负载均衡组件停止向第一集群转发应用的外部访问流量。在此,可以通过在每个集群中的灾备系统中配置集群管理器,对指定的要备份的应用的运行状态进行监测,当第一集群中的集群控制器监测到指定的要备份的应用出现故障时,立即自动切断负载均衡向第一集群传输指定的要备份的应用的外部访问流量;在确定新的灾备主系统之后,新的灾备主系统指示负载均衡组件向第二集群转发应用的外部访问流量。即在确定新的主集群后,由新的主集群中的集群控制器指示负载均衡组件将应用的外部访问流量转发至新的主集群中新的应用。
69.籍此,通过将主集群中指定的要备份的应用实施或周期性地同步至指定的备用集群,当主集群中指定的应用出现故障时,将访问流量无缝切换至备用集群中新的应用(即原应用对应的应用副本),由新的应用代替第一集群中的应用对访问流量进行响应,实现了外部访问流量在第一集群中的应用和新的应用之间的自动切换,故障从发生到恢复所需时间几乎为0,实现了应用的高可用性。
70.此外,本技术实施例中是针对指定的要备份的应用的运行状态进行监测,当监测到该应用出现故障,则仅对该应用对应的应用备份体系和指向该应用的外部访问流量进行切换,而不会对同一集群上的其他应用造成任何影响,以单个应用作为故障处理的基准单位,有效提高了故障切换机制和流量切换机制的精细度。
71.当第一集群中的应用恢复正常后,可以由集群管理员通过再次修改集群管理资源
对象的方式,使第一集群退出该应用对应的维护状态;也可以由集群控制器检测到第一集群中的应用恢复正常后自动退出该应用对应的维护状态;第一集群在退出该应用对应的维护状态后即自动成为新的主集群的备用集群,新的灾备系统将会把新的应用的运行状态同步至第一集群。
72.基于前述可知,在应用出现故障时,第一集群中的灾备主系统成为灾备副系统,第二应用集群组中的所有集群的灾备系统将第一集群标记为该应用对应的维护状态,响应于应用恢复正常,灾备副系统告知第二应用集群组中的所有集群的灾备系统,第二应用集群组中的所有集群的灾备系统去除第一集群的该应用对应的维护状态标记,新的灾备主系统将新的应用备份至第一集群。也就是说,实施例中的多个集群之间的主集群、备用集群的关系是相对的,一旦主集群中的应用产生故障,该应用对应的某个备用集群将转变为新的主集群,在产生故障的应用恢复后则原先的主集群自动变为新的主集群的备用集群。籍此,使得主集群和备用集群互为备份,实现了集群间的交叉容灾。
73.示例性系统
74.图6为根据本技术的一些实施例提供的一种多集群下应用故障的处理系统的结构示意图;如图6所示,该多集群下应用故障的处理系统中,应用部署在第一集群中,第一集群属于第一应用集群组,第一应用集群组中第一集群以外的其它集群组成第二应用集群组,第一应用集群组中的每个集群中均部署有灾备系统,第一集群的灾备系统作为应用的灾备主系统,用于将应用备份至第二应用集群组中的所有集群;多集群下应用故障处理系统包括:停止单元601,配置为响应于应用出现故障,灾备主系统停止对应用进行备份;备份单元602,配置为在第二应用集群组中的所有集群的灾备系统中确定新的灾备主系统;新的灾备主系统部署在第二集群中,第二集群中的应用对应的应用副本成为新的应用,新的灾备主系统用于将新的应用备份至第二应用集群组中除第二集群以外的其它集群。
75.本技术实施例提供的多集群下应用故障的处理系统能够实现上述任一多集群下应用故障的处理方法实施例的步骤、流程,并达到相同的技术效果,在此不再一一赘述。
76.示例性设备
77.图7为根据本技术的一些实施例提供的电子设备的结构示意图;如图7所示,该电子设备包括:
78.一个或多个处理器701;
79.计算机可读介质,可以配置为存储一个或多个程序702,一个或多个处理器701执行一个或多个程序702时,实现如下步骤:响应于应用出现故障,灾备主系统停止对应用进行备份;在第二应用集群组中的所有集群的灾备系统中确定新的灾备主系统;新的灾备主系统部署在第二集群中,第二集群中的应用对应的应用副本成为新的应用,新的灾备主系统用于将新的应用备份至第二应用集群组中除第二集群以外的其它集群;其中,应用部署在第一集群中,第一集群属于第一应用集群组,第一应用集群组中除第一集群以外的其它集群组成第二应用集群组;第一应用集群组中的每个集群中部署有灾备系统,第一集群的灾备系统作为应用的灾备主系统,用于将应用备份至第二应用集群组中的所有集群。
80.图8为根据本技术的一些实施例提供的电子设备的硬件结构;如图8所示,该电子设备的硬件结构可以包括:处理器801、通信接口802、计算机可读介质803和通信总线804。
81.其中,处理器801、通信接口802、计算机可读存储介质803通过通信总线804完成相
互间的通信。
82.可选地,通信接口802可以为通信模块的接口,如gsm模块的接口。
83.其中,处理器801具体可以配置为:响应于应用出现故障,灾备主系统停止对应用进行备份;在第二应用集群组中的所有集群的灾备系统中确定新的灾备主系统;新的灾备主系统部署在第二集群中,第二集群中的应用对应的应用副本成为新的应用,新的灾备主系统用于将新的应用备份至第二应用集群组中除第二集群以外的其它集群;其中,应用部署在第一集群中,第一集群属于第一应用集群组,第一应用集群组中除第一集群以外的其它集群组成第二应用集群组;第一应用集群组中的每个集群中部署有灾备系统,第一集群的灾备系统作为应用的灾备主系统,用于将应用备份至第二应用集群组中的所有集群。
84.处理器801可以是通用处理器,包括中央处理器(central processing unit,简称cpu)、网络处理器(network processor,简称np)等,还可以是数字信号处理器(dsp)、专用集成电路(asic)、现成可编程门阵列(fpga)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本技术实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
85.本技术实施例的电子设备以多种形式存在,包括但不限于:
86.(1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类终端包括:智能手机(例如:iphone)、多媒体手机、功能性手机,以及低端手机等。
87.(2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类终端包括:pda、mid和umpc设备等,例如ipad。
88.(3)便携式娱乐设备:这类设备可以显示和播放多媒体内容。该类设备包括:音频、视频播放器(例如:ipod),掌上游戏机,电子书,以及智能玩具和便携式车载导航设备。
89.(4)服务器:提供计算服务的设备,服务器的构成包括处理器、硬盘、内存、系统总线等,服务器和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。
90.(5)其它具有数据交互功能的电子装置。
91.需要指出,根据实施的需要,可将本技术实施例中描述的各个部件/步骤拆分为更多部件/步骤,也可以将两个或多个部件/步骤或者部件/步骤的部分操作组合成新的部件/步骤,以实现本技术实施例的目的。
92.上述根据本技术实施例的方法可在硬件、固件中实现,或者被实现为可存储在记录介质(诸如cd rom、ram、软盘、硬盘或磁光盘)中的软件或计算机代码,或者被实现通过网络下载的原始存储在远程记录介质或非暂时机器存储介质中并将被存储在本地记录介质中的计算机代码,从而在此描述的方法可被存储在使用通用计算机、专用处理器或者可编程或专用硬件(诸如asic或fpga)的记录介质上的这样的软件处理。可以理解,计算机、处理器、微处理器控制器或可编程硬件包括可存储或接收软件或计算机代码的存储组件(例如,ram、rom、闪存等),当软件或计算机代码被计算机、处理器或硬件访问且执行时,实现在此描述的多集群下应用故障的处理方法。此外,当通用计算机访问用于实现在此示出的方法的代码时,代码的执行将通用计算机转换为用于执行在此示出的方法的专用计算机。
93.本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单
元及方法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和涉及约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术实施例的范围。
94.需要说明的是,本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其它实施例的不同之处。尤其,对于设备及系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。
95.以上所描述得设备及系统实施例仅仅是示意性的,其中作为分离不见说明的单元可以使或者也可以不是物理上分开的,作为单元提示的不见可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
96.以上仅为本技术的优选实施例,并不用于限制本技术,对于本领域的技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1