CN104579765B - 一种集群***的容灾方法和装置 - Google Patents
一种集群***的容灾方法和装置 Download PDFInfo
- Publication number
- CN104579765B CN104579765B CN201410832193.7A CN201410832193A CN104579765B CN 104579765 B CN104579765 B CN 104579765B CN 201410832193 A CN201410832193 A CN 201410832193A CN 104579765 B CN104579765 B CN 104579765B
- Authority
- CN
- China
- Prior art keywords
- information
- node
- client
- clustered
- disaster tolerance
- 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
Links
Landscapes
- Hardware Redundancy (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明实施例提供了一种集群***的容灾方法和装置,其中的方法具体包括:获取各集群节点的运行过程信息;其中,所述运行过程信息包括:可访问性信息和/或负载信息和/或操作执行信息;以及当所述集群节点的可访问性信息和/或负载信息和/或操作执行信息符合预置容灾条件时,对集群***进行容灾处理。本发明实施例能够实时保证整个集群***的可靠性。
Description
技术领域
本发明涉及计算机集群技术领域,特别是涉及一种集群***的容灾方法和装置。
背景技术
计算机集群可以利用多个集群节点并行计算从而获得很高的计算速度,也可以用多个集群节点做备份,从而使得任何一台设备故障后整个集群***还能正常运行。
集群***的可靠性是指集群***对不论在何种情况下对请求的响应能力,也即,当集群***中任何一台机器或者任何一个集群节点发生故障时集群***能够通过剩下的机器和集群节点继续运行,这对集群***的容灾能力提出了较高的要求。
目前,集群***的可靠性往往通过业务层来实现。以CDN(内容分发网络,ContentDelivery Network)业务***为例,其通常部署有多级存储服务器,多级存储服务器上存储有相同的内容,这样,在当前级存储服务器发生故障时,可以向上一级存储服务器请求内容等等。然而,对于集群***内部的容灾尚无成型的方案。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的一种集群***的容灾方法和装置。
依据本发明的一个方面,提供了一种集群***的容灾方法,包括:
获取各集群节点的运行过程信息;其中,所述运行过程信息包括:可访问性信息和/或负载信息和/或操作执行信息;以及
当所述集群节点的可访问性信息和/或负载信息和/或操作执行信息符合预置容灾条件时,对集群***进行容灾处理。
可选地,所述获取各集群节点的运行过程信息的步骤,包括:
从集群节点获取其自身的可访问性信息和/或负载信息和/或操作执行信息;和/或
从客户端获取其所访问集群节点的操作执行信息。
可选地,所述操作执行信息包括操作出错信息和/或预置时间段内的操作执行信息;
则所述从客户端获取其所访问集群节点的操作执行信息的步骤,包括:
从客户端实时获取其所访问集群节点的操作出错信息;和/或
从客户端定期获取其所访问集群节点在预置时间段内的操作执行信息。
可选地,所述当所述集群节点的可访问性信息符合预置容灾条件时,对集群***进行容灾处理的步骤,包括:
在当前集群节点的可访问性信息为否时,向客户端发送第一节点切换信息;其中,所述第一节点切换信息用于指示客户端访问除当前集群节点外的其它集群节点;和/或
在当前集群内可访问性信息为否的集群节点比例超过预置比例时,向客户端发送第一集群切换信息;其中,所述第一集群切换信息用于指示客户端访问除当前集群外的其它集群。
可选地,所述当所述集群节点的负载信息符合预置容灾条件时,对集群***进行容灾处理的步骤,包括:
在当前集群节点的负载信息超过第一负载阈值时,向客户端发送第二节点切换信息;其中,所述第二节点切换信息用于指示客户端将部分或全部请求切换至除当前集群节点外的其它集群节点;和/或
在当前集群的负载信息超过第二负载阈值时,向客户端发送第二集群切换信息;其中,所述第二集群切换信息用于指示客户端将部分或全部请求切换至除当前集群外的其它集群。
可选地,所述当所述集群节点的操作执行信息符合预置容灾条件时,对集群***进行容灾处理的步骤,包括:
当所述集群节点在预置时间段内的操作执行信息符合第一容灾条件时,向客户端发送第三节点切换信息;其中,所述第三节点切换信息用于指示客户端将部分请求切换至除当前集群节点外的其它集群节点;和/或
根据所述操作出错信息定位所述集群节点的故障,当所述故障对应故障等级高于预置故障等级时,向客户端发送第四节点切换信息;其中,所述第四节点切换信息用于指示客户端将部分或全部请求切换至除当前集群节点外的其它集群节点。
根据本发明的另一方面,提供了一种集群***的容灾装置,包括:
信息获取模块,用于获取各集群节点的运行过程信息;其中,所述运行过程信息包括:可访问性信息和/或负载信息和/或操作执行信息;以及
容灾处理模块,用于当所述集群节点的可访问性信息和/或负载信息和/或操作执行信息符合预置容灾条件时,对集群***进行容灾处理。
可选地,所述信息获取模块,包括:
节点获取子模块,用于从集群节点获取其自身的可访问性信息和/或负载信息和/或操作执行信息;和/或
客户端获取子模块,用于从客户端获取其所访问集群节点的操作执行信息。
可选地,所述操作执行信息包括操作出错信息和/或预置时间段内的操作执行信息;
则所述客户端获取子模块,包括:
实时获取单元,用于从客户端实时获取其所访问集群节点的操作出错信息;和/或
定期获取单元,用于从客户端定期获取其所访问集群节点在预置时间段内的操作执行信息。
可选地,所述容灾处理模块,包括:
第一容灾处理子模块,用于在当前集群节点的可访问性信息为否时,向客户端发送第一节点切换信息;其中,所述第一节点切换信息用于指示客户端访问除当前集群节点外的其它集群节点;和/或
第二容灾处理子模块,用于在当前集群内可访问性信息为否的集群节点比例超过预置比例时,向客户端发送第一集群切换信息;其中,所述第一集群切换信息用于指示客户端访问除当前集群外的其它集群。
根据本发明实施例的一种集群***的容灾方法和装置,可以获取各集群节点的运行过程信息,其中,所述运行过程信息具体可以包括:可访问性信息和/或负载信息和/或操作执行信息,并在所述集群节点的可访问性信息和/或负载信息和/或操作执行信息符合预置容灾条件时,对集群***进行容灾处理;由于上述运行过程信息能够实时反映集群节点的运行情况,例如,可访问性信息能够实时反映集群节点是否可访问,负载信息能够实时反映集群节点是否过载,操作执行信息能够反映集群节点对于操作的出错率或者准确率等等,故本发明实施例在所述集群节点的可访问性信息和/或负载信息和/或操作执行信息符合预置容灾条件时,对集群***进行容灾处理,能够实时保证整个集群***的可靠性;例如,可以在某个集群的流量突增时将部分流量切换至其它集群以起到过载保护,又如,可以在某个集群的多数集群节点不可用时可以将客户端的请求切换到其它集群以保证集群***的响应能力;再如,在基于集群节点的操作出错信息定位的故障等级高于预置故障等级时,则可以认为该集群节点提供的一个操作或所有操作的服务不可用,故可以将客户端的部分或全部请求切换至除当前集群节点外的其它集群节点,等等。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文可选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出可选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明一个实施例的一种集群***的容灾方法的步骤流程示意图;
图2示出了根据本发明一个实施例的一种集群***的结构示意图;
图3示出了根据本发明一个实施例的一种集群***的容灾方法的步骤流程示意图;
图4示出了根据本发明一个实施例的一种集群***的容灾方法的步骤流程示意图;
图5示出了根据本发明一个实施例的一种集群***的容灾方法的步骤流程示意图;
图6示出了根据本发明一个实施例的一种集群***的容灾方法的步骤流程示意图;以及
图7示出了根据本发明一个实施例的一种集群***的容灾装置的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
参照图1,示出了根据本发明一个实施例的一种集群***的容灾方法的步骤流程示意图,具体可以包括如下步骤:
步骤101、获取各集群节点的运行过程信息;其中,所述运行过程信息具体可以包括:可访问性信息和/或负载信息和/或操作执行信息;
本发明实施例可以应用于各种业务的集群***,用于通过集群***的容灾提高集群***的可靠性。
参照图2,示出了根据本发明一个实施例的一种集群***的结构示意图,其具体可以包括客户端201和集群节点202,其中,客户端201上可以运行有业务层的应用程序,其可以连接一个或多个集群节点202,且可以通过访问指定的集群节点202以执行get(用来从对象中读取数据)、set(用来向字段写入数据)和delete(用来删除数据)等操作。
本发明实施例中,上述运行过程信息可用于表示各集群节点在运行过程中的各种信息,其能够实时反映集群节点的运行情况。例如,本实施例的运行过程信息具体可以包括:可访问性信息和/或负载信息和/或操作执行信息;其中,可访问性信息能够实时反映集群节点是否可访问,负载信息能够实时反映集群节点是否过载,操作执行信息能够反映集群节点对于操作的出错率或者准确率等等。
本发明实施例可以提供如下获取各集群节点的运行过程信息的技术方案:
获取方案一、
获取方案一可以从集群节点获取其自身的可访问性信息和/或负载信息和/或操作执行信息。
在具体实现中,可以设置管理节点,该管理节点可与所有的集群节点交互通信,并基于交互通信从集群节点获取其自身的可访问性信息和/或负载信息和/或操作执行信息。
在本发明的一种应用示例中,所述可访问性信息具体可以包括:存活状态信息,其中,可以基于集群节点的心跳信息和/或端口信息来确定对应的存活状态信息。其中,心跳信息可以为通信双方(集群节点和管理节点)定时通知对方自己状态的一个自己定义的信息,其按照一定的时间间隔(心跳周期)发送,类似于心跳。例如,集群节点可以按照心跳周期向管理节点发送心跳消息,则管理节点可以监听所述集群节点的心跳信息,若在心跳周期内未收到某集群节点的心跳信息,可以认为该集群节点不存活。由于基于端口信息确定存活状态信息的过程与基于心跳信息确定存活状态信息的过程类似,故在此不作赘述,相互参照即可。
在本发明的又一种应用示例中,所述负载信息具体可以包括:CPU使用率、内存使用信息和流量信息等等,其中,流量信息可用于反映集群节点的访问频率,如QPS(每秒查询率,Query Per Second)是流量信息的一种示例,流量信息可由集群节点采用内存计数方式统计得到,当然,本发明实施例对CPU使用率、内存使用信息和流量信息的具体统计方法不加以限制。在具体实现中,集群节点可以将所述负载信息携带在心跳信息中定期上报给管理节点,也可以单独将所述负载信息定期上报给管理节点,本发明实施例对具体的上报方式不加以限制。
在本发明的再一种应用示例中,所述操作执行信息具体可以包括操作出错信息和/或预置时间段内的操作执行信息,假设所述预置时间段的长度等于时间片的长度,那么,所述预置时间段内的操作执行信息具体可以包括:get等操作在某个时间片内的执行次数和操作出错信息等等,其中,操作出错信息可以进一步包括:出错次数、出错类型信息和出错的详细信息等等。在具体实现中,集群节点可以实时向管理节点上报操作出错信息,且可以定期向管理节点上报所述预置时间段内的操作执行信息。
获取方案二、
获取方案一在集群节点侧统计并上报负载信息和/或操作执行信息,上述统计和上报容易对集群节点的性能造成影响;而获取方案二可以从客户端获取其所访问集群节点的负载信息和/或操作执行信息,也即,在客户端侧统计并上报负载信息和/或操作执行信息,能够避免对集群节点的性能造成影响。
在实际应用中,从客户端获取的其所访问集群节点的负载信息具体可以包括:流量信息等等,从客户端获取的其所访问集群节点的操作执行信息具体可以包括操作出错信息和/或预置时间段内的操作执行信息等等。
在本发明的一种可选实施例中,所述从客户端获取其所访问集群节点的操作执行信息的步骤,具体可以包括:
子步骤A1、从客户端实时获取其所访问集群节点的操作出错信息;和/或
子步骤A2、从客户端定期获取其所访问集群节点在预置时间段内的操作执行信息。
对于客户端侧统计并上报负载信息和/或操作执行信息的过程,由于其与集群节点侧统计并上报负载信息和/或操作执行信息的过程类似,故在此不作赘述,相互参照即可。
步骤102、当所述集群节点的可访问性信息和/或负载信息和/或操作执行信息符合预置容灾条件时,对集群***进行容灾处理。
本发明实施例可以提供如下当所述集群节点的可访问性信息和/或负载信息和/或操作执行信息符合预置容灾条件时,对集群***进行容灾处理的方案:
容灾方案一、
容灾方案一在所述集群节点的可访问性信息符合预置容灾条件时,可以对集群***中的集群节点或者整个集群进行容灾处理,以避免相应客户端访问的服务不可用,从而保证集群***的响应能力。
相应地,所述当所述集群节点的可访问性信息符合预置容灾条件时,对集群***进行容灾处理的步骤,具体可以包括:
子步骤B1、在当前集群节点的可访问性信息为否时,向客户端发送第一节点切换信息;其中,所述第一节点切换信息用于指示客户端访问除当前集群节点外的其它集群节点;和/或
例如,在当前集群节点的心跳不存活时,可以认为当前集群节点不可访问,也即,当前集群节点无法继续提供服务,故可以通过第一节点切换信息指示客户端访问除当前集群节点外的其它集群节点,这里,客户端可用于表示该当前集群节点所连的客户端,其它集群节点的数目可以为一个或多个,并且,其它集群节点应满足可访问性信息为是的条件。
子步骤B2、在当前集群内可访问性信息为否的集群节点比例超过预置比例时,向客户端发送第一集群切换信息;其中,所述第一集群切换信息用于指示客户端访问除当前集群外的其它集群。
例如,在当前集群内可访问性信息为否的集群节点比例超过50﹪时,可以通过第一集群切换信息指示客户端访问除当前集群外的其它集群,这里,客户端可以为该当前集群所连的部分客户端,并且,其它集群可以满足集群内可访问性信息为是的集群节点比例超过第二预置比例的条件。可以理解,上述50%作为预置比例只是作为示例,本领域技术人员可以根据实际需求采用所述预置比例和第二预置比例,如第二预置比例为90%等等,本发明实施例对具体的预置比例和第二预置比例不加以限制。
容灾方案二、
容灾方案二可以在所述集群节点的负载信息符合预置容灾条件时,对集群***中的集群节点或整个集群进行容灾处理,以避免集群节点或整个集群过载引起的故障或宕机等问题,从而实现集群节点或整个集群的过载保护。
相应地,所述集群节点的负载信息符合预置容灾条件时,对集群***进行容灾处理的步骤,具体可以包括:
子步骤C1、在当前集群节点的负载信息超过第一负载阈值时,向客户端发送第二节点切换信息;其中,所述第二节点切换信息用于指示客户端将部分或全部请求切换至除当前集群节点外的其它集群节点;和/或
例如,在当前集群节点的QPS超过1W时,可以认为当前集群节点的QPS超过能承载的流量上限,因此,可以通过第二节点切换信息指示客户端将部分请求切换至除当前集群节点外的其它集群节点,这里,客户端可用于表示该当前集群节点所连的客户端,其它集群节点的数目可以为一个或多个,并且,其它集群节点应满足负载信息不超过第一负载阈值的条件。
子步骤C2、在当前集群的负载信息超过第二负载阈值时,向客户端发送第二集群切换信息;其中,所述第二集群切换信息用于指示客户端将部分或全部请求切换至除当前集群外的其它集群。
例如,在当前集群的QPS超过流量上限时,可以通过第二集群切换信息指示客户端将部分请求切换至除当前集群外的其它集群,这里,客户端可以为该当前集群所连的部分客户端,其它集群的数目可以为一个或多个,并且,其它集群应满足负载信息不超过第二负载阈值的条件。
容灾方案三、
容灾方案三可以在所述集群节点的操作执行信息符合预置容灾条件时,对集群***中的集群节点进行容灾处理,以避免集群节点在预置时间段内执行操作数量过多或频繁出错引起的服务不可用等问题,从而保证集群***的服务准确率。
相应地,所述当所述集群节点的操作执行信息符合预置容灾条件时,对集群***进行容灾处理的步骤,具体可以包括:
子步骤D1、当所述集群节点在预置时间段内的操作执行信息符合第一容灾条件时,向客户端发送第三节点切换信息;其中,所述第三节点切换信息用于指示客户端将部分请求切换至除当前集群节点外的其它集群节点;和/或
其中,所述容灾条件具体可以包括:集群节点在预置时间段内执行操作数量超过第一阈值,其中,超过第一阈值可以表示集群节点过载,故可以指示客户端将部分请求切换至其它集群节点。
子步骤D2、根据所述操作出错信息定位所述集群节点的故障,当所述故障对应故障等级高于预置故障等级时,向客户端发送第四节点切换信息;其中,所述第四节点切换信息用于指示客户端将部分或全部请求切换至除当前集群节点外的其它集群节点。
在实际应用中,集群节点的操作出错信息中往往包括出错类型信息和出错的详细信息;这样,可以根据所述出错类型信息和出错的详细信息定位集群节点的故障,如果故障等级高于预置故障等级,则可以认为该集群节点提供的一个操作或所有操作的服务不可用,故可以通过第三节点切换信息指示客户端将部分或全部请求切换至除当前集群节点外的其它集群节点。
以上对几种容灾方案进行了详细介绍,可以理解,本领域技术人员可以根据实际需求采用上述几种容灾方案中的一种或多种,并且,还可以采用其它容灾方案,本发明实施例在采用运行过程信息以实时保证整个集群***的可靠性的前提下,对具体的容灾方案不加以限制。
综上,由于上述集群节点的可访问性信息和/或负载信息和/或操作执行信息能够实时反映集群节点的运行情况,故本发明实施例在所述集群节点的可访问性信息和/或负载信息和/或操作执行信息符合预置容灾条件时,对集群***进行容灾处理,能够实时保证整个集群***的可靠性;例如,可以在某个集群的流量突增时将部分流量切换至其它集群以起到过载保护,又如,可以在某个集群的多数集群节点不可用时可以将客户端的请求切换到其它集群以保证集群***的响应能力;再如,在基于集群节点的操作出错信息定位的故障等级高于预置故障等级时,则可以认为该集群节点提供的一个操作或所有操作的服务不可用,故可以将客户端的部分或全部请求切换至除当前集群节点外的其它集群节点,等等。
参照图3,示出了根据本发明一个实施例的一种集群***的容灾方法的步骤流程示意图,具体可以包括如下步骤:
步骤301、监听集群节点上报的心跳信息;
步骤302、当在心跳周期内未收到某集群节点的心跳信息时,向该集群节点所接客户端发送第一节点切换信息;其中,所述第一节点切换信息用于指示客户端访问除该集群节点外的其它集群节点。
相对于图1所示实施例,本实施例将运行过程信息具体化为心跳信息,且当在心跳周期内未收到某集群节点的心跳信息时,可以认为该集群节点不存活,因此可以只是客户端访问其它集群节点继续服务,以避免相应客户端访问的服务不可用,从而保证集群***的响应能力。
参照图4,示出了根据本发明一个实施例的一种集群***的容灾方法的步骤流程示意图,具体可以包括如下步骤:
步骤401、监听集群节点上报的心跳信息;
步骤402、当在心跳周期内未收到某集群节点的心跳信息时,将该集群节点的可访问性信息置为否;
步骤403、在当前集群内可访问性信息为否的集群节点比例超过预置比例时,向所连接所有客户端发送第一集群切换信息;其中,所述第一集群切换信息用于指示客户端访问除当前集群外的其它集群。
相对于图3所示实施例对集群节点进行容灾处理,本实施例在当前集群内可访问性信息为否的集群节点比例超过预置比例时,通过第一集群切换信息指示所有客户端访问其它集群继续服务,以避免相应客户端访问的服务不可用,从而保证集群***的响应能力。
参照图5,示出了根据本发明一个实施例的一种集群***的容灾方法的步骤流程示意图,具体可以包括如下步骤:
步骤501、接收集群节点上报的流量信息;
步骤502、依据当前集群的所有集群节点的流量信息,统计得到当前集群的负载信息;
步骤503、在当前集群的负载信息超过第二负载阈值时,向客户端发送第二集群切换信息;其中,所述第二集群切换信息用于指示客户端将部分请求切换至除当前集群外的其它集群。
相对于图1所示实施例,本实施例在当前集群的负载信息超过第二负载阈值时,可以通过第二集群切换信息指示客户端将部分请求切换至除当前集群外的其它集群,以防止当前集群过载及过载引起的故障、宕机等问题,实现当前集群的过载保护。
参照图6,示出了根据本发明一个实施例的一种集群***的容灾方法的步骤流程示意图,具体可以包括如下步骤:
步骤601、从客户端实时获取其所访问集群节点的操作出错信息;
步骤602、从客户端定期获取其所访问集群节点在预置时间段内的操作执行信息;其中,所述在预置时间段内的操作执行信息具体可以包括:操作出错信息和操作执行数量;
步骤603、根据所述操作出错信息定位所述集群节点的故障;
步骤604、当所述故障对应故障等级高于预置故障等级时,向客户端发送第四节点切换信息;其中,所述第四节点切换信息用于指示客户端将全部请求切换至除当前集群节点外的其它集群节点;
步骤605、当所述集群节点在预置时间段内的操作执行数量超过第一阈值时,向客户端发送第三节点切换信息;其中,所述第三节点切换信息用于指示客户端将部分请求切换至除当前集群节点外的其它集群节点。
相对于图1所示实施例,本实施例可以在集群节点在预置时间段内的操作执行数量超过第一阈值时,通过第三节点切换信息指示客户端将部分请求切换至除当前集群节点外的其它集群节点,以避免集群节点在预置时间段内过载引起的服务不可用等问题,从而实现集群节点的过载保护;
并且,本实施例还可以根据所述出错类型信息和出错的详细信息定位集群节点的故障,如果故障等级高于预置故障等级,则可以认为该集群节点提供的一个操作或所有操作的服务不可用,故可以通过第三节点切换信息指示客户端将部分或全部请求切换至除当前集群节点外的其它集群节点,以避免集群节点频繁出错引起的服务不可用等问题,从而保证集群***的服务准确率。
需要说明的是,本发明实施例的各种阈值、容灾条件等,均可由本领域技术人员依据实际情况确定,也即,本发明实施例对具体的阈值和容灾条件不加以限制。
对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于可选实施例,所涉及的动作并不一定是本发明实施例所必须的。
参照图7,示出了根据本发明一个实施例的一种集群***的容灾装置的结构示意图,具体可以包括如下模块:
信息获取模块701,用于获取各集群节点的运行过程信息;其中,所述运行过程信息具体可以包括:可访问性信息和/或负载信息和/或操作执行信息;以及
容灾处理模块702,用于当所述集群节点的可访问性信息和/或负载信息和/或操作执行信息符合预置容灾条件时,对集群***进行容灾处理。
在本发明的一种可选实施例中,所述信息获取模块701,具体可以包括:
节点获取子模块,用于从集群节点获取其自身的可访问性信息和/或负载信息和/或操作执行信息;和/或
客户端获取子模块,用于从客户端获取其所访问集群节点的操作执行信息。
在本发明的一种可选实施例中,所述操作执行信息具体可以包括操作出错信息和/或预置时间段内的操作执行信息;
则所述客户端获取子模块,可以进一步包括:
实时获取单元,用于从客户端实时获取其所访问集群节点的操作出错信息;和/或
定期获取单元,用于从客户端定期获取其所访问集群节点在预置时间段内的操作执行信息。
在本发明的一种可选实施例中,所述容灾处理模块702,具体可以包括:
第一容灾处理子模块,用于在当前集群节点的可访问性信息为否时,向客户端发送第一节点切换信息;其中,所述第一节点切换信息用于指示客户端访问除当前集群节点外的其它集群节点;和/或
第二容灾处理子模块,用于在当前集群内可访问性信息为否的集群节点比例超过预置比例时,向客户端发送第一集群切换信息;其中,所述第一集群切换信息用于指示客户端访问除当前集群外的其它集群。
在本发明的一种可选实施例中,所述容灾处理模块702,具体可以包括:
第三容灾处理子模块,用于在当前集群节点的负载信息超过第一负载阈值时,向客户端发送第二节点切换信息;其中,所述第二节点切换信息用于指示客户端将部分或全部请求切换至除当前集群节点外的其它集群节点;和/或
第四容灾处理子模块,用于在当前集群的负载信息超过第二负载阈值时,向客户端发送第二集群切换信息;其中,所述第二集群切换信息用于指示客户端将部分或全部请求切换至除当前集群外的其它集群。
在本发明的一种可选实施例中,所述容灾处理模块702,具体可以包括:
第五容灾处理子模块,用于在所述集群节点在预置时间段内的操作执行信息符合第一容灾条件时,向客户端发送第三节点切换信息;其中,所述第三节点切换信息用于指示客户端将部分请求切换至除当前集群节点外的其它集群节点;和/或
第六容灾处理子模块,用于根据所述操作出错信息定位所述集群节点的故障,当所述故障对应故障等级高于预置故障等级时,向客户端发送第四节点切换信息;其中,所述第四节点切换信息用于指示客户端将部分或全部请求切换至除当前集群节点外的其它集群节点。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
在此提供的算法和显示不与任何特定计算机、虚拟***或者其它设备固有相关。各种通用***也可以与基于在此的示教一起使用。根据上面的描述,构造这类***所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的集群***的容灾方法和装置中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网平台上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
本发明公开了A1、一种集群***的容灾方法,包括:
获取各集群节点的运行过程信息;其中,所述运行过程信息包括:可访问性信息和/或负载信息和/或操作执行信息;以及
当所述集群节点的可访问性信息和/或负载信息和/或操作执行信息符合预置容灾条件时,对集群***进行容灾处理。
A2、如A1所述的方法,所述获取各集群节点的运行过程信息的步骤,包括:
从集群节点获取其自身的可访问性信息和/或负载信息和/或操作执行信息;和/或
从客户端获取其所访问集群节点的操作执行信息。
A3、如A2所述的方法,所述操作执行信息包括操作出错信息和/或预置时间段内的操作执行信息;
则所述从客户端获取其所访问集群节点的操作执行信息的步骤,包括:
从客户端实时获取其所访问集群节点的操作出错信息;和/或
从客户端定期获取其所访问集群节点在预置时间段内的操作执行信息。
A4、如A1或A2或A3所述的方法,所述当所述集群节点的可访问性信息符合预置容灾条件时,对集群***进行容灾处理的步骤,包括:
在当前集群节点的可访问性信息为否时,向客户端发送第一节点切换信息;其中,所述第一节点切换信息用于指示客户端访问除当前集群节点外的其它集群节点;和/或
在当前集群内可访问性信息为否的集群节点比例超过预置比例时,向客户端发送第一集群切换信息;其中,所述第一集群切换信息用于指示客户端访问除当前集群外的其它集群。
A5、如A1或A2或A3所述的方法,所述当所述集群节点的负载信息符合预置容灾条件时,对集群***进行容灾处理的步骤,包括:
在当前集群节点的负载信息超过第一负载阈值时,向客户端发送第二节点切换信息;其中,所述第二节点切换信息用于指示客户端将部分或全部请求切换至除当前集群节点外的其它集群节点;和/或
在当前集群的负载信息超过第二负载阈值时,向客户端发送第二集群切换信息;其中,所述第二集群切换信息用于指示客户端将部分或全部请求切换至除当前集群外的其它集群。
A6、如A3所述的方法,所述当所述集群节点的操作执行信息符合预置容灾条件时,对集群***进行容灾处理的步骤,包括:
当所述集群节点在预置时间段内的操作执行信息符合第一容灾条件时,向客户端发送第三节点切换信息;其中,所述第三节点切换信息用于指示客户端将部分请求切换至除当前集群节点外的其它集群节点;和/或
根据所述操作出错信息定位所述集群节点的故障,当所述故障对应故障等级高于预置故障等级时,向客户端发送第四节点切换信息;其中,所述第四节点切换信息用于指示客户端将部分或全部请求切换至除当前集群节点外的其它集群节点。
本发明还公开了B7、一种集群***的容灾装置,包括:
信息获取模块,用于获取各集群节点的运行过程信息;其中,所述运行过程信息包括:可访问性信息和/或负载信息和/或操作执行信息;以及
容灾处理模块,用于当所述集群节点的可访问性信息和/或负载信息和/或操作执行信息符合预置容灾条件时,对集群***进行容灾处理。
B8、如B7所述的装置,所述信息获取模块,包括:
节点获取子模块,用于从集群节点获取其自身的可访问性信息和/或负载信息和/或操作执行信息;和/或
客户端获取子模块,用于从客户端获取其所访问集群节点的操作执行信息。
B9、如B8所述的装置,所述操作执行信息包括操作出错信息和/或预置时间段内的操作执行信息;
则所述客户端获取子模块,包括:
实时获取单元,用于从客户端实时获取其所访问集群节点的操作出错信息;和/或
定期获取单元,用于从客户端定期获取其所访问集群节点在预置时间段内的操作执行信息。
B10、如B7或B8或B9所述的装置,所述容灾处理模块,包括:
第一容灾处理子模块,用于在当前集群节点的可访问性信息为否时,向客户端发送第一节点切换信息;其中,所述第一节点切换信息用于指示客户端访问除当前集群节点外的其它集群节点;和/或
第二容灾处理子模块,用于在当前集群内可访问性信息为否的集群节点比例超过预置比例时,向客户端发送第一集群切换信息;其中,所述第一集群切换信息用于指示客户端访问除当前集群外的其它集群。
B11、如B7或B8或B9所述的装置,所述容灾处理模块,包括:
第三容灾处理子模块,用于在当前集群节点的负载信息超过第一负载阈值时,向客户端发送第二节点切换信息;其中,所述第二节点切换信息用于指示客户端将部分或全部请求切换至除当前集群节点外的其它集群节点;和/或
第四容灾处理子模块,用于在当前集群的负载信息超过第二负载阈值时,向客户端发送第二集群切换信息;其中,所述第二集群切换信息用于指示客户端将部分或全部请求切换至除当前集群外的其它集群。
B12、如B9所述的装置,所述容灾处理模块,包括:
第五容灾处理子模块,用于在所述集群节点在预置时间段内的操作执行信息符合第一容灾条件时,向客户端发送第三节点切换信息;其中,所述第三节点切换信息用于指示客户端将部分请求切换至除当前集群节点外的其它集群节点;和/或
第六容灾处理子模块,用于根据所述操作出错信息定位所述集群节点的故障,当所述故障对应故障等级高于预置故障等级时,向客户端发送第四节点切换信息;其中,所述第四节点切换信息用于指示客户端将部分或全部请求切换至除当前集群节点外的其它集群节点。
Claims (10)
1.一种集群***的容灾方法,包括:
获取各集群节点的运行过程信息;其中,所述运行过程信息包括:可访问性信息和/或负载信息和/或操作执行信息;所述操作执行信息包括操作出错信息;以及
当所述集群节点的可访问性信息和/或负载信息和/或操作执行信息符合预置容灾条件时,对集群***进行容灾处理;所述当所述集群节点的操作执行信息符合预置容灾条件时,对集群***进行容灾处理,包括:根据所述操作出错信息定位所述集群节点的故障,当所述故障对应故障等级高于预置故障等级时,向客户端发送第四节点切换信息;其中,所述第四节点切换信息用于指示客户端将部分或全部请求切换至除当前集群节点外的其它集群节点;
所述当所述集群节点的可访问性信息符合预置容灾条件时,对集群***进行容灾处理的步骤,还包括:
在当前集群节点的可访问性信息为否时,向客户端发送第一节点切换信息;其中,所述第一节点切换信息用于指示客户端访问除当前集群节点外的其它集群节点;和/或
在当前集群内可访问性信息为否的集群节点比例超过预置比例时,向客户端发送第一集群切换信息;其中,所述第一集群切换信息用于指示客户端访问除当前集群外的其它集群;所述可访问信息包括:存活状态信息。
2.如权利要求1所述的方法,其特征在于,所述获取各集群节点的运行过程信息的步骤,包括:
从集群节点获取其自身的可访问性信息和/或负载信息和/或操作执行信息;和/或
从客户端获取其所访问集群节点的操作执行信息。
3.如权利要求2所述的方法,其特征在于,所述操作执行信息还包括预置时间段内的操作执行信息;
则所述从客户端获取其所访问集群节点的操作执行信息的步骤,包括:
从客户端实时获取其所访问集群节点的操作出错信息;和/或
从客户端定期获取其所访问集群节点在预置时间段内的操作执行信息。
4.如权利要求1或2或3所述的方法,其特征在于,所述当所述集群节点的负载信息符合预置容灾条件时,对集群***进行容灾处理的步骤,包括:
在当前集群节点的负载信息超过第一负载阈值时,向客户端发送第二节点切换信息;其中,所述第二节点切换信息用于指示客户端将部分或全部请求切换至除当前集群节点外的其它集群节点;和/或
在当前集群的负载信息超过第二负载阈值时,向客户端发送第二集群切换信息;其中,所述第二集群切换信息用于指示客户端将部分或全部请求切换至除当前集群外的其它集群。
5.如权利要求3所述的方法,其特征在于,所述当所述集群节点的操作执行信息符合预置容灾条件时,对集群***进行容灾处理的步骤,还包括:
当所述集群节点在预置时间段内的操作执行信息符合第一容灾条件时,向客户端发送第三节点切换信息;其中,所述第三节点切换信息用于指示客户端将部分请求切换至除当前集群节点外的其它集群节点。
6.一种集群***的容灾装置,包括:
信息获取模块,用于获取各集群节点的运行过程信息;其中,所述运行过程信息包括:可访问性信息和/或负载信息和/或操作执行信息;所述操作执行信息包括操作出错信息;以及
容灾处理模块,用于当所述集群节点的可访问性信息和/或负载信息和/或操作执行信息符合预置容灾条件时,对集群***进行容灾处理;所述容灾处理模块包括:第六容灾处理子模块,用于根据所述操作出错信息定位所述集群节点的故障,当所述故障对应故障等级高于预置故障等级时,向客户端发送第四节点切换信息;其中,所述第四节点切换信息用于指示客户端将部分或全部请求切换至除当前集群节点外的其它集群节点;
所述容灾处理模块,还包括:
第一容灾处理子模块,用于在当前集群节点的可访问性信息为否时,向客户端发送第一节点切换信息;其中,所述第一节点切换信息用于指示客户端访问除当前集群节点外的其它集群节点;和/或
第二容灾处理子模块,用于在当前集群内可访问性信息为否的集群节点比例超过预置比例时,向客户端发送第一集群切换信息;其中,所述第一集群切换信息用于指示客户端访问除当前集群外的其它集群。
7.如权利要求6所述的装置,其特征在于,所述信息获取模块,包括:
节点获取子模块,用于从集群节点获取其自身的可访问性信息和/或负载信息和/或操作执行信息;和/或
客户端获取子模块,用于从客户端获取其所访问集群节点的操作执行信息。
8.如权利要求7所述的装置,其特征在于,所述操作执行信息还包括预置时间段内的操作执行信息;
则所述客户端获取子模块,包括:
实时获取单元,用于从客户端实时获取其所访问集群节点的操作出错信息;和/或
定期获取单元,用于从客户端定期获取其所访问集群节点在预置时间段内的操作执行信息。
9.如权利要求6或7或8所述的装置,其特征在于,所述容灾处理模块,包括:
第三容灾处理子模块,用于在当前集群节点的负载信息超过第一负载阈值时,向客户端发送第二节点切换信息;其中,所述第二节点切换信息用于指示客户端将部分或全部请求切换至除当前集群节点外的其它集群节点;和/或
第四容灾处理子模块,用于在当前集群的负载信息超过第二负载阈值时,向客户端发送第二集群切换信息;其中,所述第二集群切换信息用于指示客户端将部分或全部请求切换至除当前集群外的其它集群。
10.如权利要求8所述的装置,其特征在于,所述容灾处理模块,包括:
第五容灾处理子模块,用于在所述集群节点在预置时间段内的操作执行信息符合第一容灾条件时,向客户端发送第三节点切换信息;其中,所述第三节点切换信息用于指示客户端将部分请求切换至除当前集群节点外的其它集群节点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410832193.7A CN104579765B (zh) | 2014-12-27 | 2014-12-27 | 一种集群***的容灾方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410832193.7A CN104579765B (zh) | 2014-12-27 | 2014-12-27 | 一种集群***的容灾方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104579765A CN104579765A (zh) | 2015-04-29 |
CN104579765B true CN104579765B (zh) | 2019-02-26 |
Family
ID=53095030
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410832193.7A Active CN104579765B (zh) | 2014-12-27 | 2014-12-27 | 一种集群***的容灾方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104579765B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108156013B (zh) * | 2016-12-02 | 2021-08-10 | 阿里巴巴集团控股有限公司 | 一种页面服务容灾方法、装置及电子设备 |
CN108199861B (zh) * | 2016-12-08 | 2021-06-25 | 腾讯科技(深圳)有限公司 | 一种机房管理方法及装置 |
CN106790289A (zh) * | 2017-03-07 | 2017-05-31 | 北京搜狐新媒体信息技术有限公司 | 一种基于Nginx服务器的动态负载处理方法及*** |
CN107071351B (zh) * | 2017-03-30 | 2019-11-05 | 杭州瑞网广通信息技术有限公司 | 一种车站多级容灾架构及方法 |
CN109582509A (zh) * | 2017-09-29 | 2019-04-05 | 中兴通讯股份有限公司 | 分布式文件***容灾配置方法、装置和可读存储介质 |
CN108650638B (zh) * | 2018-03-07 | 2021-06-18 | 海能达通信股份有限公司 | 一种集群***的扩容方法及基站 |
CN111371865B (zh) * | 2020-02-26 | 2023-02-24 | 上海达梦数据库有限公司 | 一种客户端连接关系调整方法、***及节点 |
CN112015590B (zh) * | 2020-07-15 | 2023-11-14 | 北京淇瑀信息科技有限公司 | 一种多层级灾备方法、装置及电子设备 |
CN112433891A (zh) * | 2020-12-02 | 2021-03-02 | 中国建设银行股份有限公司 | 数据处理方法、装置和服务器 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1710865A (zh) * | 2005-06-30 | 2005-12-21 | 西安交通大学 | 一种提高基于构件软件***可靠性的方法 |
CN101309167A (zh) * | 2008-06-27 | 2008-11-19 | 华中科技大学 | 基于集群备份的容灾***及方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4561283B2 (ja) * | 2004-09-30 | 2010-10-13 | ブラザー工業株式会社 | ノード装置、共用情報更新方法、共用情報保存方法、共用情報更新処理プログラム、及び共用情報保存処理プログラム |
CN102143046B (zh) * | 2010-08-25 | 2015-03-11 | 华为技术有限公司 | 负载均衡的方法、设备和*** |
CN102394914A (zh) * | 2011-09-22 | 2012-03-28 | 浪潮(北京)电子信息产业有限公司 | 集群脑裂处理方法和装置 |
CN103905247B (zh) * | 2014-03-10 | 2017-02-01 | 北京交通大学 | 一种基于多客户裁决的双机备份方法及*** |
-
2014
- 2014-12-27 CN CN201410832193.7A patent/CN104579765B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1710865A (zh) * | 2005-06-30 | 2005-12-21 | 西安交通大学 | 一种提高基于构件软件***可靠性的方法 |
CN101309167A (zh) * | 2008-06-27 | 2008-11-19 | 华中科技大学 | 基于集群备份的容灾***及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN104579765A (zh) | 2015-04-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104579765B (zh) | 一种集群***的容灾方法和装置 | |
US8972622B2 (en) | Monitoring network performance and detecting network faults using round trip transmission times | |
JP5458308B2 (ja) | 仮想計算機システム、仮想計算機システムの監視方法及びネットワーク装置 | |
CN106663030B (zh) | 在分布式集群中的可扩展故障恢复通信 | |
CN110036599B (zh) | 网络健康信息的编程接口 | |
CN101883028B (zh) | 网络文件***服务器的检测方法及装置 | |
CN103718535B (zh) | 硬件故障的缓解 | |
WO2012014305A1 (ja) | システム障害における構成変更事象の影響度推定方法 | |
Trihinas et al. | Monitoring elastically adaptive multi-cloud services | |
EP3385833A1 (en) | Data path monitoring within a distributed storage network | |
CN104657250A (zh) | 一种对云主机进行性能监控的监控方法 | |
US8799399B2 (en) | Near-real time distributed usage aggregation system | |
US9923782B1 (en) | Computer network virtual entity pathway visualization system | |
CN110071978A (zh) | 一种集群管理的方法及装置 | |
US10191800B2 (en) | Metric payload ingestion and replay | |
CN108173678B (zh) | 客户端数据发送方法、客户端连接异常显示方法及装置 | |
US10552513B1 (en) | Computer system entity rendering system | |
US10282245B1 (en) | Root cause detection and monitoring for storage systems | |
WO2013171865A1 (ja) | 管理方法及び管理システム | |
Tan et al. | Resilient self-compressive monitoring for large-scale hosting infrastructures | |
US20160056996A1 (en) | System and Method for Implementing High Availability of Server in Cloud Environment | |
JP2010231293A (ja) | 監視装置 | |
WO2015122880A1 (en) | Monitoring a computing environment | |
CN111309515A (zh) | 一种容灾控制方法、装置及*** | |
US10223189B1 (en) | Root cause detection and monitoring for storage systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220726 Address after: Room 801, 8th floor, No. 104, floors 1-19, building 2, yard 6, Jiuxianqiao Road, Chaoyang District, Beijing 100015 Patentee after: BEIJING QIHOO TECHNOLOGY Co.,Ltd. Address before: 100088 room 112, block D, 28 new street, new street, Xicheng District, Beijing (Desheng Park) Patentee before: BEIJING QIHOO TECHNOLOGY Co.,Ltd. Patentee before: Qizhi software (Beijing) Co.,Ltd. |