CN113765690A - 集群切换方法、系统、装置、终端、服务器及存储介质 - Google Patents

集群切换方法、系统、装置、终端、服务器及存储介质 Download PDF

Info

Publication number
CN113765690A
CN113765690A CN202110019669.5A CN202110019669A CN113765690A CN 113765690 A CN113765690 A CN 113765690A CN 202110019669 A CN202110019669 A CN 202110019669A CN 113765690 A CN113765690 A CN 113765690A
Authority
CN
China
Prior art keywords
cluster
switching
service
target
connection
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.)
Pending
Application number
CN202110019669.5A
Other languages
English (en)
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.)
Beijing Jingdong Century Trading Co Ltd
Beijing Wodong Tianjun Information Technology Co Ltd
Original Assignee
Beijing Jingdong Century Trading Co Ltd
Beijing Wodong Tianjun Information 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 Beijing Jingdong Century Trading Co Ltd, Beijing Wodong Tianjun Information Technology Co Ltd filed Critical Beijing Jingdong Century Trading Co Ltd
Priority to CN202110019669.5A priority Critical patent/CN113765690A/zh
Publication of CN113765690A publication Critical patent/CN113765690A/zh
Pending legal-status Critical Current

Links

Images

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/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
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability

Abstract

本发明实施例公开了一种集群切换方法、系统、装置、终端、服务器及存储介质。该方法应用于与至少两个集群通讯连接的集群切换服务端,该方法可包括:分别对各集群内各组件的组件状态进行采集,根据采集到的各组件状态判断是否执行相应的集群切换任务;若是,则获取与集群切换任务对应的待切换业务、以及各集群中与集群切换任务对应的目标集群的集群连接信息;根据集群连接信息对待切换业务的集群连接配置进行变更,以使集群切换客户端在监听到集群连接配置变更时,根据获取得到的变更后的集群连接配置将待切换业务切换连接至目标集群上。本发明实施例的技术方案,可以简化集群切换的实现过程,达到了集群的快速、自动且无感知切换的效果。

Description

集群切换方法、系统、装置、终端、服务器及存储介质
技术领域
本发明实施例涉及计算机应用领域,尤其涉及一种集群切换方法、系统、装置、终端、服务器及存储介质。
背景技术
在大数据浪潮下,分布式列式存储集群是近年来比较火爆的一个集群,其也是Apache的核心开源项目之一。但若想将该集群较好地应用于企业中,仍然存在很多需要改进的地方。
示例性的,稳定性是集群的重要属性之一,其可以保证业务的高可用性,企业通常需要保证服务等级协议(service level agreement,SLA)在99.95%以上。为此,现有的集群通常被设置为主集群和备集群以实现高可用。具体的,数据库管理员(DatabaseAdministrator,DBA)在发现存在将待切换业务由主集群切换连接到备集群的集群切换需求时,其需要主动联系待切换业务所属的业务方,以使该业务方手动实现待切换业务的集群切换过程。
在实现本发明的过程中,发明人发现现有技术中存在以下技术问题:实际应用中,与集群通讯连接的待切换业务的数量通常在几百以上,上述集群切换方案的实现过程较为繁琐,可行性较差。
发明内容
本发明实施例提供了一种集群切换方法、系统、装置、终端、服务器及存储介质,解决了集群切换过程较为繁琐的问题。
第一方面,本发明实施例提供了一种集群切换方法,该方法可应用于集群切换服务端,该集群切换服务端与至少两个集群通讯连接,该方法可以包括:
分别对各集群内各组件的组件状态进行采集,并根据采集到的各组件状态判断是否执行相应的集群切换任务;
若是,则获取与集群切换任务对应的待切换业务、以及各集群中与集群切换任务对应的目标集群的集群连接信息;
根据集群连接信息对待切换业务的集群连接配置进行变更,以使集群切换客户端在监听到集群连接配置变更时,根据获取得到的变更后的集群连接配置将待切换业务切换连接至目标集群上。
第二方面,本发明实施例还提供了一种集群切换方法,该方法应用于集群切换客户端,可以包括:
在监听到隶属于集群切换客户端的待切换业务的集群连接配置变更的变更触发事件时,从集群切换服务端中获取到与变更触发事件对应的变更后的集群连接配置;
根据变更后的集群连接配置创建目标连接,并根据目标连接将待切换业务切换连接至目标连接对应的目标集群上;
其中,变更后的集群连接配置包括集群切换服务端根据集群连接信息对变更前的集群连接配置进行变更后的配置,集群连接信息可包括集群切换服务端根据采集到的与集群切换服务端通讯连接的至少两个集群内各组件的组件状态确定的信息。
第三方面,本发明实施例还提供了一种集群切换系统,可以包括集群切换服务端和集群切换客户端,该集群切换服务端与至少两个集群通讯连接;
集群切换服务端,用于分别对各集群内组件的组件状态进行采集,在根据采集到的各组件状态确定执行相应的集群切换任务时,获取与集群切换任务对应的待切换业务、以及各集群中与集群切换任务对应的目标集群的集群连接信息,并根据集群连接信息对待切换业务的集群连接配置进行变更;
集群切换客户端,用于在监听到集群连接配置变更的变更触发事件时,根据从集群切换服务端中获取的与变更触发事件对应的变更后的集群连接配置创建目标连接,并根据目标连接将待切换业务切换连接至目标集群上。
第四方面,本发明实施例还提供了一种集群切换装置,该装置配置于集群切换服务端,该集群切换服务端与至少两个集群通讯连接,可以包括:
任务判断模块,用于分别对各集群内各组件的组件状态进行采集,并根据采集到的各组件状态判断是否执行相应的集群切换任务;
信息获取模块,用于若是,则获取与集群切换任务对应的待切换业务、以及各集群中与集群切换任务对应的目标集群的集群连接信息;
第一集群切换模块,用于根据集群连接信息对待切换业务的集群连接配置进行变更,以使集群切换客户端在监听到集群连接配置变更时,根据获取得到的变更后的集群连接配置将待切换业务切换连接至目标集群上。
第五方面,本发明实施例还提供了一种集群切换装置,该装置配置于集群切换客户端,可以包括:
配置获取模块,用于在监听到隶属于集群切换客户端的待切换业务的集群连接配置变更的变更触发事件时,从集群切换服务端中获取与变更触发事件对应的变更后的集群连接配置;
第二集群切换模块,用于根据变更后的集群连接配置创建目标连接,根据目标连接将待切换业务切换连接至目标连接对应的目标集群;
其中,变更后的集群连接配置包括集群切换服务端根据集群连接信息对变更前的集群连接配置进行变更后的配置,集群连接信息可包括集群切换服务端根据采集到的与集群切换服务端通讯连接的至少两个集群内各组件的组件状态确定的信息。
第六方面,本发明实施例还提供了一种服务器,该服务器可以包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现本发明实施例一或是实施例二所提供的集群切换方法。
第七方面,本发明实施例还提供了一种终端,该终端可以包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现本发明实施例三所提供的集群切换方法。
第八方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现本发明任意实施例所提供的集群切换方法。
本发明实施例的技术方案,集群切换服务端通过对与该集群切换服务端通讯连接的各集群内各组件的组件状态进行采集,并根据采集结果判断是否执行相应的集群切换任务,由此解决了因需要人力值守来监测集群是否出现故障而带来的人力成本较高的问题,实现了在集群出现故障时自动且及时感知的效果;在需要执行与该组件状态对应的待切换任务时,可以先获取与该待切换任务相匹配的待切换业务、以及各集群中与集群切换任务对应的目标集群的集群连接信息,进而可根据该集群连接信息对该待切换业务的集群连接配置进行变更,这样一来,集群切换客户端在监听到集群连接配置变更时,可根据从集群切换服务端获取到的变更后的集群连接配置将待切换业务切换连接至目标集群上,由此解决了因需业务方手动变更集群连接配置和重启业务客户端而带来的可行性较差的问题。上述技术方案,通过自动及时地感知集群的健康状态,并在与待切换业务连接的集群出现故障时,将待切换业务自动快速地切换到目标集群,这一集群切换过程无需涉及到任何手动过程,由此简化了集群切换的实现过程,达到了集群的快速、自动且无感知切换的效果。
附图说明
图1是本发明实施例一中的一种集群切换方法的流程图;
图2是本发明实施例一中的一种集群切换方法中健康感知模块的示意图;
图3是本发明实施例二中的一种集群切换方法的流程图;
图4是本发明实施例二中的一种集群切换方法中策略存储模块的示意图;
图5是本发明实施例二中的一种集群切换方法中策略管理模块的示意图;
图6是本发明实施例三中的一种集群切换方法的流程图;
图7是本发明实施例三中的一种集群切换方法中集群切换客户端的示意图;
图8是本发明实施例三中的一种集群切换方法中各部分相互配合的示意图;
图9是本发明实施例四中的一种集群切换系统的结构框图;
图10是本发明实施例五中的一种集群切换装置的结构框图;
图11是本发明实施例六中的一种集群切换装置的结构框图;
图12是本发明实施例七中的一种服务器的结构示意图;
图13是本发明实施例八中的一种终端的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
在介绍本发明实施例之前,先对本发明实施例的应用场景进行示例性说明:正如背景技术所言,为了保证集群的高可用性,该集群通常被设置为集群结构完全相同的主集群和备集群,实际应用中,可以将当前与业务客户端通讯连接的集群作为主集群,并且将另一个集群作为备集群,业务客户端可以从主集群中读写数据。当然,主集群和备集群是相对概念,当主集群故障而致使业务客户端需要与备集群通讯连接来读取数据时,此时的主集群和备集群相互交换。
需要说明的是,当采用现有技术中的集群切换方案来切换集群时,因为其需要DBA在主动发现故障后,主动联系业务客户端所属的业务方,以使该业务方手动更改集群连接配置,并且手动重启该业务客户端,该集群连接配置可以是为了实现业务客户端与集群间的通讯连接而设置的一些配置。显然,该集群切换方案无法自动及时感知主集群故障并且亦无法自动切换到备集群上,而且需要人力值守来监测主集群是否出现故障,人力成本较高;从DBA发现主集群故障到通知业务方执行相应操作的处理周期过程过长,这对于那些与金融、交易挂钩的重要程度较高的业务而言,业务方显然是无法接受的,这很可能带来重大损失;除此之外,对于规模较大的集群而言,比如那些业务在几百、甚至是几千以上的集群而言,这种集群实现方案难以实现。
为了解决上述问题,发明人在对现有技术进行了仔细研究的基础上,提出了下述本发明各实施例所述的集群切换方法,该集群切换方法中的集群可以是各种集群结构下的集群,比如分布式集群、非关系型集群(Not Only SQL,NoSQL)、分布式NoSQL、Hbase等,在此未做具体限定。该集群的数量可以是至少两个,它们可以包括主集群和备集群,其中,主集群可以是业务当前所在的集群,而其余的集群可以称为备集群,即本发明各实施例所述的目标集群即为业务当前未在的各集群中的某个集群。
实施例一
图1是本发明实施例一中提供的一种可应用于集群切换服务端的集群切换方法的流程图,该集群切换服务端可以与至少两个集群通讯连接。本实施例可适用于自动感知集群故障并且自动执行集群切换的情况。该方法可以由本发明实施例提供的集群切换装置来执行,该装置可以由软件和/或硬件的方式实现,该装置可以配置在集群切换服务端上,该服务端可以集成在服务器上。
参见图1,本发明实施例的方法具体包括如下步骤:
S110、分别对各集群内各组件的组件状态进行采集,并根据采集到的各组件状态判断是否执行相应的集群切换任务。
其中,每个集群可以包括多个组件,该组件可以是该集群的组成部分之一,在实际应用中,该组件可以是作为核心节点的起领导作用的主节点(Master)、作为工作节点的起执行作用的从节点(Slave)、数据块、数据区域性能等等,在此未做具体限定。分别对每个集群内的各组件的组件状态进行采集,该组件状态可以呈现出相应组件和/或整个集群的健康状态,比如主节点是否存在宕机现象、从节点是否存在宕机现象、集群是否有数据块丢失、集群内的数据区域是否有下线、集群性能是否有所下降等等。
进一步地,根据采集到的每个集群内的各组件状态可以判断业务当前所在的集群是否处于健康状态,业务当前未在的集群是否处于健康状态。需要说明的是,后文为了简化表述,将业务当前所在的集群称为主集群,且将业务当前未在的集群成为备集群。在实际应用中,可选的,主集群的数量可以是一个,这是为了将全部的业务集中在一个集群中便于管理;备集群的数量可以是至少一个,这是为了保证在主集群出现故障时必定存在一个备集群进行切换,当然,通常情况下,一个备集群足以应用。在此基础上,根据各集群的健康状态可以判断是否执行相应的集群切换任务,该集群切换任务可以呈现出存在集群切换需求的待切换业务、该待切换业务待切换到哪个集群上等等。示例性的,如果主集群存在故障,可以执行相应的集群切换任务;如果备集群存在故障,可以仅是发出提示信息,并且无需执行集群切换任务。
S120、若是,则获取与集群切换任务对应的待切换业务、以及各集群中与集群切换任务对应的目标集群的集群连接信息。
其中,若根据各组件状态确定需要执行相应的集群切换任务,则可以获取与该集群切换任务对应的待切换业务、以及各集群中与该集群切换任务对应的目标集群的集群连接信息,该集群切换任务是与各组件状态相匹配的切换任务,这是因为不同的组件状态所对应的集群切换任务可能存在差异性。具体的,待切换业务可以是通讯连接至主集群上的各业务中存在切换需求的业务,或是说在主集群的存储性能出现故障的业务,比如因主节点宕机、从节点宕机、数据块丢失、数据区域下线、集群性能下降等原因而致使存储性能受到影响的业务。目标集群是各集群中待切换业务待切换连接到的集群,或说待切换业务在其内的存储性能并未存在任何故障的集群。集群连接信息是为了将待切换业务成功连接至目标集群上所需的与连接有关的信息,比如目标集群的URL、用户名、密码等,待切换业务根据该集群连接信息可以连接至目标集群上。
S130、根据集群连接信息对待切换业务的集群连接配置进行变更,以使集群切换客户端在监听到集群连接配置变更时,根据获取得到的变更后的集群连接配置将待切换业务切换连接至目标集群上。
其中,集群连接配置中存储有待切换业务当前正在连接的集群(即主集群)的集群连接信息,这意味着在根据集群连接信息对待切换业务的集群连接配置进行变更前,该集群连接配置中存储的是主集群的连接信息。为了将待切换业务由主集群切换连接至目标集群,在此可以根据目标集群的集群连接信息对待切换业务的集群连接配置进行变更,这样一来,集群连接配置中主集群的连接配置变更为指向目标集群的连接配置,该主集群也为根据集群连接信息对集群连接配置进行变更之前,与待切换业务相连接的集群。
集群切换服务端在对集群连接配置进行变更后,针对与该集群连接服务端相匹配的、可以设置在业务客户端中的集群连接客户端,该业务客户端可以是待切换业务所属的客户端,该集群连接客户端可以对集群切换服务端中待切换业务的集群连接配置进行监听,并在监听到其出现变更时可以根据从集群切换服务端中获取到的变更后的集群连接配置将待切换业务切换连接至目标集群上。具体的,其可以根据变更后的集群连接配置创建目标连接,并根据该目标连接将待切换业务切换连接至目标连接对应的目标集群上,该目标连接的创建过程可以理解为业务客户端的重启过程,由此解决了需要业务方手动更改集群连接配置、并手动重启业务客户端而带来的操作较为繁琐的问题。
本发明实施例的技术方案,集群切换服务端通过对与该集群切换服务端通讯连接的各集群内各组件的组件状态进行采集,并根据采集结果判断是否执行相应的集群切换任务,由此解决了因需要人力值守来监测集群是否出现故障而带来的人力成本较高的问题,实现了在集群出现故障时自动且及时感知的效果;在需要执行与该组件状态对应的待切换任务时,可以先获取与该待切换任务相匹配的待切换业务、以及各集群中与集群切换任务对应的目标集群的集群连接信息,进而可根据该集群连接信息对该待切换业务的集群连接配置进行变更,这样一来,集群切换客户端在监听到集群连接配置变更时,可根据从集群切换服务端获取到的变更后的集群连接配置将待切换业务切换连接至目标集群上,由此解决了因需业务方手动变更集群连接配置和重启业务客户端而带来的可行性较差的问题。上述技术方案,通过自动及时地感知集群的健康状态,并在与待切换业务连接的集群出现故障时,将待切换业务自动快速地切换到目标集群,这一集群切换过程无需涉及到任何手动过程,由此简化了集群切换的实现过程,达到了集群的快速、自动且无感知切换的效果。
在此基础上,一种可选的技术方案,分别对各集群内各组件的组件状态进行采集,具体可以包括:在监测到集群启动的启动触发事件时,通过启动与该启动触发事件对应的调度器来拉起相应的采集器,并基于拉起后的采集器分别对各集群内各组件的组件状态进行采集。其中,启动触发事件是在集群启动后触发的事件,调度器和采集器可以认为是计算机程序里面的某个线程,在实际应用中,在监测到启动触发事件时,可以先启动与其相应的调度器所在的线程,以便基于该调度器所在的线程调用相应的采集器所在的线程,或是说基于启动后的调度器来拉起相应的采集器,进而根据该采集器所在的线程、或是说拉起后的采集器对各集群内各组件的组件状态进行采集。
一种可选的技术方案,分别对各集群内各组件的组件状态进行采集,具体可以包括:分别对各集群内分布式文件系统中主服务的主服务状态和数据块的数据块状态、以及各集群内数据区域的区域状态中的至少一个进行采集。其中,分布式文件系统(HDFS)作为集群的底层存储底座,其内可以存储有持久化的数据块,其对集群的健康状态起着至关重要的作用,因此可以对HDFS中主服务的主服务状态进行监控,由此判断主服务是否能够正常工作。在基于HDFS存储数据时,其内的服务器节点可能由于硬件故障而导致短暂的数据块丢失,因此可以对HDFS中数据块的数据块状态进行监控,由此判断是否存在数据块丢失的问题。除此之外,集群内的数据区域如果处于rit状态可能会导致该数据区域因不可用而无法对外服务,因此可以对各集群的数据区域的区域状态进行监控,由此判断业务方是否可以从数据区域中读取到数据。具体的,rit状态是集群(即数据库)的中间状态,以NoSQL为例,其属于分布式数据库,其下的每个数据区域分别布置在与该数据区域相应的集群服务器上,在因某种原因导致该数据区域上的rit并未在该集群服务器上时,此时的业务方对该数据区域不可见,即业务方无法从该数据区域中读取到任何数据。上述几种组件状态是实际应用中比较容易对集群的健康状态造成影响的情况,这些组件组态的有效采集有利于对集群的健康状态进行准确判断。当然,上述几种组件状态仅是可采集的组件状态的示例性说明,其余可以呈现出集群的健康状态的组件状态依然处于采集范围内,在此未做具体限定。
为了更好地理解组件状态的采集过程,下面结合具体示例对其进行示例性的说明。示例性的,如图2所示,该组件状态的采集过程可以基于设置于集群切换服务端中的健康感知模块(healthMonitor)来实现,该健康感知模块可以是运行在各集群内的软件和/或硬件。具体的,健康感知模块监测到集群启动后,通过启动调度器来拉起采集器,并基于拉起后的采集器基于预设时间间隔对各集群的各组件状态进行采集,比如HDFS的主服务是否宕机、HDFS的数据块是否丢失、集群内的数据区域(图2以集群为NoSQL为例进行展示)是否不可用等等可以呈现出集群的健康状态的组件状态。实际应用中,上述预设时间间隔可以是3秒、5秒、7秒等等,由此实现了在集群出现故障时自动且及时感知的效果。进一步,针对健康感知模块采集到的组件状态,其可以将这些组件状态组装成预先设置的结构化的数据来发送给策略存储模块(PolicyStore)、策略管理模块(PolicyServer)等等,以便执行后续步骤。
实施例二
图3是本发明实施例二中提供的一种集群切换方法的流程图。本实施例以上述各技术方案为基础进行优化。在本实施例中,可选的,根据采集到的各组件状态判断是否执行相应的集群切换任务,具体可包括:判断采集到的各组件状态是否满足预先配置的集群切换策略,集群切换策略包括单业务切换策略、局部业务切换策略和/或全部业务切换策略;若是,则根据各集群切换策略中与组件状态对应的目标切换策略,确定执行与目标切换策略相应的集群切换任务。其中,与上述各实施例相同或相应的术语的解释在此不再赘述。
参见图3,本实施例的方法具体可以包括如下步骤:
S210、分别对各集群内各组件的组件状态进行采集,判断采集到的各组件状态是否满足预先配置的集群切换策略,集群切换策略包括单业务切换策略、局部业务切换策略和/或全部业务切换策略。
其中,集群切换策略是预先设置的用于根据组件状态确定相应的集群切换任务的策略,该集群切换策略可以包括单业务切换策略、局部业务切换策略、全部业务切换策略等等,这是因为主集群出现故障时,可能是主集群中的单个、部分或是全部组件出现故障,即主集群的性能下降、局部不可用或全部故障,因此可根据不同的故障情况预先配置各种集群切换策略。具体的,单业务切换策略是根据各组件状态确定当前连接在主集群上的各业务中只有一个业务需要进行集群切换的策略,相应的,局部切换策略是根据各组件状态确定当前连接在主集群上的各业务中至少两个且并非全部的业务需要进行集群切换的策略,全部切换策略是根据各组件状态确定当前连接在主集群上的全部业务需要进行集群切换的策略。由于集群切换策略可以理解为组件状态和集群切换任务间的对应关系,因此可以通过判断该集群切换策略中是否存在与采集到的组件状态相应的组件状态来确定采集到的各组件状态是否满足该集群切换策略,具体来说为是否满足各集群切换策略中的某一个。
S220、若是,则根据各集群切换策略中与组件状态对应的目标切换策略,确定执行与目标切换策略相应的集群切换任务。
其中,若采集到的各组件状态满足该集群切换策略,则可以从各集群切换策略中筛选出与该组件状态相匹配的目标切换策略,该目标切换策略可以表示出待切换业务是哪个业务、该待切换业务待切换到哪个集群中等等信息。进而,可以根据该目标切换策略确定执行与该目标切换策略相应的集群切换任务。
S230、在确定集群切换任务后,获取与集群切换任务对应的待切换业务、以及各集群中与集群切换任务对应的目标集群的集群连接信息。
S240、根据集群连接信息对待切换业务的集群连接配置进行变更,以使集群切换客户端在监听到集群连接配置变更时,根据获取得到的变更后的集群连接配置将待切换业务切换连接至目标集群上。
本发明实施例的技术方案,通过判断采集得到的各组件状态是否满足预先配置的集群切换策略,并在判断结果为是时确定执行在各集群切换策略中与各组件状态对应的目标切换策略所匹配的集群切换任务,其将各组件状态和预先配置的集群切换策略进行比较,由此达到了集群切换任务的便捷、快速且准确确定的效果。
一种可选的技术方案,分别对各集群内各组件的组件状态进行采集,可以包括:基于预设时间间隔对各集群内各组件的组件状态分别进行采集;相应的,判断采集到的各组件状态是否满足预先配置的集群切换策略,可以包括:将在每个预设时间间隔内采集得到的各组件状态分别作为一组组件状态,判断在预设时间窗口采集到的各组组件状态是否均满足预先配置的同一集群切换策略。这样设置的好处在于,避免因为某次的错误采集、或是某种极少发生的特殊情况的出现等原因导致后续的集群切换策略判断错误。示例性的,假设预设时间间隔是5秒,预设时间窗口是30秒,且在30秒内采集到的6组组件状态全部满足局部业务切换策略,则认为各组组件状态满足局部业务切换策略,此时主集群才是真的出现故障。
一种可选的技术方案,在分别对各集群内各组件的组件状态进行采集之后,该集群切换方法还可包括:将采集到的各组件状态上传至预先设置的数据存储中心中;相应的,判断采集到的各组件状态是否满足预先配置的集群切换策略,可以包括:在监测到数据存储中心内的组件状态更新的更新触发事件时,从数据存储中心获取预先配置的集群切换策略、以及与更新触发事件对应的各组件状态,并判断与更新触发事件对应的各组件状态是否满足集群切换策略。即,采集到的组件状态和预先配置的集群切换策略均存储于数据存储中心中,后续在判断是否满足集群切换策略的步骤前,先从数据存储中心获取更新的/新增的组件状态和集群切换策略。这样设置的好处在于,数据存储中心可以实现数据的持久化存储,这意味着即使集群切换服务端所在的服务器突然掉电,采集到的各组件状态和预先配置的集群切换策略因为已经上传至数据存储中心而不会出现数据丢失的问题,由此保证了集群切换服务端的稳定性。在实际应用中,该数据存储中心可以是zookeeper(一个分布式应用程序协调服务)、MySQL等。
为了更好地理解集群切换任务的确定过程,下面结合具体示例对其进行示例性的说明。示例性的,如图4和图5所示,集群切换任务的确定过程可以由设置于集群切换服务端中的策略存储模块(PolicyStore)和策略管理模块(PolicyServer)相互配合来实现。具体的,针对策略存储模块,其中可以存储有经由健康感知模块上报过来的各组件状态、经由策略管理模块预先配置的集群切换策略、各集群的集群连接信息、业务当前连接的集群等等数据,并且这些数据可以持久化存储在数据存储中心。针对策略管理模块,其可以接收到DBA通过策略配置器配置的集群切换策略、通过策略触发器对满足集群切换策略的各组件状态触发集群切换任务、以及根据触发的集群切换任务对配置中心中的集群连接配置由指向主集群变更为指向备集群,等待集群切换客户端(USER API Client)从该配置中心拉取变更后的集群连接配置。
实施例三
图6是本发明实施例三中提供的一种可应用于集群切换客户端的集群切换方法的流程图。本实施例可适用于根据获取得到的变更后的信息配置中心自动实现集群切换的情况。该方法可以由本发明实施例提供的集群切换装置来执行,该装置可以由软件和/或硬件的方式实现,该装置可以配置在集群切换客户端上,该客户端可以集成在各种终端上。
参见图6,本发明实施例的方法具体包括如下步骤:
S310、在监听到隶属于所述集群切换客户端的待切换业务的集群连接配置变更的变更触发事件时,从集群切换服务端中获取与所述变更触发事件对应的变更后的集群连接配置,其中,变更后的集群连接配置包括集群切换服务端根据集群连接信息对变更前的集群连接配置进行变更后的配置,集群连接信息包括集群切换服务端根据采集到的与集群切换服务端通讯连接的至少两个集群内各组件的组件状态确定的信息。
其中,集群切换客户端可以是某个待切换业务所在的用于实现集群切换的客户端,不同的待切换业务所在的集群切换客户端可能相同也可能不同。集群切换客户端可以对集群切换服务端中与该集群切换客户端关联的待切换业务的集群连接配置进行监听,并在监听到其出现变更时,可以从集群切换服务端中获取到该待切换业务的变更后的集群连接配置。需要说明的是,变更后的集群连接配置的确定过程已在实施例一、二中进行详细阐述,在此不再赘述。
S320、根据变更后的集群连接配置创建目标连接,根据目标连接将待切换业务切换连接至目标连接对应的目标集群上。
其中,集群切换客户端可以根据变更后的集群连接配置创建目标连接,该目标连接将待切换业务由主集群变更指向为目标集群,进而根据该目标连接将待切换业务切换连接至目标连接对应的目标集群上,该目标连接的创建过程也可以理解为业务客户端的重启过程,通过重启业务客户端以连接到目标集群上,该业务客户端可以是待切换业务所在的用于实现业务功能的客户端,集群切换客户端可以配置在该集群切换客户端中。
本发明实施例的技术方案,在监听到隶属于集群切换客户端的待切换业务的集群连接配置变更的变更触发事件时,根据从集群切换服务端中获取到的与变更触发事件对应的变更后的集群连接配置创建目标连接,并根据该目标连接将待切换业务切换连接至该目标连接对应的目标集群。上述技术方案,解决了需要业务方手动更改集群连接配置、并手动重启业务客户端而带来的集群切换过程较为繁琐的问题,达到了无感知且平滑地切换集群的效果。
在此基础上,一种可选的技术方案,在根据目标连接将待切换业务切换连接至目标连接对应的目标集群上之后,该集群切换方法还可以包括:通过回调信息发送接口发送目标信息,该目标信息可包括集群切换原因、集群切换策略、集群切换发生时间和集群切换耗费时间中的至少一个,该目标信息的发送方式可以是邮件、短信、微信等等,在此未做具体限定。这样一来,DBA在接收到该目标信息后,可以及时地对本次故障进行排除。
为了更好地理解上述步骤的具体实现过程,下面结合具体示例对本实施例的集群切换方法进行示例性的说明。示例性的,如图7所示,集群切换客户端基于配置监听器对策略管理模块中的配置中心进行监听,并在监听到与该集群切换客户端关联的待切换业务的集群连接配置变更时,从该配置中心中拉取该变更后的集群连接配置,并基于连接管理器创建出与该变更后的集群连接配置相应的目标连接,根据该目标连接将待切换业务由主集群变更指向为备集群。示例性的,图7中的虚线3是待切换业务的初始连接(即老连接),实线4是待切换业务的目标连接(即新连接)。
为了从整体上更好地理解集群切换客户端和集群切换服务端在集群切换过程中所起的作用,下面结合上述各实施例中的示例性说明进行阐述。示例性的,如图8所示,图中两个虚线框为两个列式存储集群的主集群和备集群,在此以NoSQL是HBase为例进行展示,虚线框中的zookeeper是列式存储集群中非常重要的一个组件。DBA通过服务中心(ServiceCenter)添加集群切换策略(Change Policy),策略管理模块将该集群切换策略存储至策略存储模块中(即数字2,下载读&写策略/load read&write policy),运行在主备集群内的健康感知模块将以心跳(heartbeat)采集到的组件状态上报给健康存储模块;集群切换客户端(即用户客户端,USER API Client)监听到策略管理模块中的集群连接配置变更时,从集群管理模块中获取变更后的集群连接配置(autoRedirect)(即数字1,下载读&写策略/load read&write policy),并通过该集群连接配置创建目标连接(即数字3,连接至集群&得到区域位置&得到同步数据/connect to cluster&get region location&waitsync data),进而在创建连接后从区域从节点(Region Server)中读取数据(即数字4,readdata from Region Server),其中Region Server是分布式列式集群中对外提供服务的节点,其相当于Slave。上述技术方案,通过自动感知集群故障并且自动平滑切换集群的方式,由此实现了集群的高可用性以及数据的低延迟。
实施例四
图9是本发明实施例四中提供的一种集群切换系统的结构框图。如图9,该集群切换系统可以包括集群切换服务端410和集群切换客户端420,其中,集群切换服务端410与至少两个集群通讯连接;集群切换服务端410,用于分别对各集群内组件的组件状态进行采集,在根据采集到的各组件状态确定执行相应的集群切换任务时,获取与集群切换任务对应的待切换业务、以及各集群中与集群切换任务对应的目标集群的集群连接信息,并根据集群连接信息对待切换业务的集群连接配置进行变更;集群切换客户端420,用于在监听到集群连接配置变更的变更触发事件时,根据从集群切换服务端410中获取的与变更触发事件对应的变更后的集群连接配置创建目标连接,并根据目标连接将待切换业务切换连接至目标集群上。需要说明的是,集群切换服务端410和集群切换客户端420的具体实现过程以及其余的可实现过程已在上述各实施例中进行详细阐述,在此不再赘述。上述系统,通过集群切换服务端和集群切换客户端相互配合,解决了集群切换过程较为繁琐的问题,达到了集群的快速、自动且无感知切换的效果。
实施例五
图10为本发明实施例五提供的配置于集群切换服务端上的集群切换装置的结构框图,该集群切换服务端与至少两个集群通讯连接,该装置用于执行上述实施例一或是实施例二所提供的集群切换方法。该装置与上述相应的实施例的集群切换方法属于同一个发明构思,在集群切换装置的实施例中未详尽描述的细节内容,可以参考上述集群切换方法的实施例。参见图10,该装置具体可包括:任务判断模块510、信息获取模块520和第一集群切换模块530。其中,
任务判断模块510,用于分别对各集群内各组件的组件状态进行采集,并根据采集到的各组件状态判断是否执行相应的集群切换任务;
信息获取模块520,用于若是,则获取与集群切换任务对应的待切换业务、以及各集群中与集群切换任务对应的目标集群的集群连接信息;
第一集群切换模块530,用于根据集群连接信息对待切换业务的集群连接配置进行变更,以使集群切换客户端在监听到集群连接配置变更时,根据获取得到的变更后的集群连接配置将待切换业务切换连接至目标集群上。
可选的,任务判断模块510,具体可包括:第一组件状态采集单元,用于在监测到集群启动的启动触发事件时,通过启动与启动触发事件对应的调度器来拉起相应的采集器,基于拉起后的采集器分别对各集群内各组件的组件状态进行采集。
可选的,任务判断模块510,具体可包括:第二组件状态采集单元,用于分别对各集群内分布式文件系统中主服务的主服务状态和数据块的数据块状态、以及各集群内数据区域的区域状态中的至少一个进行采集。
可选的,任务判断模块510,具体可包括:策略判断单元,用于判断采集到的各组件状态是否满足预先配置的集群切换策略,其中,集群切换策略包括单业务切换策略、局部业务切换策略、和/或全部业务切换策略;任务确定单元,用于若是,则根据各集群切换策略中与组件状态对应的目标切换策略,确定执行与目标切换策略相应的集群切换任务。
在此基础上,可选的,任务判断模块510,具体可以包括:第三组件状态采集单元,用于基于预设时间间隔对各集群内各组件的组件状态分别进行采集;
相应的,策略判断单元,具体可以用于:将在每个预设时间间隔内采集得到的各组件状态分别作为一组组件状态,判断在预设时间窗口采集到的各组组件状态是否均满足预先配置的同一集群切换策略。
在此基础上,可选的,在上述装置的基础上,该装置还可包括:组件状态存储模块,用于在分别对各集群内各组件的组件状态进行采集之后,将采集到的各组件状态上传至预先设置的数据存储中心中;
相应的,策略判断单元,具体可以用于:在监测到数据存储中心内的组件状态更新的更新触发事件时,从数据存储中心获取预先配置的集群切换策略、以及与更新触发事件对应的各组件状态,并判断与更新触发事件对应的各组件状态是否满足集群切换策略。
可选的,集群包括分布式集群,和/或,至少两个集群包括主集群和备集群,在根据集群连接信息对待切换业务的集群连接配置进行变更之前,与待切换业务相连接的集群是主集群,目标集群是备集群。
本发明实施例五提供的集群切换装置,集群切换服务端通过任务判断模块对与该集群切换服务端通讯连接的各集群内各组件的组件状态进行采集,根据采集结果判断是否执行相应的集群切换任务,由此解决了因为需要人力值守来监测集群是否出现故障而带来的人力成本较高的问题,实现了在集群出现故障时自动且及时感知的效果;通过信息获取模块和第一集群切换模块相互配合,在需要执行与该组件状态对应的待切换任务时,可以先获取与该待切换任务相匹配的待切换业务、以及各集群中与集群切换任务对应的目标集群的集群连接信息,进而可根据该集群连接信息对该待切换业务的集群连接配置进行变更,这样一来,集群切换客户端在监听到集群连接配置变更时,可根据从集群切换服务端获取到的变更后的集群连接配置将待切换业务切换连接至目标集群上,由此解决了因需业务方手动变更集群连接配置和重启业务客户端而带来的可行性较差的问题。上述装置,通过自动及时地感知集群的健康状态,并且在与待切换业务连接的集群出现故障时,将待切换业务自动快速地切换到目标集群,这一集群切换过程无需涉及到任何手动过程,由此简化了集群切换的实现过程,达到了集群的快速、自动且无感知切换的效果。
本发明实施例所提供的集群切换装置可执行本发明实施例一或是实施例二所提供的集群切换方法,具备执行方法相应的功能模块和有益效果。
值得注意的是,上述集群切换装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
实施例六
图11为本发明实施例六提供的可配置于集群切换客户端上的集群切换装置的结构框图,该装置用于执行上述实施例三所提供的集群切换方法。该装置与上述实施例三的集群切换方法属于同一个发明构思,在集群切换装置的实施例中未详尽描述的细节内容,可以参考上述集群切换方法的实施例。参见图11,该装置具体可包括:配置获取模块610和第二集群切换模块620。
其中,配置获取模块610,用于在监听到隶属于集群切换客户端的待切换业务的集群连接配置变更的变更触发事件时,从集群切换服务端中获取与变更触发事件对应的变更后的集群连接配置;
第二集群切换模块620,用于根据变更后的集群连接配置创建目标连接,根据目标连接将待切换业务切换连接至目标连接对应的目标集群。
可选的,在上述装置的基础上,该装置还可以包括:信息发送模块,用于通过回调信息发送接口发送目标信息,目标信息包括集群切换原因、集群切换策略、集群切换发生时间和集群切换耗费时间中的至少一个。
本发明实施例六提供的集群切换装置,通过配置获取模块和第二集群切换模块相互配合,在监听到隶属于集群切换客户端的待切换业务的集群连接配置变更的变更触发事件时,根据从集群切换服务端中获取到的与变更触发事件对应的变更后的集群连接配置创建目标连接,并根据该目标连接将待切换业务切换连接至该目标连接对应的目标集群。上述装置,解决了需要业务方手动更改集群连接配置、并手动重启业务客户端而带来的集群切换过程较为繁琐的问题,达到了无感知且平滑地切换集群的效果。
本发明实施例所提供的集群切换装置可执行本发明实施例三所提供的集群切换方法,具备执行方法相应的功能模块和有益效果。
值得注意的是,上述集群切换装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
实施例七
图12为本发明实施例七提供的一种服务器的结构示意图,如图12所示,该服务器包括存储器710、处理器720、输入装置730和输出装置740。服务器中的处理器720的数量可以是一个或多个,图12中以一个处理器720为例;服务器中的存储器710、处理器720、输入装置730和输出装置740可以通过总线或其它方式连接,图12中以通过总线750连接为例。
存储器710作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例一或是实施例二中的集群切换方法对应的程序指令/模块(例如,集群切换装置中的任务判断模块510、信息获取模块520和第一集群切换模块530)。处理器720通过运行存储在存储器710中的软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述的集群切换方法。
存储器710可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据服务器的使用所创建的数据等。此外,存储器710可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器710可进一步包括相对于处理器720远程设置的存储器,这些远程存储器可以通过网络连接至设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置730可用于接收输入的数字或字符信息,以及产生与装置的用户设置以及功能控制有关的键信号输入。输出装置740可包括显示屏等显示设备。
实施例八
图13为本发明实施例八提供的一种终端的结构示意图,如图13所示,该终端包括存储器810、处理器820、输入装置830和输出装置840。终端中的处理器820的数量可以是一个或多个,图13中以一个处理器820为例;终端中的存储器810、处理器820、输入装置830和输出装置840可以通过总线或其它方式连接,图13中以通过总线850连接为例。
存储器810作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,比如本发明实施例三中的集群切换方法对应的程序指令/模块(例如,集群切换装置中的配置获取模块610和第二集群切换模块620)。处理器820通过运行存储在存储器810中的软件程序、指令以及模块,从而执行终端的各种功能应用以及数据处理,即实现上述的集群切换方法。
存储器810可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器810可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器810可进一步包括相对于处理器820远程设置的存储器,这些远程存储器可以通过网络连接至设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置830可用于接收输入的数字或字符信息,以及产生与装置的用户设置以及功能控制有关的键信号输入。输出装置840可包括显示屏等显示设备。
实施例九
本发明实施例九提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种可应用于集群切换服务端的集群切换方法,该集群切换服务端与至少两个集群通讯连接,该方法包括:
分别对各集群内各组件的组件状态进行采集,并根据采集到的各组件状态判断是否执行相应的集群切换任务;
若是,则获取与集群切换任务对应的待切换业务、以及各集群中与集群切换任务对应的目标集群的集群连接信息;
根据集群连接信息对待切换业务的集群连接配置进行变更,以使集群切换客户端在监听到集群连接配置变更时,根据获取得到的变更后的集群连接配置将待切换业务切换连接至目标集群上。
当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的集群切换方法中的相关操作。
实施例十
本发明实施例十提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种可应用于集群切换客户端的集群切换方法,该方法包括:
在监听到隶属于集群切换客户端的待切换业务的集群连接配置变更的变更触发事件时,从集群切换服务端中获取到与变更触发事件对应的变更后的集群连接配置;
根据变更后的集群连接配置创建目标连接,并根据目标连接将待切换业务切换连接至目标连接对应的目标集群上;
其中,变更后的集群连接配置可包括集群切换服务端根据集群连接信息对变更前的集群连接配置进行变更后的配置,集群连接信息包括集群切换服务端根据采集到的与集群切换服务端通讯连接的至少两个集群内各组件的组件状态确定的信息。
当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的集群切换方法中的相关操作。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。依据这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (15)

1.一种集群切换方法,其特征在于,应用于集群切换服务端,其中,所述集群切换服务端与至少两个集群通讯连接,所述方法包括:
分别对各所述集群内各组件的组件状态进行采集,并根据采集到的各所述组件状态判断是否执行相应的集群切换任务;
若是,则获取与所述集群切换任务对应的待切换业务、以及各所述集群中与所述集群切换任务对应的目标集群的集群连接信息;
根据所述集群连接信息对所述待切换业务的集群连接配置进行变更,以使集群切换客户端在监听到所述集群连接配置变更时,根据获取得到的变更后的所述集群连接配置将所述待切换业务切换连接至所述目标集群上。
2.根据权利要求1所述的方法,其特征在于,所述分别对各所述集群内各组件的组件状态进行采集,包括:
在监测到集群启动的启动触发事件时,通过启动与所述启动触发事件对应的调度器来拉起相应的采集器,并基于拉起后的所述采集器分别对各所述集群内各组件的组件状态进行采集。
3.根据权利要求1所述的方法,其特征在于,所述分别对各所述集群内各组件的组件状态进行采集,包括:
分别对各所述集群内分布式文件系统中主服务的主服务状态和数据块的数据块状态、以及各所述集群内数据区域的区域状态中的至少一个进行采集。
4.根据权利要求1所述的方法,其特征在于,所述根据采集到的各所述组件状态判断是否执行相应的集群切换任务,包括:
判断采集到的各所述组件状态是否满足预先配置的集群切换策略,所述集群切换策略包括单业务切换策略、局部业务切换策略和/或全部业务切换策略;
若是,则根据各所述集群切换策略中与所述组件状态对应的目标切换策略,确定执行与所述目标切换策略相应的集群切换任务。
5.根据权利要求4所述的方法,其特征在于,所述分别对各所述集群内各组件的组件状态进行采集,包括:基于预设时间间隔对各所述集群内各组件的组件状态分别进行采集;
相应的,所述判断采集到的各所述组件状态是否满足预先配置的集群切换策略,包括:将在每个所述预设时间间隔内采集得到的各所述组件状态分别作为一组所述组件状态,判断在预设时间窗口采集到的各组所述组件状态是否均满足预先配置的同一集群切换策略。
6.根据权利要求4所述的方法,其特征在于,在所述分别对各所述集群内各组件的组件状态进行采集之后,还包括:将采集到的各所述组件状态上传至预先设置的数据存储中心中;
相应的,所述判断采集到的各所述组件状态是否满足预先配置的集群切换策略,包括:在监测到所述数据存储中心内的组件状态更新的更新触发事件时,从所述数据存储中心获取预先配置的集群切换策略、以及与所述更新触发事件对应的各所述组件状态,并判断所述与所述更新触发事件对应的各所述组件状态是否满足所述集群切换策略。
7.根据权利要求1所述的方法,其特征在于,所述集群包括分布式集群,和/或,所述至少两个集群包括主集群和备集群,在所述根据所述集群连接信息对所述待切换业务的集群连接配置进行变更之前,与所述待切换业务相连接的所述集群是所述主集群,所述目标集群是所述备集群。
8.一种集群切换方法,其特征在于,应用于集群切换客户端,包括:
在监听到隶属于所述集群切换客户端的待切换业务的集群连接配置变更的变更触发事件时,从集群切换服务端中获取与所述变更触发事件对应的变更后的集群连接配置;
根据所述变更后的集群连接配置创建目标连接,根据所述目标连接将所述待切换业务切换连接至所述目标连接对应的目标集群上;
其中,所述变更后的集群连接配置包括所述集群切换服务端根据集群连接信息对变更前的集群连接配置进行变更后的配置,所述集群连接信息包括所述集群切换服务端根据采集到的与所述集群切换服务端通讯连接的至少两个集群内各组件的组件状态确定的信息。
9.根据权利要求8所述的方法,其特征在于,在所述根据所述目标连接将所述待切换业务切换连接至所述目标连接对应的目标集群上之后,还包括:
通过回调信息发送接口发送目标信息,其中,所述目标信息包括集群切换原因、集群切换策略、集群切换发生时间和集群切换耗费时间中的至少一个。
10.一种集群切换系统,其特征在于,包括集群切换服务端和集群切换客户端,其中,所述集群切换服务端与至少两个集群通讯连接;
所述集群切换服务端,用于分别对各所述集群内组件的组件状态进行采集,在根据采集到的各所述组件状态确定执行相应的集群切换任务时,获取与所述集群切换任务对应的待切换业务、以及各所述集群中与所述集群切换任务对应的目标集群的集群连接信息,并根据所述集群连接信息对所述待切换业务的集群连接配置进行变更;
所述集群切换客户端,用于在监听到集群连接配置变更的变更触发事件时,根据从所述集群切换服务端中获取的与所述变更触发事件对应的变更后的所述集群连接配置创建目标连接,并根据所述目标连接将所述待切换业务切换连接至所述目标集群上。
11.一种集群切换装置,其特征在于,配置于集群切换服务端,其中所述集群切换服务端与至少两个集群通讯连接,所述装置包括:
任务判断模块,用于分别对各所述集群内各组件的组件状态进行采集,并根据采集到的各所述组件状态判断是否执行相应的集群切换任务;
信息获取模块,用于若是,则获取与所述集群切换任务对应的待切换业务、以及各所述集群中与所述集群切换任务对应的目标集群的集群连接信息;
第一集群切换模块,用于根据所述集群连接信息对所述待切换业务的集群连接配置进行变更,以使集群切换客户端在监听到所述集群连接配置变更时,根据获取得到的变更后的所述集群连接配置将所述待切换业务切换连接至所述目标集群上。
12.一种集群切换装置,其特征在于,配置于集群切换客户端,所述装置包括:
配置获取模块,用于在监听到隶属于所述集群切换客户端的待切换业务的集群连接配置变更的变更触发事件时,从集群切换服务端中获取与所述变更触发事件对应的变更后的集群连接配置;
第二集群切换模块,用于根据所述变更后的集群连接配置创建目标连接,根据所述目标连接将所述待切换业务切换连接至所述目标连接对应的目标集群;
其中,所述变更后的集群连接配置包括所述集群切换服务端根据集群连接信息对变更前的集群连接配置进行变更后的配置,所述集群连接信息包括所述集群切换服务端根据采集到的与所述集群切换服务端通讯连接的至少两个集群内各组件的组件状态确定的信息。
13.一种服务器,其特征在于,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7中任一所述的集群切换方法。
14.一种终端,其特征在于,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求8-9中任一所述的集群切换方法。
15.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-9中任一所述的集群切换方法。
CN202110019669.5A 2021-01-07 2021-01-07 集群切换方法、系统、装置、终端、服务器及存储介质 Pending CN113765690A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110019669.5A CN113765690A (zh) 2021-01-07 2021-01-07 集群切换方法、系统、装置、终端、服务器及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110019669.5A CN113765690A (zh) 2021-01-07 2021-01-07 集群切换方法、系统、装置、终端、服务器及存储介质

Publications (1)

Publication Number Publication Date
CN113765690A true CN113765690A (zh) 2021-12-07

Family

ID=78786267

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110019669.5A Pending CN113765690A (zh) 2021-01-07 2021-01-07 集群切换方法、系统、装置、终端、服务器及存储介质

Country Status (1)

Country Link
CN (1) CN113765690A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115344327A (zh) * 2022-08-19 2022-11-15 中电金信软件有限公司 应用模块的切换方法、装置、电子设备及可读存储介质
CN115499299A (zh) * 2022-09-13 2022-12-20 航天信息股份有限公司 一种集群设备监控方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030033412A1 (en) * 2001-08-08 2003-02-13 Sharad Sundaresan Seamless fail-over support for virtual interface architecture (VIA) or the like
CN107769943A (zh) * 2016-08-17 2018-03-06 阿里巴巴集团控股有限公司 一种主备集群切换的方法和设备
CN109245908A (zh) * 2017-07-10 2019-01-18 北京京东尚科信息技术有限公司 一种主从集群切换的方法和装置
CN111865632A (zh) * 2019-04-28 2020-10-30 阿里巴巴集团控股有限公司 分布式数据存储集群的切换方法及切换指令发送方法和装置
CN111901395A (zh) * 2020-07-07 2020-11-06 青岛海尔科技有限公司 多集群切换方法及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030033412A1 (en) * 2001-08-08 2003-02-13 Sharad Sundaresan Seamless fail-over support for virtual interface architecture (VIA) or the like
CN107769943A (zh) * 2016-08-17 2018-03-06 阿里巴巴集团控股有限公司 一种主备集群切换的方法和设备
CN109245908A (zh) * 2017-07-10 2019-01-18 北京京东尚科信息技术有限公司 一种主从集群切换的方法和装置
CN111865632A (zh) * 2019-04-28 2020-10-30 阿里巴巴集团控股有限公司 分布式数据存储集群的切换方法及切换指令发送方法和装置
CN111901395A (zh) * 2020-07-07 2020-11-06 青岛海尔科技有限公司 多集群切换方法及装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115344327A (zh) * 2022-08-19 2022-11-15 中电金信软件有限公司 应用模块的切换方法、装置、电子设备及可读存储介质
CN115344327B (zh) * 2022-08-19 2023-07-28 中电金信软件有限公司 应用模块的切换方法、装置、电子设备及可读存储介质
CN115499299A (zh) * 2022-09-13 2022-12-20 航天信息股份有限公司 一种集群设备监控方法及装置

Similar Documents

Publication Publication Date Title
CN106331098B (zh) 一种服务器集群系统
CN108847982B (zh) 一种分布式存储集群及其节点故障切换方法和装置
CN113014634B (zh) 集群选举处理方法、装置、设备及存储介质
CN109960634B (zh) 一种应用程序监控方法、装置及系统
JPS61500751A (ja) 多重プロセシングシステムのプログラムプロセスを停止するための方法
CN112506702B (zh) 数据中心容灾方法、装置、设备及存储介质
CN103036719A (zh) 一种基于主备集群服务器的跨地区服务容灾方法及装置
CN112333249B (zh) 一种业务服务系统及方法
CN107995029A (zh) 选举控制方法及装置、选举方法及装置
US20200204620A1 (en) Systems and methods of monitoring software application processes
CN111459639B (zh) 一种支持全球多机房部署的分布式任务管理平台及方法
CN110611603B (zh) 一种集群网卡监控方法及装置
CN113765690A (zh) 集群切换方法、系统、装置、终端、服务器及存储介质
CN113660350A (zh) 分布式锁协调方法、装置、设备及存储介质
CN111752488B (zh) 存储集群的管理方法、装置、管理节点及存储介质
CN110635941A (zh) 一种数据库节点集群故障迁移方法与装置
CN111342986B (zh) 分布式节点管理方法及装置、分布式系统、存储介质
US9973569B2 (en) System, method and computing apparatus to manage process in cloud infrastructure
CN116346834A (zh) 一种会话同步方法、装置、计算设备及计算机存储介质
CN111309515A (zh) 一种容灾控制方法、装置及系统
CN114422335A (zh) 通信方法、装置、服务器及存储介质
CN114116178A (zh) 集群框架任务管理方法以及相关装置
CN116668269A (zh) 一种用于双活数据中心的仲裁方法、装置及系统
CN115145782A (zh) 一种服务器切换方法,MooseFS系统及存储介质
CN110266790B (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