发布信息

云平台告警管理系统及方法与流程 专利技术说明

作者:admin      2023-07-07 17:15:10     246



电子通信装置的制造及其应用技术1.本发明涉及云计算技术领域,具体地说是一种云平台告警管理系统及方法。背景技术:2.随着信息技术和云计算的发展,分布式云平台集群面临着客户告警需求多样化,实际交互场景告警复杂化等挑战,而传统的告警管理模式在应对这些问题时存在一些缺陷,主要体现在灵活定制告警能力不足、没有对多种告警技术架构进行统一的管理两方面。3.传统主流的告警技术引擎主要有prometheus,zabbix,open-falcon,kapac itor。按照告警管理实现方式可以分为两类,一是通过配置文件进行告警管理的告警评估引擎,比如prometheus;二是通过后端rest api接口进行告警管理的告警评估引擎,比如zabbix,open-falcon,kapacitor。4.传统的告警模式下,通过告警配置管理的技术架构(比如prometheus),告警管理灵活定制性差,告警策略的维护需要一个专业的告警团队统一运维支持,耗费大量人力,且十分不灵活。在实际的交付现场,对告警的定制管理能力不足,运维人员需要定制告警时需要走升级流程进行后台操作,存在风险,且使用体验不友好,并且对告警配置的修改和持久化管理能力不足。5.传统的告警管理模式下,在一个大型云平台上无法支持对多种告警技术架构做统一的告警管理。6.故如何利用kubernetes技术实现云平台告警灵活定制需求和统一管理是目前亟待解决的技术问题。技术实现要素:7.本发明的技术任务是提供一种云平台告警管理系统及方法,来解决如何利用kubernetes技术实现云平台告警灵活定制需求和统一管理的问题。8.本发明的技术任务是按以下方式实现的,一种云平台告警管理系统,该系统包括集群基础组件、告警管理组件及告警组件,集群基础组件包括kubernetes资源编排能力支持的api服务器(k8s apiserver)和用于数据持久化的数据库;9.告警管理组件包括告警管理前端(alert-manager-web)、告警管理控制器(alert-operator)及告警配置加载执行器(alert-agent);告警管理控制器用于告警实例管理和告警资源监听;告警配置加载执行器用于消息接收和消息处理;10.告警组件包括告警评估引擎,告警评估引擎用于加载并执行告警功能,同时接收并同步加载告警管理控制器管理的告警实例,完成告警定义的评估。11.作为优选,所述告警管理控制器包括事件监听处理模块及告警管理模块12.事件监听处理模块用于监听告警资源的创建、修改和删除事件,并处理;当监听到变更事件后,根据alertclassname字段进行分类处理,先校验资源,校验通过后解析告警内容生成告警对象并同步数据库,同步数据库成功后将通知同步给对应的告警评估引擎;13.告警管理模块用于开放告警管理接口,接收告警增删改的api请求并处理,并将处理结果同步到数据库和对应的告警评估引擎。14.作为优选,所述告警配置加载执行器的工作过程具体如下:15.(1)、告警配置加载执行器启动执行初始化操作,调用告警管理接口获取当前此类告警评估引擎下所有开启的告警实例,并解析处理,生成告警配置文件,并通知告警评估引擎进行加载;16.(2)、告警配置加载执行器开启告警消息监听,接收告警管理控制器下发的告警消息并处理,修改告警配置并通知告警评估引擎重新加载。17.作为优选,所述集群基础组件的工作过程具体如下:18.(1)、api服务器提供统一的告警资源管理接口,实现对告警资源的管理编排,并将告警资源事件推送给告警管理控制器;19.(2、数据库服务告警数据表的存储持久化能力:告警管理控制器的告警管理模块处理结果持久化到数据库告警表中。20.更优地,所述告警评估引擎采用prometheus或kapacitor。21.一种云平台告警管理方法,该方法是通过将告警定义为一个kubernetes资源,并根据需求声明式的创建、更新及删除对应的告警资源;同时在声明式告警管理的基础上,通过开放告警管理接口的方式实现非声明式的告警管理,对已定义告警的开放静默、开启及修改管理,实现告警的灵活定制化管理;具体如下:22.s1、声明式的告警资源事件监听、增加、修改和删除处理;23.s2、通过开发的接口管理实现告警管理;24.s3、告警同步及告警评估引擎加载告警信息。25.作为优选,声明式的告警资源事件监听、增加、修改和删除处理具体如下:26.s101、监听告警资源事件:告警管理控制器接收到告警资源事件并处理;27.s102、处理告警资源事件并查找对应解析器:获取资源实例的alertclassname,通过alertclassname查找对应的解析器进行告警解析,并判断是否找到了对应的解析器:28.①、若未找到对应的解析器,则标记资源为非法(不支持该类型);29.②、若找到对应解析器,则执行步骤s103;30.s104、执行告警内容解析:将解析得到的告警实例列表同步到数据库,入库成功后执行步骤s104;31.s105、告警同步到告警评估引擎:将告警变更内容封装成消息发同步送到告警评估引擎,根据不同类型的告警评估引擎选择对应的实现方式。32.更优地,通过开放的接口管理实现告警管理具体如下:33.s201、开放的接口接收请求,路由到对应的处理模块,并将处理结果同步持久化到数据库;34.s202、告警同步到告警评估引擎:将告警变更内容封装成消息发同步送到告警评估引擎,根据不同类型的告警评估引擎选择对应的实现方式。35.更优地,告警同步和告警引擎加载告警具体如下:36.s301、判断告警评估引擎是否支持接口管理告警:37.①、若告警评估引擎支持接口管理告警,则直接执行步骤s303;38.②、若告警评估引擎不支持接口管理告警,而是支持通过配置文件管理告警,则通过告警配置加载执行器实现接收告警消息和初始化同步告警,下一步执行步骤s302;39.s302、告警配置加载执行器开启执行告警初始化,获取当前该告警评估引擎所有告警并生成告警配置文件,通知告警评估引擎加载,再开启监听告警变化,收到告警变更消息,解析处理并执行文件更新,再通知告警评估引擎加载告警;40.s303、告警评估引擎开放告警接口接收告警管理控制器的增删改请求,实现对告警的加载管理。41.更优地,根据不同类型的告警评估引擎选择对应的实现方式情况如下:42.prometheus类型的告警将通过消息发送到告警配置加载执行器进行消息处理和更新加载;43.kapacitor类型的告警将直接通过调用告警评估引擎服务接口实现告警的增删改同步。44.本发明的云平台告警管理系统及方法具有以下优点:45.(一)本发明允许用户根据实际需求定制告警,告警定义者是平台运行组件的开发者,通过定义告警资源实现针对特定组件和特定场景进行告警定制;告警定义者也可以是运维人员,通过告警管理系统提供的统一管理界面可以根据需求实现对平台组件开发者定义的原始告警进行修改、静默和开启管理;也可以通过直接调用告警管理系统接口实现对告警的增删改和静默管理;46.(二)本发明是利用kubernetes crd机制将告警扩展成k8s资源进行管理(增删改查),同时在此基础之上通过告警管理系统开放接口的方式实现对现有告警做定制修改、静默和开启,并且支持通过管理接口进行非声明式的告警定制管理;47.(三)本发明通过声明式的告警定义可以灵活声明式的定制告警,采用统一的告警管理架构可适配多种告警技术架构,适配多种告警架构,通过统一的资源模型进行定义和管理,同时满足告警实现多样性需求;同时提供良好的管理界面,运维人员可通过系统管理界面统一对平台告警;并根据交付现场具体需求进行定制,包括告警的修改,增加,删除,静默和启用功能;48.(四)本发明充分发挥kubernetes crd特性,定义一个统一的告警资源模型,提供统一的标准接口方便用户声明式管理告警;在声明式告警管理的基础之上通过开放告警管理接口的方式实现非声明式的告警管理,对已定义告警开放静默、开启、修改管理,实现告警的灵活可定制化,以求达到对平台告警的统一管理和运维,最终降低人工维护成本,提升平台告警运维体验;49.(五)本发明提供统一的管理界面,系统管理员通过管理界面可以实现对平台告警的运维管理,通过对告警资源事件监听实现对告警的声明式管理,通过开放告警管理api实现调用接口对告警的可定制管理,通过告警模型定义中告警类型的声明定义区别不同的类型告警,资源控制器通过告警类型字段区别处理并适配不同技术架构下的告警信息,对于只支持告警配置的告警架构组件提供alert-agent处理告警并通知告警组件动态加载告警配置,对于支持通过接口实现告警增删改的告警架构组件,由控制器直接调用接口实现告警的实时同步;50.(六)本发买那个满足灵活的告警定制化需求,可以根据实际需求,通过声明式配置和管理界面的途径定制和修改告警,并能满足在实际交付运维过程轻松定制告警的需求;51.(七)本发明支持适配多种告警引擎和支持类型的良好扩展性,通过对告警资源类型alertclassname的扩展适配,可同时支持多种架构的告警评估;52.(八)本发明统一的告警管理和良好的运维体验,通过统一的告警管理界面和告警管理接口实现对整个云平台告警的统一维护,解决以往通过人工维护配置文件的方式存在的运维困难,人力消耗大,变动风险高等问题;53.(九)本发明利用kubernetes自定义资源扩展特性定义统一的告警资源模型,实现对用户自定义告警资源的管理,支持适配多种主流的告警评估引擎,并支持良好的类型扩展,提供统一的告警管理平台,采用开放告警管理接口的方式实现不仅可以声明式定制告警,也可以通过接口进行告警管理;54.(十)本发明支持灵活定制告警,根据不同的使用需求和场景定制对应的告警策略,云平台开发者可以站在组件本身的角度声明式的管理相关的告警,实现平台底层架构的灵活告警定制,在此基础之上,运维人员和其他用户可以通过告警管理接口满足不同场景下的告警定制需求;55.(十一)本发明支持适配多种主流的告警评估引擎,并具有良好的类型扩展,通过alertclassname字段标识不同告警评估引擎,通过扩展和调用不同的解析器实现对多种告警引擎的适配和扩展,同时提供统一的告警管理系统,实现声明式的告警定制和开放告警管理接口定制告警。附图说明56.下面结合附图对本发明进一步说明。57.附图1为云平台告警管理系统的结构示意图;58.附图2为告警管理控制器中的事件监听处理模块工作过程的流程框图;59.附图3为告警管理控制器中的告警管理模块工作过程的流程框图;60.附图4为告警配置加载执行器工作过程的流程框图。具体实施方式61.参照说明书附图和具体实施例对本发明的云平台告警管理系统及方法作以下详细地说明。62.实施例1:63.如附图1所示,本实施例提供了一种云平台告警管理系统,该系统包括集群基础组件、告警管理组件及告警组件,集群基础组件包括kubernetes资源编排能力支持的api服务器(k8s apiserver)和用于数据持久化的数据库;64.告警管理组件包括告警管理前端(alert-manager-web)、告警管理控制器(alert-operator)及告警配置加载执行器(alert-agent);告警管理控制器用于告警实例管理和告警资源监听;告警配置加载执行器用于消息接收和消息处理;65.告警组件包括告警评估引擎,告警评估引擎用于加载并执行告警功能,同时接收并同步加载告警管理控制器管理的告警实例,完成告警定义的评估。66.本实施例中的告警管理控制器包括事件监听处理模块及告警管理模块;67.事件监听处理模块用于监听告警资源的创建、修改和删除事件,并处理;当监听到变更事件后,根据alertclassname字段进行分类处理,先校验资源,校验通过后解析告警内容生成告警对象并同步数据库,同步数据库成功后将通知同步给对应的告警评估引擎,如附图2所示;68.告警管理模块用于开放告警管理接口,接收告警增删改的api请求并处理,并将处理结果同步到数据库和对应的告警评估引擎,如附图3所示。69.本实施例中的告警配置加载执行器的工作过程具体如下:70.(1)、告警配置加载执行器启动执行初始化操作,调用告警管理接口获取当前此类告警评估引擎下所有开启的告警实例,并解析处理,生成告警配置文件,并通知告警评估引擎进行加载,如附图4所示;71.(2)、告警配置加载执行器开启告警消息监听,接收告警管理控制器下发的告警消息并处理,修改告警配置并通知告警评估引擎重新加载。72.本实施例中的集群基础组件的工作过程具体如下:73.(1)、api服务器提供统一的告警资源管理接口,实现对告警资源的管理编排,并将告警资源事件推送给告警管理控制器;74.(2、数据库服务告警数据表的存储持久化能力:告警管理控制器的告警管理模块处理结果均持久化到数据库告警表中。75.本实施例中的告警评估引擎采用prometheus或kapacitor。76.告警评估引擎采用的告警资源模型的关键代码如下:77.[0078][0079]实施例2:[0080]本实施例提供了一种云平台告警管理方法,该方法是通过将告警定义为一个kubernetes资源,并根据需求声明式的创建、更新及删除对应的告警资源;同时在声明式告警管理的基础上,通过开放告警管理接口的方式实现非声明式的告警管理,对已定义告警的开放静默、开启及修改管理,实现告警的灵活定制化管理;具体如下:[0081]s1、声明式的告警资源事件监听、增加、修改和删除处理;[0082]s2、通过开发的接口管理实现告警管理;[0083]s3、告警同步及告警评估引擎加载告警信息。[0084]本实施例步骤s1中的声明式的告警资源事件监听、增加、修改和删除处理具体如下:[0085]s101、监听告警资源事件:告警管理控制器接收到告警资源事件并处理;[0086]s102、处理告警资源事件并查找对应解析器:获取资源实例的alertclassname,通过alertclassname查找对应的解析器进行告警解析,并判断是否找到了对应的解析器:[0087]①、若未找到对应的解析器,则标记资源为非法(不支持该类型);[0088]②、若找到对应解析器,则执行步骤s103;[0089]s104、执行告警内容解析:将解析得到的告警实例列表同步到数据库,入库成功后执行步骤s104;[0090]s105、告警同步到告警评估引擎:将告警变更内容封装成消息发同步送到告警评估引擎,根据不同类型的告警评估引擎选择对应的实现方式。[0091]本实施例步骤s2中的通过开放的接口管理实现告警管理具体如下:[0092]s201、开放的接口接收请求,路由到对应的处理模块,并将处理结果同步持久化到数据库;[0093]s202、告警同步到告警评估引擎:将告警变更内容封装成消息发同步送到告警评估引擎,根据不同类型的告警评估引擎选择对应的实现方式。[0094]本实施例步骤s3中的告警同步和告警引擎加载告警具体如下:[0095]s301、判断告警评估引擎是否支持接口管理告警:[0096]①、若告警评估引擎支持接口管理告警,则直接执行步骤s303;[0097]②、若告警评估引擎不支持接口管理告警,而是支持通过配置文件管理告警,则通过告警配置加载执行器实现接收告警消息和初始化同步告警,下一步执行步骤s302;[0098]s302、告警配置加载执行器开启执行告警初始化,获取当前该告警评估引擎所有告警并生成告警配置文件,通知告警评估引擎加载,再开启监听告警变化,收到告警变更消息,解析处理并执行文件更新,再通知告警评估引擎加载告警;[0099]s303、告警评估引擎开放告警接口接收告警管理控制器的增删改请求,实现对告警的加载管理。[0100]本实施例中,根据不同类型的告警评估引擎选择对应的实现方式情况如下:[0101]prometheus类型的告警将通过消息发送到告警配置加载执行器进行消息处理和更新加载;[0102]kapacitor类型的告警将直接通过调用告警评估引擎服务接口实现告警的增删改同步。[0103]最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。









图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!




内容声明:本文中引用的各种信息及资料(包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主体(包括但不限于公司、媒体、协会等机构)的官方网站或公开发表的信息。部分内容参考包括:(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供参考使用,不准确地方联系删除处理!本站为非盈利性质站点,发布内容不收取任何费用也不接任何广告!




免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理,本文部分文字与图片资源来自于网络,部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理!的,若有来源标注错误或侵犯了您的合法权益,请立即通知我们,情况属实,我们会第一时间予以删除,并同时向您表示歉意,谢谢!

相关内容 查看全部