一种集群告警方法及相关装置与流程

文档序号:24631195发布日期:2021-04-09 20:40阅读:65来源:国知局
一种集群告警方法及相关装置与流程

本申请涉及云平台技术领域,特别涉及一种集群告警方法、集群告警装置、服务器以及计算机可读存储介质。



背景技术:

随着云平台技术的不断发展,出现了多种集群告警技术。其中,ambari是一种基于web的告警工具,支持apachehadoop集群的供应、管理、监控和告警。ambari为了帮助用户鉴别以及定位集群的问题,实现告警机制,在ambari中预定了很多的告警规则,这些告警规则被用于监测集群的各个模块以及机器的状态。ambari告警系统包含各个组件的告警实例,主要负责生成各个服务组件的告警信息并上报给ambariserver,提供各类服务组件的告警信息,从而达到快读定位集群中问题的目的。

相关技术中,集群中的每个主机节点上面存储有各个服务组件的告警规则,ambariagent客户端会在每台主机上面读取定义并创建告警信息检查的定时任务,通过执行定时任务来获取组件的最新告警信息并上报给ambariserver(告警服务端)。告警服务端收到告警信息后更新告警实例的最新状态并进行界面展示。但是,该告警方法仅适用于目前的单集群环境,仅仅能单个集群中每个节点上报组件的告警信息,当多个集群的节点上报组件的告警信息则无法进行处理,即不适用于集群的环境,降低了告警方法的适用性。

因此,如何将集群告警装置适应集群系统是本领域技术人员关注的重点问题。



技术实现要素:

本申请的目的是提供一种集群告警方法、集群告警装置、服务器以及计算机可读存储介质,通过告警处理装置对接收到的多个组件告警信息进行匹配,得到对汇总告警规则对应的汇总告警信息,再发送时告警服务端,实现了对集群或平台进行告警处理,提高了告警处理的效果,可以及时发现出现的集群或平台级别的机器故障,提高集群的可靠性和稳定性。

为解决上述技术问题,本申请提供一种集群告警方法,包括:

告警处理装置获取多个集群的节点发送的组件告警信息,并将所述组件告警信息发送至告警服务端;

根据汇总告警规则对多个所述组件告警信息进行匹配,得到对应的汇总告警信息;其中,所述汇总告警信息包括集群告警信息和平台告警信息;

将所述汇总告警信息发送至所述告警服务端,以便所述告警服务端根据所述组件告警信息和所述汇总告警信息进行告警处理。

可选的,还包括:

所述节点按照预设周期进行组件状态查询,得到组件状态;

根据组件告警规则对所述组件状态匹配对应的组件告警信息;

将所述组价告警信息发送至所述告警处理装置。

可选的,根据汇总告警规则对多个所述组件告警信息进行匹配,得到对应的汇总告警信息,包括:

根据所述汇总告警规则将多个所述组件告警信息进行汇总,得到汇总数据;

根据所述汇总数据匹配对应的汇总告警信息。

可选的,根据汇总告警规则对多个所述组件告警信息进行匹配,得到对应的汇总告警信息,包括:

对多个所述组件告警信息中符合所述汇总告警规则的告警类型的告警信息进行统计,得到告警数量;

判断所述告警数量是否大于所述汇总告警规则的告警数量;

若是,则发送集群告警信息。

可选的,还包括:

所述告警处理装置根据心跳检测包的接收情况判断所述告警服务端是否正常运行;

若否,则发送告警服务端告警消息。

可选的,还包括:

将接收到的自定义告警规则发送至所述节点和所述告警服务端,以便实现对告警进行自定义配置。

本申请还提供一种集群告警装置,包括:

组件告警接收模块,用于获取多个集群的节点发送的组件告警信息,并将所述组件告警信息发送至告警服务端;

组件告警汇总模块,用于根据汇总告警规则对多个所述组件告警信息进行匹配,得到对应的汇总告警信息;其中,所述汇总告警信息包括集群告警信息和平台告警信息;

汇总告警发送模块,用于将所述汇总告警信息发送至所述告警服务端,以便所述告警服务端根据所述组件告警信息和所述汇总告警信息进行告警处理。

可选的,所述组件告警汇总模块,包括:

信息汇总单元,用于根据所述汇总告警规则将多个所述组件告警信息进行汇总,得到汇总数据;

告警匹配单元,用于根据所述汇总数据匹配对应的汇总告警信息。

本申请还提供一种服务器,包括:

存储器,用于存储计算机程序;

处理器,用于执行所述计算机程序时实现如上所述的集群告警方法的步骤。

本申请还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的集群告警方法的步骤。

本申请所提供的一种集群告警方法,包括:告警处理装置获取多个集群的节点发送的组件告警信息,并将所述组件告警信息发送至告警服务端;根据汇总告警规则对多个所述组件告警信息进行匹配,得到对应的汇总告警信息;其中,所述汇总告警信息包括集群告警信息和平台告警信息;将所述汇总告警信息发送至所述告警服务端,以便所述告警服务端根据所述组件告警信息和所述汇总告警信息进行告警处理。

通过告警处理装置对接收到的多个组件告警信息进行匹配,得到对汇总告警规则对应的汇总告警信息,再发送时告警服务端,实现了对集群或平台进行告警处理,提高了告警处理的效果,可以及时发现出现的集群或平台级别的机器故障,提高集群的可靠性和稳定性。

本申请还提供一种集群告警装置、服务器以及计算机可读存储介质,具有以上有益效果,在此不做具体限定。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本申请实施例所提供的一种集群告警方法的流程图;

图2为本申请实施例所提供的一种集群告警系统的结构示意图;

图3为本申请实施例所提供的一种集群告警装置的结构示意图。

具体实施方式

本申请的核心是提供一种集群告警方法、集群告警装置、服务器以及计算机可读存储介质,通过告警处理装置对接收到的多个组件告警信息进行匹配,得到对汇总告警规则对应的汇总告警信息,再发送时告警服务端,实现了对集群或平台进行告警处理,提高了告警处理的效果,可以及时发现出现的集群或平台级别的机器故障,提高集群的可靠性和稳定性。

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

相关技术中,集群中的每个主机节点上面存储有各个服务组件的告警规则,ambariagent客户端会在每台主机上面读取定义并创建告警信息检查的定时任务,通过执行定时任务来获取组件的最新告警信息并上报给ambariserver。告警服务端收到告警信息后更新告警实例的最新状态并进行界面展示。但是,该告警方法仅适用于目前的单集群环境,仅仅能单个集群中每个节点上报组件的告警信息,当多个集群的节点上报组件的告警信息则无法进行处理,即不适用于集群的环境,降低了告警方法的适用性。

因此,本申请提供一种集群告警方法,通过告警处理装置对接收到的多个组件告警信息进行匹配,得到对汇总告警规则对应的汇总告警信息,再发送时告警服务端,实现了对集群或平台进行告警处理,提高了告警处理的效果,可以及时发现出现的集群或平台级别的机器故障,提高集群的可靠性和稳定性。

以下通过一个实施例,对本申请提供的一种集群告警方法进行说明。

请参考图1,图1为本申请实施例所提供的一种集群告警方法的流程图。

本实施例中,该方法可以包括:

s101,告警处理装置获取多个集群的节点发送的组件告警信息,并将组件告警信息发送至告警服务端;

可见,本步骤中主要是使告警处理装置获取多个集群的节点发送的组件告警信息,并将该组件告警信息发送至告警服务端。

其中,告警处理装置是设置在节点与告警服务端之间的数据处理装置。该数据处理装置可以是单独的服务器设备,也可以是与告警服务端设置在同一个服务器设备中。在每一个节点中都可以根据配置好的告警组件根据本地的组件状态发送对应的组件告警信息。

其中,具体的可以是告警处理装置按照预设时间向节点请求对应的组件告警信息,也可以是节点按照预设时间向告警处理装置发送组件告警信息,还可以是告警处理装置从预设地址中直接获取的组件告警信息。

进一步的,本实施例还可以包括:

步骤1,节点按照预设周期进行组件状态查询,得到组件状态;

步骤2,根据组件告警规则对组件状态匹配对应的组件告警信息;

步骤3,将组价告警信息发送至告警处理装置。

可见,本可选方案主要是对节点中的操作进行说明。本可选方案中,节点首先按照预设周期进行组件状态查询,得到组件状态;然后,根据组件告警规则对组件状态匹配对应的组件告警信息;最后,将组价告警信息发送至告警处理装置。其中,在每个节点中进行组件状态查询并获取组件告警信息的方式可以采用现有技术提供的任意一种组件获取方式。

s102,根据汇总告警规则对多个组件告警信息进行匹配,得到对应的汇总告警信息;其中,汇总告警信息包括集群告警信息和平台告警信息;

在s101的基础上,本步骤旨在根据汇总告警规则对多个组件告警信息进行匹配,得到对应的汇总告警信息。其中,汇总告警信息包括集群告警信息和平台告警信息。

其中,汇总告警规则主要是用于将组件告警信息进行汇总后再进行告警判断的告警规则。通过将组件告警信息进行汇总可以确定集群或平台发生的告警问题,以便实现对集群级别或平台级别的问题进行告警。

其中,汇总告警规则可以是对某一类型的组件告警信息进行汇总后再进行判断得到告警信息的告警规则,也可以是对所有集群中的组件告警信息进行总数统计得到告警信息的告警规则,还可以是对平台中所有组件的告警信息总数统计得到告警信息的告警规则。

进一步的,本步骤可以包括:

步骤1,根据汇总告警规则将多个组件告警信息进行汇总,得到汇总数据;

步骤2,根据汇总数据匹配对应的汇总告警信息。

可见,本可选方案主要是如何进行汇总告警规则匹配进行说明。本可选方案中首先,根据汇总告警规则将多个组件告警信息进行汇总,得到汇总数据;然后,根据汇总数据匹配对应的汇总告警信息。可加,本可选方案中主要是通过统计出的总数进行告警匹配,得到汇总告警信息。

进一步的,本步骤可以包括:

步骤1,对多个组件告警信息中符合汇总告警规则的告警类型的告警信息进行统计,得到告警数量;

步骤2,判断告警数量是否大于汇总告警规则的告警数量;

步骤3,若是,则发送集群告警信息;

可见,本可选方案主要是如何进行汇总告警规则匹配进行说明。本可选方案中首先对多个组件告警信息中符合汇总告警规则的告警类型的告警信息进行统计,得到告警数量;然后,判断告警数量是否大于汇总告警规则的告警数量;若是,则发送集群告警信息。很显然,本可选方案中主要是对某一类型的组件告警信息的数量进行判断,以便确定是否出现告警情况。

其中,该汇总告警规则的告警数量可以根据技术人员的经验进行设定,也可以根据用户输入的告警数量进行设定,还可以根据集群的运行状态进行动态设定,在此不做具体限定。

s103,将汇总告警信息发送至告警服务端,以便告警服务端根据组件告警信息和汇总告警信息进行告警处理。

在s102的基础上,本步骤旨在将汇总告警信息发送至告警服务端,以便告警服务端根据组件告警信息和汇总告警信息进行告警处理。

进一步的,本实施例还可以包括:

告警处理装置根据心跳检测包的接收情况判断告警服务端是否正常运行;

若否,则发送告警服务端告警消息。

其中,心跳检测包是指告警处理装置按照预设周期向告警服务端发送的心跳检测包。当告警服务端返回接收应答是则说明告警服务端工作正常,当一段时间内未接收到接收应答时,则说明告警服务端出现异常,需要进行相应的处理。

进一步的,本实施例还可以包括:

将接收到的自定义告警规则发送至节点和告警服务端,以便实现对告警进行自定义配置。

可见,通过本可选方案主要是实现自定义的告警规则。

综上,本实施例通过告警处理装置对接收到的多个组件告警信息进行匹配,得到对汇总告警规则对应的汇总告警信息,再发送时告警服务端,实现了对集群或平台进行告警处理,提高了告警处理的效果,可以及时发现出现的集群或平台级别的机器故障,提高集群的可靠性和稳定性。

以下通过一个具体的实施例,对本申请提供的一种集群告警方法做进一步说明。

请参考图2,图2为本申请实施例所提供的一种集群告警系统的结构示意图。

本实施例中,将上一实施例的方法应用于ambari中,将告警处理装置设置在ambariserver和ambariagent之间,对agent上报的原始告警信息按照规则进行汇聚重组,生成新的集群级别和平台级别的告警信息并上报给server。在告警处理装置中增加了server状态告器,使其能够监控到server本身的状态并通过接口提供查询,同时还增加了在自定义告警器使其能够支持自定义告警定义。

其中,告警处理装置是集群告警系统的核心装置,可以包括:

告警规则引擎:添加集群级别、平台级别告警的定义规则,通过此规则可定义集群级、平台级的告警。集群告警可定义为集群中各项组件告警的条件组合,例如:集群中出现共计一定数量的组件告警,或者集群中的某些核心组件出现告警,或者二者的组合或者其他的组成方式。平台告警可定义为集群告警的条件组合或者是集群告警与组件告警的组合或者是其他的组合方式。

集群告警汇聚器:定期查询各个集群中当前时刻的全部组件告警信息,根据告警规则汇聚,生成集群级和平台级的告警信息

告警交互接口:警告处理装置与外部交互的接口,通过此接口接收集群中各个主机上的ambari-agent发送的组件告警信息,发送警告信息至amabri-server,对外提供server状态的告警信息查询接口

server状态警告器:通过心跳机制搜集ambari-server的实时运行状态,若未查询出运行状态的时候超过了阈值,则认为server的运行出现了异常,生成server运行状态的告警并通过告警交互接口上报

自定义警告:通过此功能,客户可以添加自定义的组件告警定义并同步到server和agent端并创建告警实例运行。

其中,告警处理装置可以实现告警信息上报,可以分为组件告警信息、集群告警信息、平台告警信息。并将ambari-server本身状态的监控以及上报,同时为组件添加自定义的告警定义。

其中,告警信息上报的流程分为组件告警信息的实时上报和集群告警信息、平台告警信息的定时上报。集群告警汇聚器中会启动定时任务,该定时任务会查询告警处理装置中存储的所有集群的每项组件告警信息进行汇总,随后匹配集群级别和平台级别的告警信息。

其中,匹配过程可以包括:

步骤1,查询在告警规则引擎中已经配置好的集群级和平台级告警的定义规则;

步骤2,根据规则计算现有的所有集群的组件告警信息,判断是否和规则匹配;

步骤3,若匹配,生成相应的集群和平台告警信息。

其中,server状态监控上报功能由告警处理装置中的server状态警告器完成。server状态实时心跳探测器会发送心跳检测包至server,若server正常运行则会回复心跳回应,探测器以此来判断server运行状态。若探测器一段时间内多次未收到心跳回应,则认为server停止运行,此时则产生server运行状态警告并通过告警交互接口上报。

可见,本实施例通过告警处理装置对接收到的多个组件告警信息进行匹配,得到对汇总告警规则对应的汇总告警信息,再发送时告警服务端,实现了对集群或平台进行告警处理,提高了告警处理的效果,可以及时发现出现的集群或平台级别的机器故障,提高集群的可靠性和稳定性。

下面对本申请实施例提供的集群告警装置进行介绍,下文描述的集群告警装置与上文描述的集群告警方法可相互对应参照。

请参考图3,图3为本申请实施例所提供的一种集群告警装置的结构示意图。

本实施例中,该装置可以包括:

组件告警接收模块100,用于获取多个集群的节点发送的组件告警信息,并将组件告警信息发送至告警服务端;

组件告警汇总模块200,用于根据汇总告警规则对多个组件告警信息进行匹配,得到对应的汇总告警信息;其中,汇总告警信息包括集群告警信息和平台告警信息;

汇总告警发送模块300,用于将汇总告警信息发送至告警服务端,以便告警服务端根据组件告警信息和汇总告警信息进行告警处理。

可选的,该组件告警汇总模块200,可以包括:

信息汇总单元,用于根据汇总告警规则将多个组件告警信息进行汇总,得到汇总数据;

告警匹配单元,用于根据汇总数据匹配对应的汇总告警信息。

本申请实施例还提供一种服务器,包括:

存储器,用于存储计算机程序;

处理器,用于执行所述计算机程序时实现如以上实施例所述的集群告警方法的步骤。

本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如以上实施例所述的集群告警方法的步骤。

说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。

以上对本申请所提供的一种集群告警方法、集群告警装置、服务器以及计算机可读存储介质进行了详细介绍。本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1