CN114598594B - 一种多集群下应用故障的处理方法、***、介质和设备 - Google Patents

一种多集群下应用故障的处理方法、***、介质和设备 Download PDF

Info

Publication number
CN114598594B
CN114598594B CN202210247855.9A CN202210247855A CN114598594B CN 114598594 B CN114598594 B CN 114598594B CN 202210247855 A CN202210247855 A CN 202210247855A CN 114598594 B CN114598594 B CN 114598594B
Authority
CN
China
Prior art keywords
application
cluster
disaster recovery
clusters
new
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202210247855.9A
Other languages
English (en)
Other versions
CN114598594A (zh
Inventor
牛乐川
颜开
孙亮
戴秋萍
郭峰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Daoke Network Technology Co ltd
Original Assignee
Shanghai Daoke Network Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Daoke Network Technology Co ltd filed Critical Shanghai Daoke Network Technology Co ltd
Priority to CN202210247855.9A priority Critical patent/CN114598594B/zh
Publication of CN114598594A publication Critical patent/CN114598594A/zh
Application granted granted Critical
Publication of CN114598594B publication Critical patent/CN114598594B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0663Performing the actions predefined by failover planning, e.g. switching to standby network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0668Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0823Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02ATECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE
    • Y02A10/00TECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE at coastal zones; at river basins
    • Y02A10/40Controlling or monitoring, e.g. of flood or hurricane; Forecasting, e.g. risk assessment or mapping

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Hardware Redundancy (AREA)

Abstract

本申请实施例提供一种多集群下应用故障的处理方法、***、计算机可读存储介质和电子设备。该方法中的应用部署在第一集群中,第一集群属于第一应用集群组,第一应用集群组中除第一集群以外的其它集群组成第二应用集群组。第一应用集群组中的每个集群中均部署有灾备***,第一集群的灾备***作为应用的灾备主***,将应用备份至第二应用集群组中的所有集群。该方法包括:响应于应用出现故障,灾备主***停止对应用进行备份;将第二集群的灾备***确定为新的灾备主***,用于将第二集群中的新的应用备份至第二应用集群组中除第二集群以外的其它集群。籍此,当第一集群中的应用出现故障时,切换用于备份的灾备***和应用,确保应用同步机制长期有效。

Description

一种多集群下应用故障的处理方法、***、介质和设备
技术领域
本申请涉及云原生技术领域,特别涉及一种多集群下应用故障的处理方法、***、计算机可读存储介质和电子设备。
背景技术
在生产实践中,企业通常采用主/备集群部署模式来部署应用实例,即将应用实例分别部署在主集群和备用集群中,并且让备用集群中的应用实例(又可称作应用副本)对主集群中的应用的运行状态进行同步,当主集群中的应用出现故障无法正常对外部访问流量进行响应时,让备用集群中的应用副本代替主集群中的应用进行响应,或者从多个备用集群中选择某个备用集群的应用副本代替主集群的应用进行响应。具体的,当主集群中的应用出现故障时,由多集群管理员手动修改负载均衡流量分发配置,将访问该应用的外部访问流量切换至备用集群中的应用副本。
现有技术采用手动进行流量切换的方式来应对主集群中的应用出现故障的情况,但在备用集群中的应用副本成为新的应用后,原先的应用和对应的应用副本之间的同步机制不会自动修改相应的同步配置,处于失效状态,即原先的应用同步机制不会自动适配流量的切换,其他集群中的应用实例不会对新的应用的运行状态进行同步,新的应用没有对应的应用副本。
因此,需要提供一种针对上述现有技术不足的改进技术方案。
发明内容
本申请的目的在于提供一种多集群下应用故障的处理方法、***、计算机可读存储介质和电子设备,以解决或缓解上述现有技术中存在的问题。
为了实现上述目的,本申请提供如下技术方案:
本申请实施例提供一种多集群下应用故障的处理方法,应用部署在第一集群中,所述第一集群属于第一应用集群组,所述第一应用集群组中除所述第一集群以外的其它集群组成第二应用集群组;所述第一应用集群组中的每个集群中均部署有灾备***,所述第一集群的灾备***作为所述应用的灾备主***,用于将所述应用备份至所述第二应用集群组中的所有集群,所述多集群应用故障的处理方法包括:响应于所述应用出现故障,所述灾备主***停止对所述应用进行备份;在所述第二应用集群组中的所有集群的灾备***中确定新的灾备主***;所述新的灾备主***部署在第二集群中,所述第二集群中的所述应用对应的应用副本成为新的应用,所述新的灾备主***用于将所述新的应用备份至所述第二应用集群组中除所述第二集群以外的其它集群。
优选的,所述第一集群的灾备***基于接收到的应用管理资源对象,成为所述应用的灾备主***,并根据所述应用管理资源对象的内容,确定所述第一应用集群组中的所有集群。
优选的,在所述根据所述应用管理资源对象的内容,确定所述第一应用集群组中的所有集群之后,还包括:所述应用的灾备主***将所述应用管理资源对象的内容同步至所述第二应用集群组中的所有集群的灾备***;所述第二应用集群组中的每个集群的灾备***根据接收到的所述应用管理资源对象的内容,获知所述第一应用集群组中的所有集群。
优选的,所述灾备主***停止对所述应用进行备份,包括:对所述灾备主***中的集群管理资源对象的内容进行修改,以使所述灾备主***丧失对所述应用的操作权限。
优选的,在所述灾备主***停止对所述应用进行备份之后,还包括:所述灾备主***成为灾备副***,并告知所述第二应用集群组中的所有集群的灾备***;所述第二应用集群组中的所有集群的灾备***将所述第一集群标记为维护状态。
优选的,还包括:响应于所述应用恢复正常,所述灾备副***告知所述第二应用集群组中的所有集群的灾备***;所述第二应用集群组中的所有集群的灾备***去除所述第一集群的维护状态标记;所述新的灾备主***将所述新的应用备份至所述第一集群。
优选的,还包括:响应于所述应用出现故障,所述灾备主***指示负载均衡组件停止向所述第一集群转发所述应用的外部访问流量;在确定新的灾备主***之后,所述新的灾备主***指示所述负载均衡组件向所述第二集群转发所述应用的外部访问流量。
本申请实施例还提供一种多集群下应用故障的处理***,应用部署在第一集群中,所述第一集群属于第一应用集群组,所述第一应用集群组中除所述第一集群以外的其它集群组成第二应用集群组,所述第一应用集群组中的每个集群中均部署有灾备***,所述第一集群的灾备***作为所述应用的灾备主***,用于将所述应用备份至所述第二应用集群组中的所有集群,所述多集群下应用故障处理***包括:停止单元,配置为响应于所述应用出现故障,所述灾备主***停止对所述应用进行备份;备份单元,配置为在所述第二应用集群组中的所有集群的灾备***中确定新的灾备主***;所述新的灾备主***部署在第二集群中,所述第二集群中的所述应用对应的应用副本成为新的应用,所述新的灾备主***用于将所述新的应用备份至所述第二应用集群组中除所述第二集群以外的其它集群。
本申请实施例还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序为如上任一所述的多集群下应用故障的处理方法。
本申请实施例还提供一种电子设备,包括:存储器、处理器、以及存储在所述存储器中并可在所述处理器上运行的程序,所述处理器执行所述程序时实现如上任一所述的多集群下应用故障的处理方法。
有益效果:
本申请实施例提供的技术方案中,应用部署在属于第一应用集群组的第一集群中,第一应用集群组中除第一集群外的其它集群组成第二应用集群组;第一应用集群组中的每个集群中部署有灾备***,第一集群的灾备***作为指定的要备份的应用的灾备主***,将应用备份至第二集群组中的所有集群,当第一集群中的要备份的应用出现故障时,第一集群的灾备***停止对应用进行备份;在第二应用集群组中的所有集群的灾备***中确定出新的灾备主***,第二集群中的应用对应的应用副本成为新的要备份的应用,第二集群中的新的灾备主***将新的应用备份至第二集群中除第二集群以外的其它集群。籍此,当第一集群中的要备份的应用出现故障时,原灾备主***立即停止对该应用的同步,并从灾备主***以外的其它灾备***中确定新的灾备主***,由新的灾备主***对新的要备份的应用进行同步,从而在要备份的应用出现故障时自动切换用于备份的灾备主***和要备份的应用,确保应用同步机制长期有效。
附图说明
构成本申请的一部分的说明书附图用来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。其中:
图1为根据本申请的一些实施例提供的各个集群之间建立连接的逻辑示意图;
图2为根据本申请的一些实施例提供的选定灾备主***的逻辑示意图;
图3为根据本申请的一些实施例提供的建立应用集群组的逻辑示意图;
图4为根据本申请的一些实施例提供的一种多集群下应用故障的处理方法的流程示意图;
图5为根据本申请的一些实施例提供的应用故障时外部访问流量切换的逻辑示意图;
图6为根据本申请的一些实施例提供的一种多集群下应用故障的处理***的结构示意图;
图7为根据本申请的一些实施例提供的电子设备的结构示意图;
图8为根据本申请的一些实施例提供的电子设备的硬件结构。
具体实施方式
下面将参考附图并结合实施例来详细说明本申请。各个示例通过本申请的解释的方式提供而非限制本申请。实际上,本领域的技术人员将清楚,在不脱离本申请的范围或精神的情况下,可在本申请中进行修改和变型。例如,示为或描述为一个实施例的一部分的特征可用于另一个实施例,以产生又一个实施例。因此,所期望的是,本申请包含归入所附权利要求及其等同物的范围内的此类修改和变型。
在多集群场景下,本申请实施例以分布式的形式在每个集群中均部署了灾备***,用于对多集群场景下应用的运行状态进行同步。
为了便于说明,将指定的要备份的应用所在的集群称作第一集群,将该应用同步。
将第一集群与指定的要备份的应用所对应的至少一个备用集群所组成的集群组称作第一集群组,而将指定的要备份的应用所对应的至少一个备用集群所组成的集群组称作第二集群组。
根据灾备***在对指定的要备份的应用的运行状态进行同步过程中所发挥的作用不同,可以将第一集群组中的所有集群中的灾备***分为灾备主***和灾备副***,第一集群组中的所有集群中所包括的灾备主***和至少一个灾备副***共同组成了完整的灾备体系。
第一集群中的灾备***负责将指定的要备份的应用的运行状态同步至该应用对应的所有备用集群,因此第一集群中的灾备***为指定的要备份的应用对应的灾备主***,而第二集群组中的所有备用集群中的灾备***为指定的要备份的应用对应的灾备副***。相应地,灾备主***所在的第一集群又可以被称作主集群,第二集群组中部署了灾备副***的集群即为与主集群相对应的备用集群。
也就是说,指定的要备份的应用(简称为“应用”)部署在第一集群中,第一集群属于第一应用集群组,第一应用集群组中除第一集群以外的其它集群组成第二应用集群组;第一应用集群组中的每个集群中均部署有灾备***,第一集群的灾备***作为应用的灾备主***,用于将应用备份至第二应用集群组中的所有集群。
为了更加清楚地说明本申请实施例所提出的多集群下应用故障的处理方法,首先对指定要备份的应用和对应的备用集群,以及建立以指定的要备份的应用为核心的应用备份体系的过程进行说明。
图1为根据本申请的一些实施例提供的各个集群之间建立连接的逻辑示意图;如图1所示,本申请实施例所提出的应用故障的处理方法适用于多集群场景,灾备***分布式部署在每个集群中。多集群管理员通过将集群资源管理对象写入部署在多集群管理***上的自定义集群管理资源,由多集群管理***将集群之间建立连接的连接认证信息发送至各个集群,实现各个集群之间的连接。在此,各个集群之间建立连接的连接认证信息包括:证书、密钥、令牌等,每个集群均可以通过连接认证信息与其它集群建立连接,集群中分布式部署的灾备***通过连接认证信息建立实时检测和通信通道,实现分布式部署的灾备***之间的互联。
图2为根据本申请的一些实施例提供的选定灾备主***的逻辑示意图;如图2所示,该多集群下应用故障的处理方法还包括:第一集群的灾备***基于接收到的应用管理资源对象,成为应用的灾备主***,并根据应用管理资源对象的内容,确定第一应用集群组中的所有集群。
具体的,应用管理员将应用管理资源对象写入指定的要备份的应用所在集群的灾备***,使得指定的要备份的应用所在集群成为主集群,主集群的灾备***成为灾备主***。应用管理资源对象中要备份的应用字段指明了要备份的应用的唯一标识信息(比如名称、ID等),备用集群字段列明了指定的备用集群的唯一标识信息(比如名称、ID、访问地址等),因此灾备主***对应用管理资源对象的内容进行解析,即可确定指定的要备份的应用和指定的至少一个备用集群,进而可以确定第一应用集群组中的所有集群,即主集群和所有备用集群。
图3为根据本申请的一些实施例提供的建立应用集群组的逻辑示意图;如图3所示,在根据应用管理资源对象的内容,确定第一应用集群组中的所有集群之后,该多集群下应用故障的处理方法还包括:应用的灾备主***将应用管理资源对象的内容同步至第二应用集群组中的所有集群的灾备***;第二应用集群组中的每个集群的灾备***根据接收到的应用管理资源对象的内容,获知第一应用集群组中的所有集群。
当灾备主***确定所有备用集群后,即可使用多集群管理***下发的连接认证信息主动向所有备用集群发出建立连接的请求,与备用集群中的灾备***建立连接关系,并将应用管理资源对象的内容同步至所有备用集群的灾备***,即第二应用集群组中的所有集群的灾备***。应当理解,在灾备主***与第二应用集群组中的每个集群的灾备***建立连接关系之后,第二应用集群组中的所有集群的灾备***之间并没有建立连接关系,也就是说,第二应用集群组中的每个集群的灾备***并不知道第二应用集群组中还包括哪些集群。
在此,灾备主***将应用管理资源对象的内容同步至第二应用集群组中的所有集群的灾备***,第二应用集群组中的每个集群的灾备***对接收到的应用管理资源对象的内容进行解析,即可获知包括主集群在内的第一应用集群组中的所有集群,进而可以使用多集群管理***下发的连接认证信息主动向第二应用集群组中的其他备用集群发出建立连接的请求,与其他备用集群中的灾备***建立连接关系,从而让第一应用集群组中的全部灾备***两两之间建立连接关系。
基于上述说明可知,当应用管理员将应用管理资源对象写入指定的要备份的应用所在集群的灾备***后,该集群即为该应用对应的主集群,主集群的灾备***即为该应用对应的灾备主***,其它指定的备用集群的灾备***相对于指定的要备份的应用所在集群的灾备***即为灾备副***;灾备主***和灾备副***之间通过应用管理员写入的应用管理资源对象建立连接关系。可以理解,如果应用管理员将不同应用管理资源对象写入多个指定的要备份的应用所在集群的灾备***(多个要备份的应用可以位于同一集群中,也可以位于不同集群中),并且在不同的应用管理资源对象中为每个要备份的应用分别指定了至少一个备用集群,则可以在若干集群组成的集群组中形成多套包含灾备主***、至少一个灾备副***、主集群和至少一个备用集群的应用备份体系。
具体地,可以在每个灾备***中设置配置管理器,用于接收应用管理员写入的应用管理资源对象,此外应用管理员还可以通过访问配置管理器来对应用管理资源对象的内容进行修改,以变更指定的要备份的应用和指定的至少一个备用集群,以及对灾备***的运行过程进行配置,以将应用管理资源对象的内容同步至第二应用集群组中的所有集群的灾备***。
籍此,通过应用管理员写入应用管理资源对象的方式指定要备份的应用以及指定相应的备用集群,定义应用对应的灾备主***、灾备副***、主集群和备用集群,使得多个集群及部署在其上的灾备***可以同时将不同集群中的多个指定的要备份的应用同步至相应的备用集群中。
在建立了以指定的要备份的应用为核心的应用备份体系后,灾备主***即根据应用管理资源对象的内容,将指定的要备份的应用的运行状态同步至指定的至少一个备用集群。
当指定的要备份的应用正常运行时,灾备主***将指定的要备份的应用的运行状态同步至所有备用集群,即第二应用集群组中的所有备用集群,在所有备用集群中生成指定的要备份的应用对应的应用副本,使得每个备用集群中的应用副本的运行状态与主集群中指定的要备份的应用始终保持一致。
当指定的要备份的应用出现故障时,则采用本申请实施例所提出的一种多集群下应用故障的处理方法进行处理,图4为根据本申请的一些实施例提供的一种多集群下应用故障的处理方法的流程示意图;如图4所示,该多集群下应用故障的处理方法包括:
步骤S401、响应于应用出现故障,灾备主***停止对应用进行备份。
需要说明的是,灾备主***在对指定的要备份的应用进行备份的同时,还会对指定的要备份的应用的运行状态进行实时检测,当灾备主***监测到指定的要备份的应用出现故障,无法对外部访问流量进行正常响应时,立即停止对指定的要备份的应用进行同步。
可以理解,如果指定的要备份的应用出现故障,则此时指定的要备份的应用已无法正常对外部访问流量进行响应,也就不会产生新的有效运行状态信息,因此应当立即停止将指定的要备份的应用的运行状态同步至备用集群,以防应用的故障对备用集群中的应用副本造成影响。
进一步地,对于步骤S401中的灾备主***停止对应用进行备份,包括多种可能的实现方式。
第一种可能的实现方式是,在每个集群中设置告警***,由告警***对部署在所在集群中的全部应用的运行状态进行实时检测,当某个集群中的告警***检测到该集群中某个应用出现故障,无法对外部流量进行正常响应时,立即以短信、邮件、电话等通信方式将发生故障的应用的唯一标识信息告知该集群的集群管理员,由集群管理员手动进行处理。
具体的,集群管理员可以在知道发生故障的应用后,通过访问该应用对应的灾备主***中的配置管理器,对该应用对应的应用管理资源对象的内容进行修改,让该应用对应的灾备主***停止对该应用进行实时或周期性备份。
第二种可能的实现方式是,在每个灾备***中设置集群控制器,当灾备***成为指定的要备份的应用对应的灾备主***后,该灾备主***中的集群控制器立即开始对主集群中指定的要备份的应用的状态进行实时检测,当检测到该应用出现故障,无法对外部流量进行正常响应时,指示该应用对应的灾备主***停止对该应用进行实时或周期性备份,而无需集群管理员手动关闭。
具体的,对灾备主***中的集群管理资源对象的内容进行修改,以使灾备主***丧失对该应用的操作权限,使得灾备主***无法再对该应用进行实时或周期性备份。
第三种可能的实现方式是,在每个灾备***中设置集群控制器的同时,在每个集群中设置告警***,集群控制器对指定的要备份的应用进行实时检测和告警***对部署在所在集群中的全部应用的运行状态进行实时检测,当检测到指定的要备份的应用出现故障,无法对外部流量进行正常响应时,由集群控制器自动对灾备主***中的集群管理资源对象的内容进行修改,使灾备主***停止对应用进行备份,同时告警***将发生故障的应用的唯一标识信息告知该集群的集群管理员,让集群管理员尽快对发生故障的应用进行处理。
进一步的,在步骤S401中的灾备主***停止对应用进行备份之后,该多集群下应用故障的处理方法还包括:灾备主***成为灾备副***,并告知第二应用集群组中的所有集群的灾备***;第二应用集群组中的所有集群的灾备***将第一集群标记为维护状态。也就是说,当指定的要备份的应用出现故障后,灾备主***在停止对应用进行备份的同时,灾备主***就自动转变为指定的要备份的应用对应的灾备副***,整套以指定的要备份的应用为核心的应用备份体系处于没有灾备主***的状态,因此需要尽快确定出新的灾备主***。
步骤S402、在第二应用集群组中的所有集群的灾备***中确定新的灾备主***。
其中,新的灾备主***部署在第二集群中,第二集群中的应用对应的应用副本成为新的应用,新的灾备主***用于将新的应用备份至第二应用集群组中除第二集群以外的其它集群。
在本申请实施例中,当指定的要备份的应用出现故障,通知相对应的全部备用集群中部署的灾备副***自行确定出新的灾备主***,新的灾备主***所在的备用集群则转换为新的主集群,新的主集群中部署有指定的要备份的应用对应的应用副本,且该应用副本的运行状态始终与指定的要备份的应用保持一致,当该应用副本所在的备用集群成为新的主集群后,该应用副本也相应转换为新的指定的要备份的应用(简称为“新的应用”),由新的灾备主***将新的应用的运行状态同步备份至其它备用集群中。
需要说明的是,新的灾备主***所在备用集群是原先的备用集群中的一个,如果原先只有一个备用集群,则该备用集群中的灾备副***直接转换为灾备主集群,如果原先存在两个以上的备用集群,则这些备用集群中的灾备副***在自行确定出新的灾备主***后,新的灾备主***所在备用集群即为新的主集群,原先的备用集群中除转换为新的主集群以外的其它集群为新的备用集群(即与新的主集群相对应的备用集群)。在确定出新的灾备主***后,由新的灾备主***将新的集群中的新的应用的运行状态同步至新的备用集群中,从而实现主集群和备用集群的自动切换,确保应用同步机制的长期有效。
进一步地,两个以上的灾备副***可以采用选举机制确定出新的灾备主***,具体可以通过事先设置选举优先级的方式进行选举,即为预先为每个集群设置优先级,在选举时选取优先级最高的集群中的灾备副***作为新的灾备主***,也可以通过对集群进行性能评分的方式进行选举,即通过部署在每个备用集群中的监控组件对所在集群的硬件资源使用情况进行采集,并由灾备***根据采集到的硬件资源使用情况对所在集群的性能进行评分,选取性能评分最高的集群中的灾备副***作为新的灾备主***,还可以通过对集群进行加权评分的方式进行选举,即预先为每个集群设置权重数值,在根据采集到的硬件资源使用情况对所在集群的性能进行评分时将所得评分乘以权重数值,选取加权处理后性能评分最高的集群中的灾备副***作为新的灾备主***,本申请实施例对此不做限定。
在此,需要说明的是,灾备主***、灾备副***、主集群和备用集群都是相对于某个具体应用而言的,也就是说,一个集群可以同时作为第一应用的主集群和不同于第一应用的第二应用的备用集群,相应的,该集群中运行的灾备***同时为第一应用的灾备主***和第二应用的灾备副***。可以理解的是,要备份的应用所在的集群即为该应用对应的主集群,主集群中部署的灾备***即为该应用对应的灾备主***;该应用对应的应用副本所在的集群即为该应用的对应的备用集群,备用集群中部署的灾备***即为该应用对应的灾备副***。主集群、备用集群、灾备主***、灾备副***随要备份的应用的转变而转变,在当前主集群中的要备份的应用出现故障后,该应用对应的备用集群中的一个集群中的应用副本就会转变为新的应用,其所对应的集群会相应地转变为新的主集群,其所对应的灾备***也会相应地转变为新的灾备主***。
由前述说明可知,在集群中呈分布式部署的灾备***之间通过连接认证信息建立实时检测和通信通道,实现分布式灾备***之间的互联。在灾备主***停止对指定的要备份的应用进行同步的同时,通知对应的灾备副***代替原来的灾备主***成为新的灾备主***,相对应的,新的灾备主***所在的集群(第二集群)代替原来的主集群(第一集群)成为新的主集群对外提供服务,新的主集群中的应用副本转变为新的应用。
可以理解的是,如果主集群具有多个备用集群,当第一集群进入某个应用对应的维护状态,第一集群中运行的灾备主***告知该应用对应的所有备用集群中的灾备副***部署在主集群中的该应用出现故障,由所有备用集群中的灾备副***自行选举出新的灾备主***,且所有备用集群中的灾备副***将第一集群标记为该应用对应的维护状态。在第一集群处于该应用对应的维护状态期间,第一集群中部署的灾备***无法被选定为该应用对应的灾备主***,第一集群也无法被选定为该应用对应的主集群。也就是说,在第一集群退出该应用对应的维护状态之前,第一集群将会一直被排除在该应用对应的主集群选定范围之外。基于前述说明可知,本申请中的灾备主***、灾备副***、主集群和备用集群都是相对于某个具体应用而言的,因此即便因第一集群中要备份的应用A出现故障,使得第一集群被应用A对应的灾备副***标记为维护状态,第一集群中的灾备***仍可被选定为应用B对应的灾备主***。
当第一集群中的指定的要备份的应用出现故障,灾备副***通过选举产生新的灾备主***后,新的灾备主***所在的集群成为新的主集群,而原先的备用集群中的其它集群继续作为新的灾备主***的备用集群,以部署新的应用对应的应用副本,同时,新的灾备主***将新的应用的数据同步备份至其它备用集群。也就是说,主集群的确定依赖灾备主***的选取,灾备主***所在的集群即为主集群,因此,在所有灾备副***自行选举产生新的灾备主***时,间接实现了主集群的选举。
可以理解,由于原先的每个备用集群中的应用副本需要与原先的主集群中的应用保持同步,因此原先的每个备用集群中的应用副本之间也始终保持同步。因此在原先的主集群转换为备用集群,且某个备用集群成为新的主集群后,剩余的备用集群可以继续作为新的主集群的备用集群接收新的主集群中的灾备***同步新的应用的运行状态,实现运行状态同步的无缝切换。
图5为根据本申请的一些实施例提供的应用故障时外部访问流量切换的逻辑示意图;如图5所示,为了保证部署的应用的高可用性,一旦第一集群中指定的要备份的应用出现故障,除了需要对应用备份体系进行调整,还需要对指向指定的要备份的应用的外部访问流量进行切换,具体需要立即将该应用的访问流量切换至新的主集群中新的应用(即应用对应的应用副本)。具体的,响应于应用出现故障,灾备主***指示负载均衡组件停止向第一集群转发应用的外部访问流量。在此,可以通过在每个集群中的灾备***中配置集群管理器,对指定的要备份的应用的运行状态进行监测,当第一集群中的集群控制器监测到指定的要备份的应用出现故障时,立即自动切断负载均衡向第一集群传输指定的要备份的应用的外部访问流量;在确定新的灾备主***之后,新的灾备主***指示负载均衡组件向第二集群转发应用的外部访问流量。即在确定新的主集群后,由新的主集群中的集群控制器指示负载均衡组件将应用的外部访问流量转发至新的主集群中新的应用。
籍此,通过将主集群中指定的要备份的应用实施或周期性地同步至指定的备用集群,当主集群中指定的应用出现故障时,将访问流量无缝切换至备用集群中新的应用(即原应用对应的应用副本),由新的应用代替第一集群中的应用对访问流量进行响应,实现了外部访问流量在第一集群中的应用和新的应用之间的自动切换,故障从发生到恢复所需时间几乎为0,实现了应用的高可用性。
此外,本申请实施例中是针对指定的要备份的应用的运行状态进行监测,当监测到该应用出现故障,则仅对该应用对应的应用备份体系和指向该应用的外部访问流量进行切换,而不会对同一集群上的其他应用造成任何影响,以单个应用作为故障处理的基准单位,有效提高了故障切换机制和流量切换机制的精细度。
当第一集群中的应用恢复正常后,可以由集群管理员通过再次修改集群管理资源对象的方式,使第一集群退出该应用对应的维护状态;也可以由集群控制器检测到第一集群中的应用恢复正常后自动退出该应用对应的维护状态;第一集群在退出该应用对应的维护状态后即自动成为新的主集群的备用集群,新的灾备***将会把新的应用的运行状态同步至第一集群。
基于前述可知,在应用出现故障时,第一集群中的灾备主***成为灾备副***,第二应用集群组中的所有集群的灾备***将第一集群标记为该应用对应的维护状态,响应于应用恢复正常,灾备副***告知第二应用集群组中的所有集群的灾备***,第二应用集群组中的所有集群的灾备***去除第一集群的该应用对应的维护状态标记,新的灾备主***将新的应用备份至第一集群。也就是说,实施例中的多个集群之间的主集群、备用集群的关系是相对的,一旦主集群中的应用产生故障,该应用对应的某个备用集群将转变为新的主集群,在产生故障的应用恢复后则原先的主集群自动变为新的主集群的备用集群。籍此,使得主集群和备用集群互为备份,实现了集群间的交叉容灾。
示例性***
图6为根据本申请的一些实施例提供的一种多集群下应用故障的处理***的结构示意图;如图6所示,该多集群下应用故障的处理***中,应用部署在第一集群中,第一集群属于第一应用集群组,第一应用集群组中第一集群以外的其它集群组成第二应用集群组,第一应用集群组中的每个集群中均部署有灾备***,第一集群的灾备***作为应用的灾备主***,用于将应用备份至第二应用集群组中的所有集群;多集群下应用故障处理***包括:停止单元601,配置为响应于应用出现故障,灾备主***停止对应用进行备份;备份单元602,配置为在第二应用集群组中的所有集群的灾备***中确定新的灾备主***;新的灾备主***部署在第二集群中,第二集群中的应用对应的应用副本成为新的应用,新的灾备主***用于将新的应用备份至第二应用集群组中除第二集群以外的其它集群。
本申请实施例提供的多集群下应用故障的处理***能够实现上述任一多集群下应用故障的处理方法实施例的步骤、流程,并达到相同的技术效果,在此不再一一赘述。
示例性设备
图7为根据本申请的一些实施例提供的电子设备的结构示意图;如图7所示,该电子设备包括:
一个或多个处理器701;
计算机可读介质,可以配置为存储一个或多个程序702,一个或多个处理器701执行一个或多个程序702时,实现如下步骤:响应于应用出现故障,灾备主***停止对应用进行备份;在第二应用集群组中的所有集群的灾备***中确定新的灾备主***;新的灾备主***部署在第二集群中,第二集群中的应用对应的应用副本成为新的应用,新的灾备主***用于将新的应用备份至第二应用集群组中除第二集群以外的其它集群;其中,应用部署在第一集群中,第一集群属于第一应用集群组,第一应用集群组中除第一集群以外的其它集群组成第二应用集群组;第一应用集群组中的每个集群中部署有灾备***,第一集群的灾备***作为应用的灾备主***,用于将应用备份至第二应用集群组中的所有集群。
图8为根据本申请的一些实施例提供的电子设备的硬件结构;如图8所示,该电子设备的硬件结构可以包括:处理器801、通信接口802、计算机可读介质803和通信总线804。
其中,处理器801、通信接口802、计算机可读存储介质803通过通信总线804完成相互间的通信。
可选地,通信接口802可以为通信模块的接口,如GSM模块的接口。
其中,处理器801具体可以配置为:响应于应用出现故障,灾备主***停止对应用进行备份;在第二应用集群组中的所有集群的灾备***中确定新的灾备主***;新的灾备主***部署在第二集群中,第二集群中的应用对应的应用副本成为新的应用,新的灾备主***用于将新的应用备份至第二应用集群组中除第二集群以外的其它集群;其中,应用部署在第一集群中,第一集群属于第一应用集群组,第一应用集群组中除第一集群以外的其它集群组成第二应用集群组;第一应用集群组中的每个集群中部署有灾备***,第一集群的灾备***作为应用的灾备主***,用于将应用备份至第二应用集群组中的所有集群。
处理器801可以是通用处理器,包括中央处理器(central processing unit,简称CPU)、网络处理器(Network Processor,简称NP)等,还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
本申请实施例的电子设备以多种形式存在,包括但不限于:
(1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类终端包括:智能手机(例如:iPhone)、多媒体手机、功能性手机,以及低端手机等。
(2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类终端包括:PDA、MID和UMPC设备等,例如iPad。
(3)便携式娱乐设备:这类设备可以显示和播放多媒体内容。该类设备包括:音频、视频播放器(例如:iPod),掌上游戏机,电子书,以及智能玩具和便携式车载导航设备。
(4)服务器:提供计算服务的设备,服务器的构成包括处理器、硬盘、内存、***总线等,服务器和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。
(5)其它具有数据交互功能的电子装置。
需要指出,根据实施的需要,可将本申请实施例中描述的各个部件/步骤拆分为更多部件/步骤,也可以将两个或多个部件/步骤或者部件/步骤的部分操作组合成新的部件/步骤,以实现本申请实施例的目的。
上述根据本申请实施例的方法可在硬件、固件中实现,或者被实现为可存储在记录介质(诸如CD ROM、RAM、软盘、硬盘或磁光盘)中的软件或计算机代码,或者被实现通过网络下载的原始存储在远程记录介质或非暂时机器存储介质中并将被存储在本地记录介质中的计算机代码,从而在此描述的方法可被存储在使用通用计算机、专用处理器或者可编程或专用硬件(诸如ASIC或FPGA)的记录介质上的这样的软件处理。可以理解,计算机、处理器、微处理器控制器或可编程硬件包括可存储或接收软件或计算机代码的存储组件(例如,RAM、ROM、闪存等),当软件或计算机代码被计算机、处理器或硬件访问且执行时,实现在此描述的多集群下应用故障的处理方法。此外,当通用计算机访问用于实现在此示出的方法的代码时,代码的执行将通用计算机转换为用于执行在此示出的方法的专用计算机。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及方法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和涉及约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请实施例的范围。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其它实施例的不同之处。尤其,对于设备及***实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。
以上所描述得设备及***实施例仅仅是示意性的,其中作为分离不见说明的单元可以使或者也可以不是物理上分开的,作为单元提示的不见可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上仅为本申请的优选实施例,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (10)

1.一种多集群下应用故障的处理方法,其特征在于,应用部署在第一集群中,所述第一集群属于第一应用集群组,所述第一应用集群组中除所述第一集群以外的其它集群组成第二应用集群组;所述第一应用集群组中的每个集群中均部署有灾备***,所述第一集群的灾备***作为所述应用的灾备主***,用于将所述应用备份至所述第二应用集群组中的所有集群,所述灾备主***还用于将应用管理资源对象的内容同步至所述第二应用集群组中的所有集群的灾备***,所述第二应用集群组中的每个集群的灾备***根据应用管理资源对象的内容,通过多集群管理***下发的连接认证信息主动向所述第二应用集群组中的其他备用集群中的灾备***发出建立连接的请求,与所述其他备用集群中的灾备***建立连接关系,从而在第一应用集群组中的全部灾备***两两之间建立连接关系;所述应用管理资源对象至少包括所述第二应用集群组中的所有集群的唯一标识信息,所述多集群应用故障的处理方法包括:
响应于所述应用出现故障,所述灾备主***停止对所述应用进行备份;
在所述第二应用集群组中的所有集群的灾备***中确定新的灾备主***;所述新的灾备主***部署在第二集群中,所述第二集群中的所述应用对应的应用副本成为新的应用,所述新的灾备主***用于将所述新的应用备份至所述第二应用集群组中除所述第二集群以外的其它集群。
2.根据权利要求1所述的多集群下应用故障的处理方法,其特征在于,
所述第一集群的灾备***基于接收到的应用管理资源对象,成为所述应用的灾备主***,并根据所述应用管理资源对象的内容,确定所述第一应用集群组中的所有集群。
3.根据权利要求2所述的多集群下应用故障的处理方法,其特征在于,在所述根据所述应用管理资源对象的内容,确定所述第一应用集群组中的所有集群之后,还包括:
所述应用的灾备主***将所述应用管理资源对象的内容同步至所述第二应用集群组中的所有集群的灾备***;
所述第二应用集群组中的每个集群的灾备***根据接收到的所述应用管理资源对象的内容,获知所述第一应用集群组中的所有集群。
4.根据权利要求1所述的多集群下应用故障的处理方法,其特征在于,所述灾备主***停止对所述应用进行备份,包括:
对所述灾备主***中的集群管理资源对象的内容进行修改,以使所述灾备主***丧失对所述应用的操作权限。
5.根据权利要求1所述的多集群下应用故障的处理方法,其特征在于,在所述灾备主***停止对所述应用进行备份之后,还包括:
所述灾备主***成为灾备副***,并告知所述第二应用集群组中的所有集群的灾备***;
所述第二应用集群组中的所有集群的灾备***将所述第一集群标记为维护状态。
6.根据权利要求5所述的多集群下应用故障的处理方法,其特征在于,还包括:
响应于所述应用恢复正常,所述灾备副***告知所述第二应用集群组中的所有集群的灾备***;
所述第二应用集群组中的所有集群的灾备***去除所述第一集群的维护状态标记;
所述新的灾备主***将所述新的应用备份至所述第一集群。
7.根据权利要求1所述的多集群下应用故障的处理方法,其特征在于,还包括:
响应于所述应用出现故障,所述灾备主***指示负载均衡组件停止向所述第一集群转发所述应用的外部访问流量;
在确定新的灾备主***之后,所述新的灾备主***指示所述负载均衡组件向所述第二集群转发所述应用的外部访问流量。
8.一种多集群下应用故障的处理***,其特征在于,应用部署在第一集群中,所述第一集群属于第一应用集群组,所述第一应用集群组中除所述第一集群以外的其它集群组成第二应用集群组,所述第一应用集群组中的每个集群中均部署有灾备***,所述第一集群的灾备***作为所述应用的灾备主***,用于将所述应用备份至所述第二应用集群组中的所有集群,所述灾备主***还用于将应用管理资源对象的内容同步至所述第二应用集群组中的所有集群的灾备***,所述第二应用集群组中的每个集群的灾备***根据应用管理资源对象的内容,通过多集群管理***下发的连接认证信息主动向所述第二应用集群组中的其他备用集群中的灾备***发出建立连接的请求,与所述其他备用集群中的灾备***建立连接关系,从而在第一应用集群组中的全部灾备***两两之间建立连接关系;所述应用管理资源对象至少包括所述第二应用集群组中的所有集群的唯一标识信息,所述多集群下应用故障的处理***包括:
停止单元,配置为响应于所述应用出现故障,所述灾备主***停止对所述应用进行备份;
备份单元,配置为在所述第二应用集群组中的所有集群的灾备***中确定新的灾备主***;所述新的灾备主***部署在第二集群中,所述第二集群中的所述应用对应的应用副本成为新的应用,所述新的灾备主***用于将所述新的应用备份至所述第二应用集群组中除所述第二集群以外的其它集群。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序为如权利要求1-7任一所述的多集群下应用故障的处理方法。
10.一种电子设备,其特征在于,包括:存储器、处理器、以及存储在所述存储器中并可在所述处理器上运行的程序,所述处理器执行所述程序时实现如权利要求1-7任一所述的多集群下应用故障的处理方法。
CN202210247855.9A 2022-03-14 2022-03-14 一种多集群下应用故障的处理方法、***、介质和设备 Active CN114598594B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210247855.9A CN114598594B (zh) 2022-03-14 2022-03-14 一种多集群下应用故障的处理方法、***、介质和设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210247855.9A CN114598594B (zh) 2022-03-14 2022-03-14 一种多集群下应用故障的处理方法、***、介质和设备

Publications (2)

Publication Number Publication Date
CN114598594A CN114598594A (zh) 2022-06-07
CN114598594B true CN114598594B (zh) 2023-08-11

Family

ID=81809734

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210247855.9A Active CN114598594B (zh) 2022-03-14 2022-03-14 一种多集群下应用故障的处理方法、***、介质和设备

Country Status (1)

Country Link
CN (1) CN114598594B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116233137B (zh) * 2023-02-17 2023-11-17 通明智云(北京)科技有限公司 一种基于集群的负载分担和备份方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106945691A (zh) * 2017-04-10 2017-07-14 湖南中车时代通信信号有限公司 自动列车监控***的服务器多中心实时热备切换装置
CN112527567A (zh) * 2020-12-24 2021-03-19 北京百度网讯科技有限公司 ***容灾方法、装置、设备以及存储介质
CN113076212A (zh) * 2021-03-29 2021-07-06 青岛特来电新能源科技有限公司 一种集群的管理方法、装置、设备及计算机可读存储介质
CN113961397A (zh) * 2021-10-28 2022-01-21 航天壹进制(南京)数据科技有限公司 一种基于备份容灾***的高可用集群容灾方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7797566B2 (en) * 2006-07-11 2010-09-14 Check Point Software Technologies Ltd. Application cluster in security gateway for high availability and load sharing
US8984332B2 (en) * 2012-06-08 2015-03-17 Microsoft Technology Licensing, Llc Active/passive database management across clusters
US9842033B2 (en) * 2014-11-12 2017-12-12 Netapp, Inc. Storage cluster failure detection

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106945691A (zh) * 2017-04-10 2017-07-14 湖南中车时代通信信号有限公司 自动列车监控***的服务器多中心实时热备切换装置
CN112527567A (zh) * 2020-12-24 2021-03-19 北京百度网讯科技有限公司 ***容灾方法、装置、设备以及存储介质
CN113076212A (zh) * 2021-03-29 2021-07-06 青岛特来电新能源科技有限公司 一种集群的管理方法、装置、设备及计算机可读存储介质
CN113961397A (zh) * 2021-10-28 2022-01-21 航天壹进制(南京)数据科技有限公司 一种基于备份容灾***的高可用集群容灾方法

Also Published As

Publication number Publication date
CN114598594A (zh) 2022-06-07

Similar Documents

Publication Publication Date Title
EP3210367B1 (en) System and method for disaster recovery of cloud applications
EP2902922B1 (en) Distributed file system and data backup method for distributed file system
CN110890980A (zh) 一种主备终端切换方法、装置、服务器和***
CN111327467A (zh) 一种服务器***及其容灾备份方法和相关设备
CN103036719A (zh) 一种基于主备集群服务器的跨地区服务容灾方法及装置
CN112181660A (zh) 一种基于服务器集群的高可用方法
CN102394914A (zh) 集群脑裂处理方法和装置
CN107508694B (zh) 一种集群内的节点管理方法及节点设备
CN110979404B (zh) 列车自动监督***的双机热备***及方法
WO2016095344A1 (zh) 链路切换方法、装置及线卡
CN105429799A (zh) 服务器备份方法及装置
CN114598594B (zh) 一种多集群下应用故障的处理方法、***、介质和设备
CN102891833B (zh) 网络容灾方法和***
CN111581287A (zh) 一种数据库管理的控制方法、***和存储介质
KR102494744B1 (ko) 서비스의 연속성을 지원하는 클라우드 서버, 이를 포함하는 시스템 및 방법
CN112929438B (zh) 一种双站点分布式数据库的业务处理方法及装置
WO2021115043A1 (zh) 分布式数据库***和数据灾备演练方法
CN106027313B (zh) 网络链路容灾***及方法
CN110351122B (zh) 容灾方法、装置、***与电子设备
CN106326042B (zh) 一种运行状态确定方法及装置
CN114301763A (zh) 分布式集群故障的处理方法及***、电子设备及存储介质
JP2010231257A (ja) 高可用性システム、高可用性システムの対障害対策方法
KR20140140719A (ko) 가상 머신 동기화 장치 및 시스템과 이를 이용한 장애 처리 방법
CN114422335A (zh) 通信方法、装置、服务器及存储介质
CN107590032A (zh) 存储集群故障转移的方法及存储集群***

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant