CN114629783B - 状态监控方法、系统、设备及计算机可读存储介质 - Google Patents
状态监控方法、系统、设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN114629783B CN114629783B CN202210245318.0A CN202210245318A CN114629783B CN 114629783 B CN114629783 B CN 114629783B CN 202210245318 A CN202210245318 A CN 202210245318A CN 114629783 B CN114629783 B CN 114629783B
- Authority
- CN
- China
- Prior art keywords
- node
- information center
- backup cluster
- cluster
- health
- 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
- 238000000034 method Methods 0.000 title claims abstract description 66
- 238000012544 monitoring process Methods 0.000 title claims abstract description 38
- 230000036541 health Effects 0.000 claims abstract description 67
- 238000004891 communication Methods 0.000 claims abstract description 24
- 230000008569 process Effects 0.000 claims description 19
- 230000005540 biological transmission Effects 0.000 claims description 4
- 238000012806 monitoring device Methods 0.000 claims description 3
- 238000004590 computer program Methods 0.000 claims description 2
- 230000008878 coupling Effects 0.000 abstract description 5
- 238000010168 coupling process Methods 0.000 abstract description 5
- 238000005859 coupling reaction Methods 0.000 abstract description 5
- 230000000694 effects Effects 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 6
- 230000001419 dependent effect Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 3
- 230000003862 health status Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
- H04L41/0668—Management 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种状态监控方法、系统、设备及计算机可读存储介质。该方法通过在当前备份集群节点启动时,向建立通信连接的信息中心发送查询请求。其中,所述查询请求携带所述当前备份集群节点的键值;接收并缓存所述信息中心反馈的与节点信息对应的健康节点列表。在接收到所述信息中心发送的节点注册事件和/或节点宕机事件时,更新本地已缓存的对应健康节点列表,以对所述健康节点列表中所有健康节点的健康状态进行自主监控。通过本发明的技术方案解决了现有技术中当中心总控仲裁模块正常工作时,才可以执行数据备份任务的技术问题,实现了降低中心总控仲裁模块与备份集群节点的耦合性,提高整个系统可用性的技术效果。
Description
技术领域
本发明实施例涉及计算机技术领域,尤其涉及一种状态监控方法、系统、设备及计算机可读存储介质。
背景技术
随着计算机数据备份的普及应用,为避免单点故障,必须对备份集群节点进行监控,以便在备份任务执行时找到健康的备份集群节点。现有数据备份集群中备份集群节点的监控方法,通常都是由中心总控仲裁模块来监控所有备份集群节点,当数据备份任务需要分配给备份集群节点去执行时,都是向中心总控仲裁模块发起查询,才能得知哪些备份集群节点是健康的。
但是,现有技术中的中心总控仲裁模块被所有备份集群节点所依赖,而且是强依赖。一旦当中心总控仲裁模块不能正常工作,就无法获取备份集群节点的健康信息,正常的数据备份规则无法得到执行。
发明内容
有鉴于此,本发明提供一种状态监控方法、系统、设备及计算机可读存储介质,以解决现有技术数据备份集群场景下中心总控仲裁模块成为所有集群节点的强依赖,仲裁模块正常工作时才可以执行数据备份任务的技术问题。
第一方面,本发明实施例提供了一种状态监控方法,包括:
在当前备份集群节点启动时,向建立通信连接的信息中心发送查询请求;其中,所述查询请求携带所述当前备份集群节点的节点信息,所述节点信息以键值对的形式进行表征;
接收并缓存所述信息中心反馈的与所述节点信息对应的健康节点列表;
在接收到所述信息中心发送的节点注册事件和/或节点宕机事件时,更新本地已缓存的对应健康节点列表,以对所述健康节点列表中所有健康节点的健康状态进行自主监控。
第二方面,本发明实施例还提供了状态监控系统,包括:信息中心和至少一个备份集群节点;所述信息中心与每个所述备份集群节点进行通信连接;
在所述备份集群节点启动时,向建立通信连接的信息中心发送查询请求,以获取并缓存所述备份集群节点所在集群的健康节点列表,在接收到信息中心发送的节点注册事件和/或节点宕机事件时,更新本地已缓存的健康节点列表,以对健康节点列表中所有健康节点的健康状态进行自主监控。
第三方面,本发明实施例还提供了一种所述状态监控设备,所述设备包括:存储器,以及一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面中所述的状态监控方法。
第四方面,一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面中所述的状态监控方法。
本发明实施例通过在当前备份集群节点启动时,向建立通信连接的信息中心发送查询请求,并将信息中心反馈的与节点信息对应的健康节点列表缓存至本地,在选择健康的备份集群节点时以本地的健康节点列表为依据,降低了中心总仲裁模块与备份集群节点的耦合性,使得健康的备份集群节点的选择并未强依赖于中心总仲裁模块,大大降低了任务失败的概率,提高了整个系统的可用性。并且,在接收到信息中心发送的节点注册事件和/或节点宕机事件时,可以更新本地已缓存的对应健康节点列表,从而可以自主地感知其它节点的健康状态,进而达到了对其它备份集群节点的健康状态进行自主监控的目的。
附图说明
图1是本发明实施例一提供的一种状态监控方法的流程图;
图2是本发明实施例二提供的一种状态监控方法的流程图;
图3是本发明实施例三提供的一种状态监控方法的流程图;
图4是本发明实施例提供的一种节点启动时注册和查询健康节点列表的示意图;
图5是本发明实施例提供的一种节点宕机事件时更新本地的健康节点列表的示意图;
图6是本发明实施例四提供的一种状态监控系统的结构示意图;
图7是本发明实施例五中提供的一种计算机可读存储介质的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例一
图1是本发明实施例一提供的一种状态监控方法的流程图,本实施例可适用于数据备份集群系统中无中心总控仲裁模块的场景,该方法可以由备份集群节点执行,该备份集群节点可以采用软件和/或硬件的方式来实现。该备份集群节点可以为一个服务器,也可以为计算机等具备数据处理功能的终端,该方法具体包括:
S110、在当前备份集群节点启动时,向建立通信连接的信息中心发送查询请求。
其中,所述查询请求可以携带所述当前备份集群节点的节点信息,所述节点信息以键值对的形式进行表征。
其中,备份集群节点指的是用于执行数据备份系统中数据备份任务的节点。
需要说明的是,信息中心是集群系统中的独立进程,利用容器方式运行。代理,运行在备份集群中所有备份集群节点上,是备份守护进程的新增线程。代理的功能包括两种:其一,定时向信息中心发送保活消息;其二,向信息中心订阅节点宕机事件或节点启动事件,并在接收到节点宕机事件或节点启动事件时,相应地更新内存中的健康节点列表的map数据结构。
在实施例中,信息中心可以是一个键值对服务,接收各备份集群节点的注册,以键值对的形式记录并更新备份集群节点列表中信息的后台服务器。可以理解为,信息中心不承担仲裁的职责,并用于提供键值对服务,一个备份集群节点的健康状态由其它节点从信息中心获取之后,该节点自行仲裁和自行决定。信息中心是一个分布式键值对服务,每个备份集群节点将自身的健康状态等信息以键值对的形式写入信息中心,以使其它的备份集群节点可以从信息中心中读取,即信息中心中存储数据备份系统中所有备份集群节点的信息。并且,由于信息中心是一个分布式的服务,即信息中心不存在单点故障,并且,由于信息中心是一个集群,即使存在节点宕机时,其它节点仍然可以继续服务,即信息中心不容易出现宕机现象。
需要说明的是,所述键值可以位于注册表结构链末端,和文件系统的文件类似,包含当前计算机及应用程序执行时使用的实际配置信息和数据。键值可以包含几种数据类型,以适应不同环境的使用需求。在实施例中,每个备份集群节点都配置节点标识和集群标识,其中,节点标识用于表征每个备份集群节点自身唯一的标识,集群标识用于表征备份集群节点自身所属的集群。需要说明的是,每个备份集群节点可以所属一个或多个集群,即相应的,每个备份集群节点可以对应一个或多个集群标识。当然,在备份集群节点所对应的集群标识的数量与自身所属的集群数量是相同的。可以理解为,每个集群所对应的集群标识是唯一的。
在一实施例中,节点信息的生成过程,包括:根据当前备份集群节点的节点标识和当前备份集群节点所在集群的集群标识生成对应的字符串;将字符串作为当前备份集群节点的节点寻址信息。在实施例中,当前备份集群节点在启动时,以集群标识和节点标识组成的字符串,作为键;然后和其它的值进行组合,得到当前备份集群节点的节点标识。其中,集群标识在前,节点标识在后,组成对应的键。
在实施例中,在当前备份集群节点启动时,执行自身的启动操作并向所关联的信息中心发送携带键值的查询请求。当然,在当前备份节点所发送的查询请求中携带当前备份集群节点的键值,以使信息中心根据键值中的节点标识和集群标识,可以快速并准确地在自身的存储器中查找到与键值相对应的健康节点列表。
S120、接收并缓存所述信息中心反馈的与节点信息对应的健康节点列表。
其中,与节点信息相对应的健康节点列表,可以理解为当前备份节点所在集群的所有处于健康状态的备份集群节点的统计表。在实施例中,信息中心中存储有数据备份系统中所有处于健康状态的备份集群节点。在信息中心接收到当前备份集群节点发送的查询请求之后,信息中心对查询请求中的节点信息进行解析,以得到当前备份集群节点所对应的集群标识,并从自身的存储器中查找所属该集群id的集群内所有健康节点,并将包含所有健康节点的健康节点列表反馈至当前备份集群节点,以使当前备份集群节点接收并将健康节点列表缓存至本地。当然,若当前备份集群节点所对应的集群标识为多个,即当前备份集群节点所属的集群为多个,则信息中心向当前备份集群节点所反馈的健康节点列表也为多个。可以理解为,每个集群对应一个健康节点列表。相应的,信息中心向当前备份集群节点所反馈的健康节点列表的数量与当前集群节点所属集群的数量是相同的。
在实施例中,健康节点列表可以以map数据结构的形式进行表征。在实施例中,信息中心可以提供查询某个前缀下所有键的机制。由于集群内所有节点的键均可以由集群标识和节点标识拼出来,集群标识在前,于是每个节点都可以在启动时以集群标识拼出一个前缀,根据这个前缀去信息中心查询该前缀下所有的键,就得到了所有健康节点的全量列表,即健康节点列表。信息中心可以提供事件服务,节点订阅事件时可以指定前缀。在该前缀下,一旦增加新键,或者某个键被删除、修改,所有订阅者就会收到事件。本发明中的所有节点均可以以集群标识拼出一个前缀,订阅该前缀下的所有事件。新节点加入集群时或者启动时,可以有新增键的事件;当现有节点因不能保活而被信息中心删除相应键时,会有删除键的事件。事件中可以带有事件类型和对应的具体的键,从里面可以解析出集群标识和节点标识。健康节点收到事件,就可以得知某个节点加入或者离开,然后就会相应地修改本地内存中的缓存。
S130、在接收到所述信息中心发送的节点注册事件和/或节点宕机事件时,更新本地已缓存的对应健康节点列表,以对所述健康节点列表中所有健康节点的健康状态进行自主监控。
其中,所述节点注册事件指的是备份集群节点将自身注册到信息中心的事件;节点宕机事件指的是备份集群节点指的是备份集群节点出现故障而无法进行备份任务的事件。在实施例中,为了保证数据备份系统中每个备份集群节点可以从信息中心中准确地获取到所有健康节点的信息,在每个备份集群节点启动时,备份集群节点主动向自身所关联的信息中心发送注册请求,以使自身的信息以键值对的形式记录到信息中心中,然后信息中心将该节点注册事件转发至其它健康节点,以使其它健康节点在本地已缓存的健康节点列表中增加该节点注册事件所对应备份集群节点的信息。
同样地,在数据备份系统中存在出现宕机的备份集群节点时,信息中心向其它健康节点发送(即广播)节点宕机事件,以使其在本地已缓存的健康节点列表中删除该节点宕机事件所对应备份集群节点的信息。
需要说明的是,在信息中心中只要存在该键,无论值是什么,都表明该备份集群节点是健康的。在备份集群节点出现节点宕机事件时,即未定时向信息中心发送保活消息的情况下,信息中心自动将该键删除。
需要说明的是,备份集群节点可以对应多个集群,即在出现节点注册事件或节点宕机事件的备份集群节点对应多个集群的情况下,信息中心向每个集群中的其它备份集群节点反馈对应的健康节点列表,以使其它备份集群节点更新本地已缓存的对应健康节点列表。示例性地,假设出现节点宕机事件的节点为节点3,该节点3对应集群1和集群2,则信息中心分别向集群1中的其它健康节点和集群2中的其它健康节点发送节点宕机事件,以使集群1中的其它健康节点对自身本地已缓存的健康节点列表1,以及集群2中的其它健康节点对自身本地已缓存的健康节点列表2进行更新,从而使得每个健康节点均可以对其它备份集群节点的健康状态进行自主监控。
本实施例的技术方案,通过在当前备份集群节点启动时,向建立通信连接的信息中心发送查询请求,并将信息中心反馈的与键值对应的健康节点列表缓存至本地,在选择健康的备份集群节点时以本地的健康节点列表为依据,降低了中心总仲裁模块与备份集群节点的耦合性,使得健康的备份集群节点的选择并未强依赖于中心总仲裁模块,大大降低了任务失败的概率,提高了整个系统的可用性。并且,在接收到信息中心发送的节点注册事件和/或节点宕机事件时,可以更新本地已缓存的对应健康节点列表,从而可以自主地感知其它节点的健康状态,进而达到了对其它备份集群节点的健康状态进行自主监控的目的。
实施例二
图2是本发明实施例二提供的一种状态监控方法的流程图,本实施例在上述各实施例的基础上进一步进行了优化,增加了“定时向建立通信连接的信息中心发送保活消息”的特征。如图2所示,本实施例中的状态监控方法具体包括如下步骤:
S210、在当前备份集群节点启动时,分别向建立通信连接的信息中心发送注册请求和订阅请求,以将所述当前备份集群节点的节点信息存储至信息中心,以及订阅所述信息中心的节点注册事件和节点宕机事件。
其中,所述节点信息可以以键值对的形式进行表征。在实施例中,注册请求指的是备份集群节点将自身的节点信息存储至信息中心的请求;订阅请求指的是备份集群节点订阅信息中心的节点注册事件和节点宕机事件的请求。
在实施例中,在当前备份集群节点启动时,执行自身的启动操作并向信息中心发送注册请求,以将当前备份集群节点的节点信息存储至信息中心;以及向信息中心发送订阅请求,以在信息中心检测到其它备份集群节点的注册请求或者节点宕机的情况下,信息中心向当前备份集群节点发送对应额节点注册事件和节点宕机事件,以使当前备份集群节点对本地已缓存的健康节点列表进行更新。
S220、在当前备份集群节点启动时,向建立通信连接的信息中心发送查询请求。
其中,所述查询请求携带所述当前备份集群节点的节点信息,节点信息以键值对的形式进行表征。
S230、接收并缓存所述信息中心反馈的与所述节点信息对应的健康节点列表。
S240、在所述当前备份集群节点运行过程中,定时向所述信息中心发送查询请求,以更新本地已缓存的对应健康节点列表。
在实施例中,当前备份集群节点在运行过程中,可以定时向信息中心发送携带集群标识的查询请求,以使信息中心根据集群标识查询该集群标识下所有的键,以得到该集群中所有健康节点的健康节点列表。可以理解为,在当前备份集群节点运行过程中,当前备份集群节点定时向信息中心发送的查询请求,是一个全量查询的请求,同当前备份集群节点启动时的查询请求相同。这样,即使在节点宕机事件或节点启动事件发生的同时,备份集群节点在极小概率下因故丢失本地已缓存的健康节点列表,当前备份集群节点也可以尽快地得到一份健康节点列表,从而保证了备份任务的稳定执行。
在实施例中,在当前备份集群节点运行过程中,向信息中心发送查询请求的间隔可以是预先配置的固定间隔。示例性地,比如,固定间隔可以以小时为单位,比如,为6个小时等,对此并不进行限定。
在实施例中,为了预防因节点宕机事件或节点启动事件导致自身已缓存的健康节点列表丢失,每间隔数个小时,每个备份集群节点都可以如启动时那样,向信息中心读取全量的本集群所有健康节点列表,以更新缓存。备份集群节点在后续的数据备份任务中,也可以将数据备份任务分配给其它健康节点进行执行。另外,数据备份集群节点在任务执行的过程中如遇宕机,也可以根据最新的健康节点列表,选择健康节点重新执行数据备份任务。
可以得到的是,本发明备份集群节点定时向信息中心发送一次该集群内健康节点列表的全量查询,如启动时那样。这样,即使宕机/启动的事件在极小概率下因故丢失,节点最终也会有一份及时的健康节点列表。此外,当备份任务需要被执行时,就可以从健康的节点里选择执行节点,最大限度避免节点宕机带来的备份任务故障。
S250、在接收到所述信息中心发送的节点注册事件和/或节点宕机事件时,更新本地已缓存的对应健康节点列表,以对所述健康节点列表中所有健康节点的健康状态进行自主监控。
具体的,本发明中每个备份集群节点均可以订阅本集群内的所有节点更新信息,并相应更新内存中的健康节点列表的map数据结构。也就是说,该map数据结构在启动时根据健康节点的全量列表生成,之后就依靠节点注册事件进行增量更新;或者,根据节点宕机事件进行删除操作。
本实施例的技术方案,在上述实施例的基础上,在当前备份集群节点运行过程中,定时向信息中心发送全量查询请求,以更新本地已缓存的健康节点列表,避免了备份集群节点因节点宕机事件或节点启动事件在极小概率下因故丢失健康节点列表的情况,从而保证了备份任务的稳定执行。
在一实施例中,状态监控方法,还包括:定时向建立通信连接的信息中心发送保活消息。
其中,所述保活消息用于表征所述当前备份集群节点处于健康状态。
在上述方案的基础上,可选的,在所述当前备份集群节点的保活消息相邻两次的发送间隔达到预设时间间隔时,所述当前备份集群节点处于宕机状态。其中,相邻两次的发送间隔指的是当前备份集群节点在这一次向信息中心发送保活消息的时间和上一次向信息中心发送保活消息的时间的差值。示例性地,预设时间间隔一般可以为定时发送保活消息所对应时间的数倍,比如,预定义每隔10秒,备份集群节点向信息中心发送一次保活消息,则预设时间间隔可以为20秒。
在实施例中,当前备份集群节点可以定时向信息中心发送保活(keepalive)消息。一旦信息中心超过一定时间间隔(通常为保活消息的发送间隔的数倍)未接收到保活消息,则认为该备份集群节点已经宕机,则信息中心可以向该集群内的所有订阅者广播此节点宕机事件。
实施例三
图3是本发明实施例三提供的一种状态监控方法的流程图,本实施例在上述各实施例的基础上进一步进行了优化。本实施例作为优选实施例,对状态监控的过程进行说明。本实施例中的状态监控方法具体包括如下步骤:
S310、在备份集群节点启动时,自动向信息中心进行键值对的注册,并从信息中心订阅所有备份集群节点的节点注册事件及节点宕机事件。
在实施例中,信息中心是一个键值对服务,即每个备份集群节点在启动时,向信息中心发送注册请求,以键值对的形式将自身的节点信息记录并更新备份集群节点对应的健康节点列表的信息。其中,每个备份集群节点均配置自身的键值对,并且,键是根据节点标识(也可以记为节点id)和集群标识(也可以记为集群id)生成的字符串。
S320、在备份集群节点启动时,从信息中心读取对应所在集群的健康节点列表,并缓存于本地。
其中,所有备份集群节点按照不同的集群标识存储在不同的健康节点列表中。可以理解为,同一个集群标识的所有备份集群节点可以储存于相同的健康节点列表中,有利于对每个节点健康状态的快速查询。本发明中当有新的备份集群节点启动时,请求获取信息中心当前所在集群的健康节点列表,有利于集群备份任务的分配和转移,保证了备份集群节点执行任务时能够稳定运行。
S330、备份集群节点持续向信息中心发送保活消息。
在实施例中,每个备份集群节点可以持续地(也可以理解为定时地)向信息中心发送保活消息。一旦某个备份集群节点出现宕机或恢复时,该集群内的其它所有健康节点均会收到从信息中心发来的节点宕机事件或节点恢复事件,并据此更新本地已缓存的健康节点列表。
需要说明的是,备份集群界定时向信息中心发送保活消息,能够使信息中心实时获取备份集群节点的健康状态,即备份集群节点是否能够正常执行备份任务的状态信息,当存在宕机或恢复的健康节点时,信息中心能够及时告知该集群内其它的所有备份集群节点,从而实现所有节点自治地感知该集群内其它的所有备份集群节点的健康状态,达到对状态进行监控的目的。
S340、在节点运行过程中,每个备份集群节点每隔预设时长向信息中心读取所在集群内包含其它所有健康节点的健康节点列表,以更新本地缓存。
需要说明的是,为预防事件丢失,在节点运行过程中,每个备份集群节点可以定时按照当前状态更新健康节点列表,实现了将最后更改的备份信息实时存储在本地记录中,减少了因宕机或其他故障造成的数据损失。
S350、备份集群节点在后续的数据备份任务中,可以将数据备份任务分配给健康节点进行执行。
在实施例中,备份集群节点在任务执行的过程中如遇宕机,也可以根据最新的健康节点列表,选择健康节点重新执行数据备份任务。
需要说明的是,当某一节点存在宕机时,可以根据最新的健康节点列表,选择健康节点重新执行数据备份任务,由于每隔固定间隔读取信息中心中所有健康节点的信息,所以当存在由于宕机造成的任务闲置时,能够保证及时有效的由处于正常工作状态(即健康状态)的节点来执行该备份任务。
与现有技术相比,本方案中公开一种数据备份集群系统中无中心总控仲裁模块的节点自治监控方法。在此方法中,信息中心虽然承担了类似于仲裁模块的职责,但是备份集群节点自治维护一份本地内存里的健康节点列表,在选择节点时以本地缓存为依据,降低了中心总控仲裁模块与备份集群节点的耦合性,使得健康节点的选择不是强依赖于仲裁模块。当仲裁模块宕机时,备份集群节点仍然可以依靠本地内存的健康节点列表继续选择节点执行备份任务,只有被选中的节点恰巧在仲裁模块宕机的这一期间也宕机,才会导致备份任务失败,从而大大降低了任务失败的概率,提高了整个系统的可用性。
图4是本发明实施例提供的一种节点启动时注册和查询健康节点列表的示意图。如图4所示,在信息中心中存储有n个处于健康状态的备份集群节点,分别为节点1、节点2……节点n。在实施例中,在备份集群节点(比如,节点1、节点2……节点n中的任一个)向信息中心发送注册请求时,备份集群节点将自身的节点信息存储至信息中心;在信息中心接收到备份集群节点的查询请求时,信息中心向该备份集群节点反馈该备份集群节点所在集群的所有健康节点对应的健康节点列表。
图5是本发明实施例提供的一种节点宕机事件时更新本地的健康节点列表的示意图。如图5所示,在备份集群节点(比如,节点1、节点2……节点n中的任一个)在运行过程中,定时地向信息中心发送保活消息,即所谓的日常保活,以使信息中心及时地监控到处于健康状态的所有备份集群节点。当然,在备份集群节点向信息中心发送保活消息的间隔达到预设时间间隔时,即出现所谓的超时未保活的情况,则该备份集群节点出现宕机情况,则信息中心向处于健康状态的其它备份集群节点发送节点宕机事件,以使其它备份集群节点更新本地已缓存的健康节点列表。比如,如图5所示,在节点2未定时向信息中心发送保活消息,则信息中心认为该节点2出现节点宕机事件,然后信息中心向其它的节点发送节点2对应的节点宕机事件,以使其它备份集群节点(即除节点2之外的节点1、节点3、节点4、节点5……节点n)更新本地已缓存的健康节点列表。
实施例四
图6是本发明实施例四提供的一种状态监控系统的结构示意图,该系统可执行本发明任意实施例所提供的状态监控方法,具备执行方法相应的功能模块和有益效果,本实施例可适用于数据备份集群系统中无中心总控仲裁模块的场景中。
如图6所示,该系统包括:信息中心610和至少一个备份集群节点620;所述信息中心610与每个所述备份集群节点620进行通信连接。
在所述备份集群节点620启动时,向建立通信连接的信息中心610发送查询请求,以获取并缓存所述备份集群节点620所在集群的健康节点列表,在接收到信息中心610发送的节点注册事件和/或节点宕机事件时,更新本地已缓存的健康节点列表,以对健康节点列表中所有健康节点的健康状态进行自主监控。
本实施例的技术方案,通过在当前备份集群节点启动时,向建立通信连接的信息中心发送查询请求。其中,所述查询请求携带所述当前备份集群节点的键值;接收并缓存所述信息中心反馈的与节点信息对应的健康节点列表。在接收到所述信息中心发送的节点注册事件和/或节点宕机事件时,更新本地已缓存的对应健康节点列表,以对所述健康节点列表中所有健康节点的健康状态进行自主监控。通过本发明的技术方案解决了现有技术中当中心总控仲裁模块正常工作时,才可以执行数据备份任务的技术问题,实现了降低中心总控仲裁模块与备份集群节点的耦合性,提高整个系统可用性的技术效果。
在上述各个实施例的基础上,在所述向建立通信连接的信息中心发送查询请求之前,还包括:分别向建立通信连接的信息中心发送注册请求和订阅请求,以将所述当前备份集群节点的节点信息存储至信息中心,以及订阅所述信息中心的节点注册事件和节点宕机事件,其中,所述节点信息以键值对的形式进行表征。
进一步的,定时向建立通信连接的信息中心发送保活消息;其中,所述保活消息用于表征所述当前备份集群节点处于健康状态。
进一步的,在所述接收并缓存所述信息中心反馈的与所述查询请求对应的健康节点列表之后,还包括:在所述当前备份集群节点运行过程中,定时向所述信息中心发送查询请求,以更新本地已缓存的对应健康节点列表。
进一步的,所述节点信息的生成过程,包括:根据所述当前备份集群节点的节点标识和所述当前备份集群节点所在集群的集群标识生成对应的字符串;将所述字符串作为所述当前备份集群节点的节点信息。
进一步的,在所述当前备份集群节点的保活消息相邻两次的发送间隔达到预设时间间隔时,所述当前备份集群节点处于宕机状态。
进一步的,每个备份集群节点对应唯一的键值对。
实施例五
图7为本发明实施例五提供的一种状态监控设备的结构示意图。图7示出了适于用来实现本发明实施方式的终端712的框图。图7显示的终端712仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图7所示,终端712以通用计算设备的形式表现,并具有通过拍照、截图等保存图片以及翻译功能。终端712的组件可以包括但不限于:一个或者多个处理器716,存储装置728,连接不同系统组件(包括存储装置728和处理器716)的总线718。
总线718表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
终端712典型地包括多种计算机系统可读介质。这些介质可以是任何能够被终端712访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
存储装置728可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)730和/或高速缓存存储器732。终端712可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统734可以用于读写不可移动的、非易失性磁介质(图7未显示,通常称为“硬盘驱动器”)。尽管图7中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线718相连。存储装置728可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
具有一组(至少一个)程序模块742的程序740,可以存储在例如存储装置728中,这样的程序模块742包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块742通常执行本发明所描述的实施例中的功能和/或方法。
终端712也可以与一个或多个外部设备714(例如键盘、指向设备、摄像头、显示器724等)通信,还可与一个或者多个使得用户能与该终端712交互的设备通信,和/或与使得该终端712能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口722进行。并且,终端712还可以通过网络适配器720与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器720通过总线718与终端712的其它模块通信。应当明白,尽管图中未示出,可以结合终端712使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
处理器716通过运行存储在存储装置728中的程序,从而执行各种功能应用以及数据处理,例如实现本发明上述实施例所提供的状态监控方法。
实施例六
本发明实施例六还提供一种计算机可读存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种状态监控方法,该方法包括:
在当前备份集群节点启动时,向建立通信连接的信息中心发送查询请求;其中,所述查询请求携带所述当前备份集群节点的节点信息,所述节点信息以键值对的形式进行表征;
接收并缓存所述信息中心反馈的与所述节点信息对应的健康节点列表;
在接收到所述信息中心发送的节点注册事件和/或节点宕机事件时,更新本地已缓存的对应健康节点列表,以对所述健康节点列表中所有健康节点的健康状态进行自主监控。
当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的状态监控方法中的相关操作。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
值得注意的是,上述搜索装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (9)
1.一种状态监控方法,其特征在于,包括:
在当前备份集群节点启动时,向建立通信连接的信息中心发送查询请求;其中,所述查询请求携带所述当前备份集群节点的节点信息,所述节点信息以键值对的形式进行表征;
接收并缓存所述信息中心反馈的与所述节点信息对应的健康节点列表;
在接收到所述信息中心发送的节点注册事件和/或节点宕机事件时,更新本地已缓存的对应健康节点列表,以对所述健康节点列表中所有健康节点的健康状态进行自主监控;
所述节点信息的生成过程,包括:
根据所述当前备份集群节点的节点标识和所述当前备份集群节点所在集群的集群标识生成对应的字符串;
将所述字符串作为所述当前备份集群节点的节点信息。
2.根据权利要求1所述的方法,其特征在于,在所述向建立通信连接的信息中心发送查询请求之前,还包括:
分别向建立通信连接的信息中心发送注册请求和订阅请求,以将所述当前备份集群节点的节点信息存储至信息中心,以及订阅所述信息中心的节点注册事件和节点宕机事件。
3.根据权利要求1所述的方法,其特征在于,所述方法,还包括:
定时向建立通信连接的信息中心发送保活消息;其中,所述保活消息用于表征所述当前备份集群节点处于健康状态。
4.根据权利要求1所述的方法,其特征在于,在所述接收并缓存所述信息中心反馈的与所述查询请求对应的健康节点列表之后,还包括:
在所述当前备份集群节点运行过程中,定时向所述信息中心发送查询请求,以更新本地已缓存的对应健康节点列表。
5.根据权利要求3所述的方法,其特征在于,在所述当前备份集群节点的保活消息相邻两次的发送间隔达到预设时间间隔时,所述当前备份集群节点处于宕机状态。
6.根据权利要求1所述的方法,其特征在于,每个备份集群节点对应唯一的键值对。
7.一种状态监控系统,其特征在于,包括:信息中心和至少一个备份集群节点;所述信息中心与每个所述备份集群节点进行通信连接;
在所述备份集群节点启动时,向建立通信连接的信息中心发送查询请求,以获取并缓存所述备份集群节点所在集群的健康节点列表,在接收到信息中心发送的节点注册事件和/或节点宕机事件时,更新本地已缓存的健康节点列表,以对健康节点列表中所有健康节点的健康状态进行自主监控;
其中,所述查询请求携带所述当前备份集群节点的键值;
所述获取并缓存所述备份集群节点所在集群的健康节点列表,包括:
接收并缓存所述信息中心反馈的与节点信息对应的健康节点列表;其中,所述节点信息以键值对的形式进行表征;
所述节点信息的生成过程,包括:
根据所述当前备份集群节点的节点标识和所述当前备份集群节点所在集群的集群标识生成对应的字符串;
将所述字符串作为所述当前备份集群节点的节点信息。
8.一种状态监控设备,其特征在于,所述设备包括:存储器,以及一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-6中任一所述的状态监控方法。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-6中任一所述的状态监控方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210245318.0A CN114629783B (zh) | 2022-03-14 | 2022-03-14 | 状态监控方法、系统、设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210245318.0A CN114629783B (zh) | 2022-03-14 | 2022-03-14 | 状态监控方法、系统、设备及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114629783A CN114629783A (zh) | 2022-06-14 |
CN114629783B true CN114629783B (zh) | 2024-03-26 |
Family
ID=81902453
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210245318.0A Active CN114629783B (zh) | 2022-03-14 | 2022-03-14 | 状态监控方法、系统、设备及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114629783B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103560922A (zh) * | 2013-11-18 | 2014-02-05 | 北京特立信电子技术股份有限公司 | 一种容灾方法及系统 |
CN106375342A (zh) * | 2016-10-21 | 2017-02-01 | 用友网络科技股份有限公司 | 一种基于zookeeper技术的系统集群方法及系统 |
CN110048896A (zh) * | 2019-04-29 | 2019-07-23 | 广州华多网络科技有限公司 | 一种集群数据获取方法、装置及设备 |
CN111404759A (zh) * | 2020-04-17 | 2020-07-10 | 腾讯科技(深圳)有限公司 | 服务检测方法、规则配置方法、相关设备及介质 |
CN113282604A (zh) * | 2021-07-14 | 2021-08-20 | 北京远舢智能科技有限公司 | 基于消息队列实现的高可用时序数据库集群系统 |
CN113742416A (zh) * | 2020-05-29 | 2021-12-03 | 浙江正泰电器股份有限公司 | 数据处理方法、设备、系统及存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9747183B2 (en) * | 2013-12-31 | 2017-08-29 | Ciena Corporation | Method and system for intelligent distributed health monitoring in switching system equipment |
CA3001304C (en) * | 2015-06-05 | 2021-10-19 | C3 Iot, Inc. | Systems, methods, and devices for an enterprise internet-of-things application development platform |
-
2022
- 2022-03-14 CN CN202210245318.0A patent/CN114629783B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103560922A (zh) * | 2013-11-18 | 2014-02-05 | 北京特立信电子技术股份有限公司 | 一种容灾方法及系统 |
CN106375342A (zh) * | 2016-10-21 | 2017-02-01 | 用友网络科技股份有限公司 | 一种基于zookeeper技术的系统集群方法及系统 |
CN110048896A (zh) * | 2019-04-29 | 2019-07-23 | 广州华多网络科技有限公司 | 一种集群数据获取方法、装置及设备 |
CN111404759A (zh) * | 2020-04-17 | 2020-07-10 | 腾讯科技(深圳)有限公司 | 服务检测方法、规则配置方法、相关设备及介质 |
CN113742416A (zh) * | 2020-05-29 | 2021-12-03 | 浙江正泰电器股份有限公司 | 数据处理方法、设备、系统及存储介质 |
CN113282604A (zh) * | 2021-07-14 | 2021-08-20 | 北京远舢智能科技有限公司 | 基于消息队列实现的高可用时序数据库集群系统 |
Also Published As
Publication number | Publication date |
---|---|
CN114629783A (zh) | 2022-06-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110535692B (zh) | 故障处理方法、装置、计算机设备、存储介质及存储系统 | |
CN102333029B (zh) | 一种服务器集群系统中的路由方法 | |
CN109656742B (zh) | 一种节点异常处理方法、装置及存储介质 | |
JP2007503628A (ja) | クラスタ化されたコンピューティングシステムにおける高速なアプリケーション通知 | |
CN103580906A (zh) | 一种数据备份的方法、系统及服务器 | |
US20210136145A1 (en) | Method for Changing Member in Distributed System and Distributed System | |
CN111680015A (zh) | 文件资源处理方法、装置、设备和介质 | |
US20040123183A1 (en) | Method and apparatus for recovering from a failure in a distributed event notification system | |
CN111752488B (zh) | 存储集群的管理方法、装置、管理节点及存储介质 | |
EP1894096A1 (en) | Apparatus, system, and method for facilitating communication between an enterprise information system and a client | |
CN108173665B (zh) | 一种备份数据的方法及装置 | |
CN114244810A (zh) | 虚拟ip管理方法、装置、电子设备和存储介质 | |
CN114629783B (zh) | 状态监控方法、系统、设备及计算机可读存储介质 | |
US20210326224A1 (en) | Method and system for processing device failure | |
CN110083653B (zh) | 一种订单数据的操作方法、装置、计算机设备和存储介质 | |
CN108418863B (zh) | 控制器集群的管理方法、sdn控制器及存储介质 | |
CN117435569A (zh) | 缓存系统动态扩容方法、装置、设备、介质和程序产品 | |
CN107404511B (zh) | 集群中服务器的替换方法及设备 | |
CN114116178A (zh) | 集群框架任务管理方法以及相关装置 | |
US8495153B1 (en) | Distribution of messages in nodes connected by a grid architecture | |
CN113064950A (zh) | 一种数据同步方法、装置、设备及存储介质 | |
JP2009086758A (ja) | コンピュータ・システム及びシステム管理プログラム | |
CN112187542A (zh) | 数据通信的集群方法及系统 | |
CN112714143A (zh) | 分布式存储系统的服务协调方法、装置及电子设备 | |
CN112532524B (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 |