云数据系统中告警管理方法和装置与流程

文档序号:15929923发布日期:2018-11-14 01:31阅读:234来源:国知局

本发明涉及信息处理领域,尤指一种云数据系统中告警管理方法和装置。

背景技术

告警管理作为网络管理系统的核心之一,是网络管理软件的重要组成部分,能对网络中各种类型的设备与事件进行监视和处理。该功能的主要目的是检测、隔离和纠正环境下的异常,几乎涉及网管系统的所有软硬件部分。而网络告警管理中的一个基本的问题就是,各个网络设备厂商往往制定了不同的告警定义并开发基于自己产品的告警管理系统,不便于统一管理。网络管理软件的普遍问题也是告警管理亟待解决的问题。这就使通用网络告警管理系统成为一个现实而迫切的需要。

随着客户系统和业务规模的快速提升,如何实现对系统和业务进行异常告警的需求越来越迫切。一方面要求保证服务的高可用、高性能、可扩展;另一面要求定制灵活,提高异常处理效率,降低损失。传统告警系统存在系统臃肿、系统可靠性和可用性差;无法实现系统水平扩容,不支持大规模系统;无法实现告警的灵活配置。因此传统告警系统已经不能完全满足现有应用的需求。

鉴于现状,如何提升告警系统的运行效率是亟待解决的问题。



技术实现要素:

为了解决上述技术问题,本发明提供了一种云数据系统中告警管理方法和装置,以实现提升告警系统的运行效率的目的。

为了达到本发明目的,本发明提供了一种云数据系统中告警管理方法,包括:

在接收外部设置的告警任务后,在服务集群运行所述告警任务对应的告警服务实例;

对系统中运行的告警服务实例的运行状态进行检测,得到所述告警服务实例的状态信息;

根据所述告警服务实例的状态信息,调整告警服务实例的运行状态。

其中,所述方法还具有如下特点:所述在服务集群运行所述告警任务对应的告警服务实例,包括:

获取所述告警任务对应的被监控的资源的标识、告警项种类、数据来源和告警阈值中的至少一个告警配置信息;

通知服务集群根据所述告警配置信息运行所述告警任务。

其中,所述方法还具有如下特点:所述对系统中运行的告警服务实例的如下至少一个运行状态进行检测,得到所述告警服务实例的状态信息,包括:

判断所述告警服务实例中所述告警阈值是否匹配于所述告警服务实例所对应的被监控资源的实际运行状态;

判断被监控资源的总任务量是否符合预先设置的任务量阈值;

判断所述告警服务实例的系统负载是否符合预先设置的负载阈值。

其中,所述方法还具有如下特点:所述根据所述告警服务实例的状态信息,调整告警服务实例的运行状态,包括:

根据所述告警服务实例的状态信息,判断对所述告警服务实例进行更改;

如果判断结果为进行更改,则对所述告警服务实例进行新增、修改或删除的调整操作。

其中,所述方法还具有如下特点:所述根据所述告警服务实例的状态信息,调整告警服务实例的运行状态之后,所述方法还包括:

计算用于运行告警服务实例的至少两个服务集群的负载状态;

根据所述服务集群的负载状态,对所述告警服务实例所运行的服务集群进行再次分配;

在完成告警服务实例的再次分配后,控制所述至少两个服务集群运行各自对应的告警服务实例。

一种云数据系统中告警管理装置,包括:

运行模块,用于在接收外部设置的告警任务后,在服务集群运行所述告警任务对应的告警服务实例;

检测模块,用于对系统中运行的告警服务实例的运行状态进行检测,得到所述告警服务实例的状态信息;

调整模块,根据所述告警服务实例的状态信息,调整告警服务实例的运行状态。

其中,所述装置还具有如下特点:所述运行模块包括:

获取单元,用于获取所述告警任务对应的被监控的资源的标识、告警项种类、数据来源和告警阈值中的至少一个告警配置信息;

通知服务集群根据所述告警配置信息运行所述告警任务。

其中,所述装置还具有如下特点:

所述检测模块用于对系统中运行的告警服务实例的如下至少一个运行状态进行检测,得到所述告警服务实例的状态信息,包括:

判断所述告警服务实例中所述告警阈值是否匹配于所述告警服务实例所对应的被监控资源的实际运行状态;

判断被监控资源的总任务量是否符合预先设置的任务量阈值;

判断所述告警服务实例的系统负载是否符合预先设置的负载阈值。

其中,所述装置还具有如下特点:所述调整模块包括:

判断模块,用于根据所述告警服务实例的状态信息,判断对所述告警服务实例进行更改;

如果判断结果为进行更改,则对所述告警服务实例进行新增、修改或删除的调整操作。

其中,所述装置还具有如下特点:所述装置还包括:

计算模块,用于在调整告警服务实例的运行状态之后,计算用于运行告警服务实例的至少两个服务集群的负载状态;

分配模块,用于根据所述服务集群的负载状态,对所述告警服务实例所运行的服务集群进行再次分配;

控制模块,用于在完成告警服务实例的再次分配后,控制所述至少两个服务集群运行各自对应的告警服务实例。

本发明提供的实施例,在服务集群运行所述告警任务对应的告警服务实例后,通过对系统中运行的告警服务实例的运行状态进行检测,得到所述告警服务实例的状态信息,再根据所述告警服务实例的状态信息,调整告警服务实例的运行状态,实现动态调整告警服务实例的目的,以保证告警任务的顺畅运行,提升运维效率,降低系统维护成本。

本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。

附图说明

附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。

图1为本发明提供的云数据系统中告警管理方法的流程图;

图2为基于细粒度任务调度的分布式告警系统实现示意图;

图3为本发明提供的云数据系统中告警管理装置的结构图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。

在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

图1为本发明提供的云数据系统中告警管理方法的流程图。图1所示方法包括:

步骤101、在接收外部设置的告警任务后,在服务集群运行所述告警任务对应的告警服务实例;

具体的,告警任务可以是用户设定的,也可以是系统预先设置的;具体可以设置按资源类型和/或告警项进行个性化设置;其中资源类型可以为主机、虚拟机、操作系统和存储系统等;告警项为cpu使用率、内存使用率、系统负载和系统进程数等,个性化设置的可以为告警阈值、告警时间段、通知人列表等。

步骤102、对系统中运行的告警服务实例的运行状态进行检测,得到所述告警服务实例的状态信息;

具体的,周期性探测服务集群中每一个告警服务实例的状态,包括可用性、任务量和系统负载等,维护告警服务实例的状态列表。

步骤103、根据所述告警服务实例的状态信息,调整告警服务实例的运行状态。

具体的,根据数据中任务列表判断是否更新告警任务到告警服务实例中;根据服务探测器中告警服务实例状态列表判定警服务集群中是否存在变动,如新增告警服务、删除告警服务、告警服务异常等,执行相应的告警任务重新调整操作。

本发明提供的方法实施例,在服务集群运行所述告警任务对应的告警服务实例后,通过对系统中运行的告警服务实例的运行状态进行检测,得到所述告警服务实例的状态信息,再根据所述告警服务实例的状态信息,调整告警服务实例的运行状态,实现动态调整告警服务实例的目的,以保证告警任务的顺畅运行,提升运维效率,降低系统维护成本。

下面对本发明提供的方法实施例作进一步说明:

其中,在本发明提供的一个实施例中,所述在服务集群运行所述告警任务对应的告警服务实例,包括:

获取所述告警任务对应的被监控的资源的标识、告警项种类、数据来源和告警阈值中的至少一个告警配置信息;

通知服务集群根据所述告警配置信息运行所述告警任务。

举例来说,被监控的资源为虚拟机,则获取该虚拟机的标识,并获取需要对该虚拟机哪些的性能参数进行监控,并设置上述性能参数的输入方,即从哪采集上述性能参数,以及该性能参数对应的告警阈值。在完成设置后,通知服务集群按照设置的结果运行对应的告警服务。

其中,在本发明提供的一个方法实施例中,所述对系统中运行的告警服务实例的如下至少一个运行状态进行检测,得到所述告警服务实例的状态信息,包括:

判断所述告警服务实例中所述告警阈值是否匹配于所述告警服务实例所对应的被监控资源的实际运行状态;

判断被监控资源的总任务量是否符合预先设置的任务量阈值;

判断所述告警服务实例的系统负载是否符合预先设置的负载阈值。

上述判断是通过三个维度进行的判断,包括可用性、任务量和系统负载;其中:

可用性的主要目的是判断用户或系统设置的告警配置信息是否合理,能够适配被监控的资源的实际运行情况,如果不适配,则意味着需要及时进行参数的修改,达到适配的目的;

任务量的主要目的是两方面:1、判断被监控的总任务量是否高于预先设置的总任务量上限值,如果高于,则表示任务量过多,造成告警服务实例本身处理的数据量过多,造成该告警服务实例运行容易运行出现故障,如果任务量过多,需要将告警服务实例调用各类资源的优先级提升,以便该告警服务实例能够及时处理和响应;2、判断被监控的总任务量是否低于预先设置的总任务量下限值,如果低于,则表示任务量过少,造成告警服务实例本身处理的数据量过少,那么为了让其他任务量多的服务实例尽快得到的资源,需要将告警服务实例调用各类资源的优先级降低,以便充分利用集群资源;

系统负载的主要目的评估告警服务实例在运行过程中对本身分配所得的资源的利用率,如果在预设的时间长度内,该告警服务实例的资源利用率高于预先设置的利用率上限值,则表示该告警服务实例的资源利用率长期过高,则表示服务集群为该告警服务实例分配的资源不充足,需要额外为该告警服务实例增加资源量,以保证该告警服务实例的正常运行;相反,如果在预设的时间长度内,该告警服务实例的资源利用率低于预先设置的利用率下限值,则表示该告警服务实例的资源利用率长期过低,则表示服务集群为该告警服务实例分配的资源过剩,需要减少为该告警服务实例增加资源量,以保证以便充分利用集群资源。

在得到运行状态后,所述根据所述告警服务实例的状态信息,调整告警服务实例的运行状态,包括:

根据所述告警服务实例的状态信息,判断对所述告警服务实例进行更改;

如果判断结果为进行更改,则对所述告警服务实例进行新增、修改或删除的调整操作。

具体的,对于可用性不匹配的告警配置信息进行调整;

对资源调用优先级低于预期的告警服务实例进行优先级上调,对资源调用优先级高于预期的告警服务实例进行优先级下调;

对资源量不足的告警服务实例增加能调用的资源量,对资源量过剩的告警服务实例减少能调用的资源量。

上述方式,可以实现种基于细粒度任务调度的大规模分布式告警系统,基于此系统可实现大规模系统的告警,实现高可用、高性能、精细化、可扩展的特点,打造稳定可靠、定制灵活的告警服务,提高系统异常处理的响应速度,

其中,在本发明提供的一个方法实施例中,所述根据所述告警服务实例的状态信息,调整告警服务实例的运行状态之后,所述方法还包括:

计算用于运行告警服务实例的至少两个服务集群的负载状态;

根据所述服务集群的负载状态,对所述告警服务实例所运行的服务集群进行再次分配;

在完成告警服务实例的再次分配后,控制所述至少两个服务集群运行各自对应的告警服务实例。

具体的,在计算所述告警服务实例的服务集群的负载状态,通过集群间的负载均衡,来保证集群级的负载均衡,提升集群的稳定性。

下面对本发明提供的方法实施例作进一步说明:

图2为基于细粒度任务调度的分布式告警系统实现示意图。图2所示的分布式告警系统中,能够实现对告警服务的状态探测、灾备处理和负载均衡的管理策略。

该策略周期性探测分布式集群中每一个告警服务实例的状态,包括可用性、任务量和系统负载等,维护告警服务实例的状态列表;然后根据告警服务实例的状态实现对告警任务进行分配。此策略可以及时探测出异常告警服务,及时实现告警任务的重新调度;任务调度器根据服务负载分配任务,实现告警服务的负载均衡。

步骤一添加告警任务。用户或者系统服务按告警项粒度添加告警任务,告警任务包括告警资源标示、告警项种类、数据来源和告警阈值等,并添加到数据库中;

步骤二探测告警服务集群状态。服务探测器周期性探测分布式集群中每一个告警服务实例的状态,包括可用性、任务量和系统负载等,维护告警服务实例的状态列表;

步骤三告警任务调度。任务调度器根据数据中任务列表判断是否更新告警任务到告警服务中;根据服务探测器中告警服务实例状态列表判定告警服务集群中是否存在变动,如新增告警服务、删除告警服务、告警服务异常等,执行相应的告警任务重新调度操作。

本发明实现了对大规模告警任务的调度管理。本发明实现告警服务的水平可扩展,支持百万级告警任务。当告警系统负载增加时,添加告警服务实例并将其添加到任务调度服务中,任务调度器自动将其他告警服务实例中的告警任务转移到新增的告警服务实例中。

本发明实现了对异常告警服务的及时摘除,提高系统稳定性。当告警系统实例异常而无法提供服务时,调度服务自动将此告警服务实例中的告警任务转移到其他告警服务实例中。

本发明提供的方法实施例,基于细粒度任务调度的大规模分布式告警系统解决了传统系统存在的系统可靠性差、无法水平扩容、无法支持告警灵活配置的问题,提高了告警服务准确性和可靠性。基于此系统可实现大规模系统的告警,实现高可用、高性能、精细化、可扩展的告警系统,打造稳定可靠、定制灵活的告警服务,提高系统异常处理的响应速度,提升运维效率,降低系统维护成本。

图3为本发明提供的云数据系统中告警管理装置的结构图。图3所示装置包括:

运行模块301,用于在接收外部设置的告警任务后,在服务集群运行所述告警任务对应的告警服务实例;

检测模块302,用于对系统中运行的告警服务实例的运行状态进行检测,得到所述告警服务实例的状态信息;

调整模块303,根据所述告警服务实例的状态信息,调整告警服务实例的运行状态。

在本发明提供的一个装置实施例中,所述运行模块301包括:

获取单元,用于获取所述告警任务对应的被监控的资源的标识、告警项种类、数据来源和告警阈值中的至少一个告警配置信息;

通知服务集群根据所述告警配置信息运行所述告警任务。

在本发明提供的一个装置实施例中,所述检测模块302用于对系统中运行的告警服务实例的如下至少一个运行状态进行检测,得到所述告警服务实例的状态信息,包括:

判断所述告警服务实例中所述告警阈值是否匹配于所述告警服务实例所对应的被监控资源的实际运行状态;

判断被监控资源的总任务量是否符合预先设置的任务量阈值;

判断所述告警服务实例的系统负载是否符合预先设置的负载阈值。

在本发明提供的一个装置实施例中,所述调整模块303包括:

判断模块,用于根据所述告警服务实例的状态信息,判断对所述告警服务实例进行更改;

如果判断结果为进行更改,则对所述告警服务实例进行新增、修改或删除的调整操作。

在本发明提供的一个装置实施例中,所述装置还包括:

计算模块,用于在调整告警服务实例的运行状态之后,计算用于运行告警服务实例的至少两个服务集群的负载状态;

分配模块,用于根据所述服务集群的负载状态,对所述告警服务实例所运行的服务集群进行再次分配;

控制模块,用于在完成告警服务实例的再次分配后,控制所述至少两个服务集群运行各自对应的告警服务实例。

本发明提供的装置实施例,在服务集群运行所述告警任务对应的告警服务实例后,通过对系统中运行的告警服务实例的运行状态进行检测,得到所述告警服务实例的状态信息,再根据所述告警服务实例的状态信息,调整告警服务实例的运行状态,实现动态调整告警服务实例的目的,以保证告警任务的顺畅运行,提升运维效率,降低系统维护成本。

本领域普通技术人员可以理解上述实施例的全部或部分步骤可以使用计算机程序流程来实现,所述计算机程序可以存储于一计算机可读存储介质中,所述计算机程序在相应的硬件平台上(如系统、设备、装置、器件等)执行,在执行时,包括方法实施例的步骤之一或其组合。

可选地,上述实施例的全部或部分步骤也可以使用集成电路来实现,这些步骤可以被分别制作成一个个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。

上述实施例中的各装置/功能模块/功能单元可以采用通用的计算装置来实现,它们可以集中在单个的计算装置上,也可以分布在多个计算装置所组成的网络上。

上述实施例中的各装置/功能模块/功能单元以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。上述提到的计算机可读取存储介质可以是只读存储器,磁盘或光盘等。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求所述的保护范围为准。

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