CN114598601A - 一种容器化环境下基于多个监控指标联合告警的方法及系统 - Google Patents

一种容器化环境下基于多个监控指标联合告警的方法及系统 Download PDF

Info

Publication number
CN114598601A
CN114598601A CN202210222041.XA CN202210222041A CN114598601A CN 114598601 A CN114598601 A CN 114598601A CN 202210222041 A CN202210222041 A CN 202210222041A CN 114598601 A CN114598601 A CN 114598601A
Authority
CN
China
Prior art keywords
data
alarm
creating
monitoring
kapacitor
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.)
Pending
Application number
CN202210222041.XA
Other languages
English (en)
Inventor
于德江
高传集
孙思清
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inspur Cloud Information Technology Co Ltd
Original Assignee
Inspur Cloud Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Inspur Cloud Information Technology Co Ltd filed Critical Inspur Cloud Information Technology Co Ltd
Priority to CN202210222041.XA priority Critical patent/CN114598601A/zh
Publication of CN114598601A publication Critical patent/CN114598601A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0893Assignment of logical groups to network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明提供了一种容器化环境下基于多个监控指标联合告警的方法,包括以下步骤:收集主机数据、系统数据、容器数据等时间序列型数据,采集到的数据,经过对应频率的颗粒度的汇聚,自由组合需要监控的指标及自定义告警触发阈值,Kapacitor将Lambdaexpressions为true的产生告警信息,监控数据展示页面,主要展示监控统计结果。本发明提出的容器化环境下基于多个监控指标联合告警的方法及系统通过监控及多维度告警功能可以及时有效的了解系统目前的资源使用状况。

Description

一种容器化环境下基于多个监控指标联合告警的方法及系统
技术领域
本发明涉及性能采集监控模块技术领域,具体为一种容器化环境下基于多个监控指标联合告警的方法及系统。
背景技术
在云计算,大数据等技术日趋成熟的情况下,用户的服务产品越来越多。
现有技术中,用户对自有资源的资源使用情况、业务的运行状况和健康度,系统运行异常及时收到异常告警提醒的需求越来越迫切。
但是,随着业务系统复杂程度的增加,单一的监控指标并不能完全体现系统的健康状况;两个及以上多个监控指标联合才能体现当前系统的运行状况;云监控作为一款可以对资源进行立体化监控的平台,多个监控指标联合告警就显得尤为重要。
发明内容
本发明的目的在于提供一种容器化环境下基于多个监控指标联合告警的方法及系统,以解决上述背景技术中提出的问题。
为实现上述目的,本发明提供如下技术方案:一种容器化环境下基于多个监控指标联合告警的方法及系统,包括以下步骤:
收集主机数据、系统数据、容器数据等时间序列型数据,将Telegraf镜像,打包并放到集群镜像仓库中;根据部署的组件编写相应的Telegraf yaml文件并引入相应的输入插件Inputs,如采集系统cpu信息插件inputs.cpu,磁盘信息插件inputs.disk,mysql数据库信息插件inputs.mysql等;给命名空间分配集群的读取权限,并在命名空间创建ConfigMap用来存储Telegraf的一些配置;创建Deployment模式的Telegraf,通过yaml文件安装Telegraf;
采集到的数据,经过对应频率的颗粒度的汇聚后,输出到数据存储系统,Telegraf的数据输出插件支持文件、InfluxDB、各种消息队列服务等;将InfluxDB镜像,打包并放到集群镜像仓库中;在搭建好的Kubernetes集群中创建自定义的的命名空间,主要用于存放InfluxDB运行的容器;给命名空间分配集群的读取权限;在命名空间创建ConfigMap用来存储InfluxDB容器的一些配置;在命名空间创建PersistentVolume用来申请InfluxDB使用的数据卷;在命名空间创建StatefulSet用来创建有状态负载;在命名空间创建Service,以对外提供SVC服务;
用户根据要监控的资源及业务需求,自由组合需要监控的指标及自定义告警触发阈值等;告警规则配置完成后,由系统的service层生成TICKscript语言,通过RestAPI的方式请求Kapacitor;将Kapacitor镜像,打包并放到集群镜像仓库中;在搭建好的Kubernetes集群中创建自定义的的命名空间,主要用于存放Kapacitor运行的容器;给命名空间分配集群的读取权限;在命名空间创建ConfigMap用来存储Kapacitor容器的一些配置;在命名空间创建PersistentVolumeClaim用来申请Kapacitor使用的数据卷;在命名空间创建Deployment,通过yaml文件安装Kapacitor;在命名空间创建Service,以对外提供svc服务;
如果多个监控指标的监控数据都达到告警阈值,Kapacitor将Lambdaexpressions为true的产生告警信息;serviceId标识监控对象名称,index.Fields标识监控指标,使用正则表达式匹配并替换实际告警对象和告警描述信息,生产用户可阅读和理解的告警信息描述;并可以设置告警通知策略,以短消息或者是邮件的方式通知到用户;
监控数据展示页面,主要展示监控统计结果,用户根据业务需求展示不同采样周期:1分钟、5分钟、1小时、24小时,不同时间段内的监控数据;告警历史页面主要展示触发告警数据的资源信息、规则信息及告警触发时间等,方便用户及时的定位及修复告警。
优选的,数据采集功能主要包括监控数据采集,数据处理、数据聚合,数据输出;数据处理主要是对采集到的指标数据进行一些简单的处理,如增加或删除tag,添加一些用户的元数据等;数据聚合主要对某段时间内所有的数据做聚合处理,如最大值,最小值,平均值等操作;数据输出将被处理或聚合后的数据输出到数据存储系统,如:文件,Influxdb,各种消息服务队列等。
优选的,数据存储系统使用InfluxDB作为数据存储系统,InfluxDB是时序数据库,适合存储采集的指标数据,提供了对时序数据高效率的存储优化,以时间维度的高效率的数据检索,内置丰富的数据计算函数,支持数据的科学计算。
优选的,Kapacitor中任务类型分为两种:stream和batch,Kapacitor使用名为TICKscript的DSL来定义任务,每个TICKscript定义一个管道,告诉Kapacitor要处理哪些数据以及如何处理,TICKscript语言是一种调用链接语言,每个脚本都有一个作用范围,并且作用范围中的每个变量都定义了可以在其上调用的方法;这些方法有两种:属性方法,修改调用的节点并返回对同一节点的引用,和链接方法,创建一个新节点作为节点的子节点,并返回一个对新节点的引用,每个TICKscript都有一个流或批变量,取决于想要运行的任务类型;Kapacitor使用TICKscript定义数据处理管道,管道是一组节点,它处理连接节点的数据和边缘,Kapacitor的中的管道是有向无环图DAGs,这意味着每个边有一个数据流的方向,而管道中不可能有任何循环,每个边缘都有一个类型,StreamEdge是一次传输单个数据点的数据的边缘,BatchEdge是一种以块方式而不是一次一次地传送数据的边缘,连接节点时,TICKscript语言不会阻止连接错误类型的边缘,而是在运行时执行检查,因此,语法正确的脚本可以定义无效的管道。
一种容器化环境下基于多个监控指标联合告警的系统,包括数据采集层模块、数据持久层模块、告警规则配置层模块、告警事件触发层模块以及用户展示层模块;
数据持久层模块对数据采集层模块的数据信息进行汇聚后存储,告警规则配置层模块根据数据持久层模块的数据信息组合告警出发阈值,告警事件触发层模块监控数据是否达到告警阈值,用户展示层模块展示告警事件触发层模块不同时段的监控数据。
优选的,所述数据采集层模块,收集主机数据、系统数据、容器数据等时间序列型数据用于将Telegraf镜像,打包并放到集群镜像仓库中;根据部署的组件编写相应的Telegraf yaml文件并引入相应的输入插件Inputs,如采集系统cpu信息插件inputs.cpu,磁盘信息插件inputs.disk,mysql数据库信息插件inputs.mysql等;给命名空间分配集群的读取权限,并在命名空间创建ConfigMap用来存储Telegraf的一些配置;创建Deployment模式的Telegraf,通过yaml文件安装Telegraf;
数据采集功能主要包括监控数据采集,数据处理、数据聚合,数据输出;数据处理主要是对采集到的指标数据进行一些简单的处理,如增加或删除tag,添加一些用户的元数据等;数据聚合主要对某段时间内所有的数据做聚合处理,如最大值,最小值,平均值等操作;数据输出将被处理或聚合后的数据输出到数据存储系统,如:文件,Influxdb,各种消息服务队列等。
优选的,所述数据持久层模块用于采集到的数据,经过对应频率的颗粒度的汇聚后,输出到数据存储系统,Telegraf的数据输出插件支持文件、InfluxDB、各种消息队列服务等;将InfluxDB镜像,打包并放到集群镜像仓库中;在搭建好的Kubernetes集群中创建自定义的的命名空间,主要用于存放InfluxDB运行的容器;给命名空间分配集群的读取权限;在命名空间创建ConfigMap用来存储InfluxDB容器的一些配置;在命名空间创建PersistentVolume用来申请InfluxDB使用的数据卷;在命名空间创建StatefulSet用来创建有状态负载;在命名空间创建Service,以对外提供SVC服务;
数据存储系统使用InfluxDB作为数据存储系统,InfluxDB是时序数据库,适合存储采集的指标数据,提供了对时序数据高效率的存储优化,以时间维度的高效率的数据检索,内置丰富的数据计算函数,支持数据的科学计算。
优选的,所述告警规则配置层模块用于用户根据要监控的资源及业务需求,自由组合需要监控的指标及自定义告警触发阈值等;告警规则配置完成后,由系统的service层生成TICKscript语言,通过RestAPI的方式请求Kapacitor;将Kapacitor镜像,打包并放到集群镜像仓库中;在搭建好的Kubernetes集群中创建自定义的的命名空间,主要用于存放Kapacitor运行的容器;给命名空间分配集群的读取权限;在命名空间创建ConfigMap用来存储Kapacitor容器的一些配置;在命名空间创建PersistentVolumeClaim用来申请Kapacitor使用的数据卷;在命名空间创建Deployment,通过yaml文件安装Kapacitor;在命名空间创建Service,以对外提供svc服务;
Kapacitor中任务类型分为两种:stream和batch,Kapacitor使用名为TICKscript的DSL来定义任务,每个TICKscript定义一个管道,告诉Kapacitor要处理哪些数据以及如何处理,TICKscript语言是一种调用链接语言,每个脚本都有一个作用范围,并且作用范围中的每个变量都定义了可以在其上调用的方法;这些方法有两种:属性方法,修改调用的节点并返回对同一节点的引用,和链接方法,创建一个新节点作为节点的子节点,并返回一个对新节点的引用,每个TICKscript都有一个流或批变量,取决于想要运行的任务类型;Kapacitor使用TICKscript定义数据处理管道,管道是一组节点,它处理连接节点的数据和边缘,Kapacitor的中的管道是有向无环图DAGs,这意味着每个边有一个数据流的方向,而管道中不可能有任何循环,每个边缘都有一个类型,StreamEdge是一次传输单个数据点的数据的边缘,BatchEdge是一种以块方式而不是一次一次地传送数据的边缘,连接节点时,TICKscript语言不会阻止连接错误类型的边缘,而是在运行时执行检查,因此,语法正确的脚本可以定义无效的管道。
优选的,所述告警事件触发层模块用于如果多个监控指标的监控数据都达到告警阈值,Kapacitor将Lambda expressions为true的产生告警信息;serviceId标识监控对象名称,index.Fields标识监控指标,使用正则表达式匹配并替换实际告警对象和告警描述信息,生产用户可阅读和理解的告警信息描述;并可以设置告警通知策略,以短消息或者是邮件的方式通知到用户。
优选的,所述用户展示层模块用于监控数据展示页面,主要展示监控统计结果,用户根据业务需求展示不同采样周期:1分钟、5分钟、1小时、24小时,不同时间段内的监控数据;告警历史页面主要展示触发告警数据的资源信息、规则信息及告警触发时间等,方便用户及时的定位及修复告警。
与现有技术相比,本发明的有益效果是:
本发明提出的容器化环境下基于多个监控指标联合告警的方法及系统通过监控及多维度告警功能可以及时有效的了解系统目前的资源使用状况;将平台和业务系统中所涉及的硬件资源、软件资源等纳入统一的运维监控平台中,通过插件的数据处理和聚合,实现统一的输出,对各种不同的数据来源以实现规范化、自动化、智能化的大运维管理;运行监控和故障告警是一个监控系统的两个主要功能模块。
附图说明
图1为本发明系统框图。
具体实施方式
为了使本发明的目的、技术方案进行清楚、完整地描述,及优点更加清楚明白,以下结合附图对本发明实施例进行进一步详细说明。应当理解,此处所描述的具体实施例是本发明一部分实施例,而不是全部的实施例,仅仅用以解释本发明实施例,并不用于限定本发明实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明的描述中,需要说明的是,术语“中心”、“中”、“上”、“下”、“左”、“右”、“内”、“外”、“顶”、“底”、“侧”、“竖直”、“水平”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“一”、“第一”、“第二”、“第三”、“第四”、“第五”、“第六”仅用于描述目的,而不能理解为指示或暗示相对重要性。
在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
出于简明和说明的目的,实施例的原理主要通过参考例子来描述。在以下描述中,很多具体细节被提出用以提供对实施例的彻底理解。然而明显的是,对于本领域普通技术人员,这些实施例在实践中可以不限于这些具体细节。在一些实例中,没有详细地描述公知方法和结构,以避免无必要地使这些实施例变得难以理解。另外,所有实施例可以互相结合使用。
请参阅图1,本发明提供一种技术方案:一种容器化环境下基于多个监控指标联合告警的方法及系统,包括以下步骤:
收集主机数据、系统数据、容器数据等时间序列型数据,将Telegraf镜像,打包并放到集群镜像仓库中;根据部署的组件编写相应的Telegraf yaml文件并引入相应的输入插件Inputs,如采集系统cpu信息插件inputs.cpu,磁盘信息插件inputs.disk,mysql数据库信息插件inputs.mysql等;给命名空间分配集群的读取权限,并在命名空间创建ConfigMap用来存储Telegraf的一些配置;创建Deployment模式的Telegraf,通过yaml文件安装Telegraf;数据采集功能主要包括监控数据采集,数据处理、数据聚合,数据输出;数据处理主要是对采集到的指标数据进行一些简单的处理,如增加或删除tag,添加一些用户的元数据等;数据聚合主要对某段时间内所有的数据做聚合处理,如最大值,最小值,平均值等操作;数据输出将被处理或聚合后的数据输出到数据存储系统,如:文件,Influxdb,各种消息服务队列等;
采集到的数据,经过对应频率的颗粒度的汇聚后,输出到数据存储系统,Telegraf的数据输出插件支持文件、InfluxDB、各种消息队列服务等;将InfluxDB镜像,打包并放到集群镜像仓库中;在搭建好的Kubernetes集群中创建自定义的的命名空间,主要用于存放InfluxDB运行的容器;给命名空间分配集群的读取权限;在命名空间创建ConfigMap用来存储InfluxDB容器的一些配置;在命名空间创建PersistentVolume用来申请InfluxDB使用的数据卷;在命名空间创建StatefulSet用来创建有状态负载;在命名空间创建Service,以对外提供SVC服务;数据存储系统使用InfluxDB作为数据存储系统,InfluxDB是时序数据库,适合存储采集的指标数据,提供了对时序数据高效率的存储优化,以时间维度的高效率的数据检索,内置丰富的数据计算函数,支持数据的科学计算;
用户根据要监控的资源及业务需求,自由组合需要监控的指标及自定义告警触发阈值等;告警规则配置完成后,由系统的service层生成TICKscript语言,通过RestAPI的方式请求Kapacitor;将Kapacitor镜像,打包并放到集群镜像仓库中;在搭建好的Kubernetes集群中创建自定义的的命名空间,主要用于存放Kapacitor运行的容器;给命名空间分配集群的读取权限;在命名空间创建ConfigMap用来存储Kapacitor容器的一些配置;在命名空间创建PersistentVolumeClaim用来申请Kapacitor使用的数据卷;在命名空间创建Deployment,通过yaml文件安装Kapacitor;在命名空间创建Service,以对外提供svc服务;Kapacitor中任务类型分为两种:stream和batch,Kapacitor使用名为TICKscript的DSL来定义任务,每个TICKscript定义一个管道,告诉Kapacitor要处理哪些数据以及如何处理,TICKscript语言是一种调用链接语言,每个脚本都有一个作用范围,并且作用范围中的每个变量都定义了可以在其上调用的方法;这些方法有两种:属性方法,修改调用的节点并返回对同一节点的引用,和链接方法,创建一个新节点作为节点的子节点,并返回一个对新节点的引用,每个TICKscript都有一个流或批变量,取决于想要运行的任务类型;Kapacitor使用TICKscript定义数据处理管道,管道是一组节点,它处理连接节点的数据和边缘,Kapacitor的中的管道是有向无环图DAGs,这意味着每个边有一个数据流的方向,而管道中不可能有任何循环,每个边缘都有一个类型,StreamEdge是一次传输单个数据点的数据的边缘,BatchEdge是一种以块方式而不是一次一次地传送数据的边缘,连接节点时,TICKscript语言不会阻止连接错误类型的边缘,而是在运行时执行检查,因此,语法正确的脚本可以定义无效的管道;
如果多个监控指标的监控数据都达到告警阈值,Kapacitor将Lambdaexpressions为true的产生告警信息;serviceId标识监控对象名称,index.Fields标识监控指标,使用正则表达式匹配并替换实际告警对象和告警描述信息,生产用户可阅读和理解的告警信息描述;并可以设置告警通知策略,以短消息或者是邮件的方式通知到用户;
监控数据展示页面,主要展示监控统计结果,用户根据业务需求展示不同采样周期:1分钟、5分钟、1小时、24小时,不同时间段内的监控数据;告警历史页面主要展示触发告警数据的资源信息、规则信息及告警触发时间等,方便用户及时的定位及修复告警。
一种容器化环境下基于多个监控指标联合告警的系统,其特征在于:包括数据采集层模块、数据持久层模块、告警规则配置层模块、告警事件触发层模块以及用户展示层模块;
数据持久层模块对数据采集层模块的数据信息进行汇聚后存储,告警规则配置层模块根据数据持久层模块的数据信息组合告警出发阈值,告警事件触发层模块监控数据是否达到告警阈值,用户展示层模块展示告警事件触发层模块不同时段的监控数据。
数据采集层模块,收集主机数据、系统数据、容器数据等时间序列型数据用于将Telegraf镜像,打包并放到集群镜像仓库中;根据部署的组件编写相应的Telegraf yaml文件并引入相应的输入插件Inputs,如采集系统cpu信息插件inputs.cpu,磁盘信息插件inputs.disk,mysql数据库信息插件inputs.mysql等;给命名空间分配集群的读取权限,并在命名空间创建ConfigMap用来存储Telegraf的一些配置;创建Deployment模式的Telegraf,通过yaml文件安装Telegraf;
数据采集功能主要包括监控数据采集,数据处理、数据聚合,数据输出;数据处理主要是对采集到的指标数据进行一些简单的处理,如增加或删除tag,添加一些用户的元数据等;数据聚合主要对某段时间内所有的数据做聚合处理,如最大值,最小值,平均值等操作;数据输出将被处理或聚合后的数据输出到数据存储系统,如:文件,Influxdb,各种消息服务队列等。
数据持久层模块用于采集到的数据,经过对应频率的颗粒度的汇聚后,输出到数据存储系统,Telegraf的数据输出插件支持文件、InfluxDB、各种消息队列服务等;将InfluxDB镜像,打包并放到集群镜像仓库中;在搭建好的Kubernetes集群中创建自定义的的命名空间,主要用于存放InfluxDB运行的容器;给命名空间分配集群的读取权限;在命名空间创建ConfigMap用来存储InfluxDB容器的一些配置;在命名空间创建PersistentVolume用来申请InfluxDB使用的数据卷;在命名空间创建StatefulSet用来创建有状态负载;在命名空间创建Service,以对外提供SVC服务;
数据存储系统使用InfluxDB作为数据存储系统,InfluxDB是时序数据库,适合存储采集的指标数据,提供了对时序数据高效率的存储优化,以时间维度的高效率的数据检索,内置丰富的数据计算函数,支持数据的科学计算。
告警规则配置层模块用于用户根据要监控的资源及业务需求,自由组合需要监控的指标及自定义告警触发阈值等;告警规则配置完成后,由系统的service层生成TICKscript语言,通过RestAPI的方式请求Kapacitor;将Kapacitor镜像,打包并放到集群镜像仓库中;在搭建好的Kubernetes集群中创建自定义的的命名空间,主要用于存放Kapacitor运行的容器;给命名空间分配集群的读取权限;在命名空间创建ConfigMap用来存储Kapacitor容器的一些配置;在命名空间创建PersistentVolumeClaim用来申请Kapacitor使用的数据卷;在命名空间创建Deployment,通过yaml文件安装Kapacitor;在命名空间创建Service,以对外提供svc服务;
Kapacitor中任务类型分为两种:stream和batch,Kapacitor使用名为TICKscript的DSL来定义任务,每个TICKscript定义一个管道,告诉Kapacitor要处理哪些数据以及如何处理,TICKscript语言是一种调用链接语言,每个脚本都有一个作用范围,并且作用范围中的每个变量都定义了可以在其上调用的方法;这些方法有两种:属性方法,修改调用的节点并返回对同一节点的引用,和链接方法,创建一个新节点作为节点的子节点,并返回一个对新节点的引用,每个TICKscript都有一个流或批变量,取决于想要运行的任务类型;Kapacitor使用TICKscript定义数据处理管道,管道是一组节点,它处理连接节点的数据和边缘,Kapacitor的中的管道是有向无环图DAGs,这意味着每个边有一个数据流的方向,而管道中不可能有任何循环,每个边缘都有一个类型,StreamEdge是一次传输单个数据点的数据的边缘,BatchEdge是一种以块方式而不是一次一次地传送数据的边缘,连接节点时,TICKscript语言不会阻止连接错误类型的边缘,而是在运行时执行检查,因此,语法正确的脚本可以定义无效的管道。
告警事件触发层模块用于如果多个监控指标的监控数据都达到告警阈值,Kapacitor将Lambda expressions为true的产生告警信息;serviceId标识监控对象名称,index.Fields标识监控指标,使用正则表达式匹配并替换实际告警对象和告警描述信息,生产用户可阅读和理解的告警信息描述;并可以设置告警通知策略,以短消息或者是邮件的方式通知到用户。
用户展示层模块用于监控数据展示页面,主要展示监控统计结果,用户根据业务需求展示不同采样周期:1分钟、5分钟、1小时、24小时,不同时间段内的监控数据;告警历史页面主要展示触发告警数据的资源信息、规则信息及告警触发时间等,方便用户及时的定位及修复告警。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。

Claims (10)

1.一种容器化环境下基于多个监控指标联合告警的方法及系统,其特征在于,包括以下步骤:
收集主机数据、系统数据、容器数据等时间序列型数据,将Telegraf镜像,打包并放到集群镜像仓库中;根据部署的组件编写相应的Telegraf yaml文件并引入相应的输入插件Inputs,如采集系统cpu信息插件inputs.cpu,磁盘信息插件inputs.disk,mysql数据库信息插件inputs.mysql等;给命名空间分配集群的读取权限,并在命名空间创建ConfigMap用来存储Telegraf的一些配置;创建Deployment模式的Telegraf,通过yaml文件安装Telegraf;
采集到的数据,经过对应频率的颗粒度的汇聚后,输出到数据存储系统,Telegraf的数据输出插件支持文件、InfluxDB、各种消息队列服务等;将InfluxDB镜像,打包并放到集群镜像仓库中;在搭建好的Kubernetes集群中创建自定义的的命名空间,主要用于存放InfluxDB运行的容器;给命名空间分配集群的读取权限;在命名空间创建ConfigMap用来存储InfluxDB容器的一些配置;在命名空间创建PersistentVolume用来申请InfluxDB使用的数据卷;在命名空间创建StatefulSet用来创建有状态负载;在命名空间创建Service,以对外提供SVC服务;
用户根据要监控的资源及业务需求,自由组合需要监控的指标及自定义告警触发阈值等;告警规则配置完成后,由系统的service层生成TICKscript语言,通过RestAPI的方式请求Kapacitor;将Kapacitor镜像,打包并放到集群镜像仓库中;在搭建好的Kubernetes集群中创建自定义的的命名空间,主要用于存放Kapacitor运行的容器;给命名空间分配集群的读取权限;在命名空间创建ConfigMap用来存储Kapacitor容器的一些配置;在命名空间创建PersistentVolumeClaim用来申请Kapacitor使用的数据卷;在命名空间创建Deployment,通过yaml文件安装Kapacitor;在命名空间创建Service,以对外提供svc服务;
如果多个监控指标的监控数据都达到告警阈值,Kapacitor将Lambda expressions为true的产生告警信息;serviceId标识监控对象名称,index.Fields标识监控指标,使用正则表达式匹配并替换实际告警对象和告警描述信息,生产用户可阅读和理解的告警信息描述;并可以设置告警通知策略,以短消息或者是邮件的方式通知到用户;
监控数据展示页面,主要展示监控统计结果,用户根据业务需求展示不同采样周期:1分钟、5分钟、1小时、24小时,不同时间段内的监控数据;告警历史页面主要展示触发告警数据的资源信息、规则信息及告警触发时间等,方便用户及时的定位及修复告警。
2.根据权利要求1所述的一种容器化环境下基于多个监控指标联合告警的方法,其特征在于:数据采集功能主要包括监控数据采集,数据处理、数据聚合,数据输出;数据处理主要是对采集到的指标数据进行一些简单的处理,如增加或删除tag,添加一些用户的元数据等;数据聚合主要对某段时间内所有的数据做聚合处理,如最大值,最小值,平均值等操作;数据输出将被处理或聚合后的数据输出到数据存储系统,如:文件,Influxdb,各种消息服务队列等。
3.根据权利要求1所述的一种容器化环境下基于多个监控指标联合告警的方法,其特征在于:数据存储系统使用InfluxDB作为数据存储系统,InfluxDB是时序数据库,适合存储采集的指标数据,提供了对时序数据高效率的存储优化,以时间维度的高效率的数据检索,内置丰富的数据计算函数,支持数据的科学计算。
4.根据权利要求1所述的一种容器化环境下基于多个监控指标联合告警的方法,其特征在于:Kapacitor中任务类型分为两种:stream和batch,Kapacitor使用名为TICKscript的DSL来定义任务,每个TICKscript定义一个管道,告诉Kapacitor要处理哪些数据以及如何处理,TICKscript语言是一种调用链接语言,每个脚本都有一个作用范围,并且作用范围中的每个变量都定义了可以在其上调用的方法;这些方法有两种:属性方法,修改调用的节点并返回对同一节点的引用,和链接方法,创建一个新节点作为节点的子节点,并返回一个对新节点的引用,每个TICKscript都有一个流或批变量,取决于想要运行的任务类型;Kapacitor使用TICKscript定义数据处理管道,管道是一组节点,它处理连接节点的数据和边缘,Kapacitor的中的管道是有向无环图DAGs,这意味着每个边有一个数据流的方向,而管道中不可能有任何循环,每个边缘都有一个类型,StreamEdge是一次传输单个数据点的数据的边缘,BatchEdge是一种以块方式而不是一次一次地传送数据的边缘,连接节点时,TICKscript语言不会阻止连接错误类型的边缘,而是在运行时执行检查,因此,语法正确的脚本可以定义无效的管道。
5.一种容器化环境下基于多个监控指标联合告警的系统,其特征在于:包括数据采集层模块、数据持久层模块、告警规则配置层模块、告警事件触发层模块以及用户展示层模块;
数据持久层模块对数据采集层模块的数据信息进行汇聚后存储,告警规则配置层模块根据数据持久层模块的数据信息组合告警出发阈值,告警事件触发层模块监控数据是否达到告警阈值,用户展示层模块展示告警事件触发层模块不同时段的监控数据。
6.根据权利要求5所述的一种容器化环境下基于多个监控指标联合告警的系统,其特征在于:所述数据采集层模块,收集主机数据、系统数据、容器数据等时间序列型数据用于将Telegraf镜像,打包并放到集群镜像仓库中;根据部署的组件编写相应的Telegraf yaml文件并引入相应的输入插件Inputs,如采集系统cpu信息插件inputs.cpu,磁盘信息插件inputs.disk,mysql数据库信息插件inputs.mysql等;给命名空间分配集群的读取权限,并在命名空间创建ConfigMap用来存储Telegraf的一些配置;创建Deployment模式的Telegraf,通过yaml文件安装Telegraf;
数据采集功能主要包括监控数据采集,数据处理、数据聚合,数据输出;数据处理主要是对采集到的指标数据进行一些简单的处理,如增加或删除tag,添加一些用户的元数据等;数据聚合主要对某段时间内所有的数据做聚合处理,如最大值,最小值,平均值等操作;数据输出将被处理或聚合后的数据输出到数据存储系统,如:文件,Influxdb,各种消息服务队列等。
7.根据权利要求5所述的一种容器化环境下基于多个监控指标联合告警的系统,其特征在于:所述数据持久层模块用于采集到的数据,经过对应频率的颗粒度的汇聚后,输出到数据存储系统,Telegraf的数据输出插件支持文件、InfluxDB、各种消息队列服务等;将InfluxDB镜像,打包并放到集群镜像仓库中;在搭建好的Kubernetes集群中创建自定义的的命名空间,主要用于存放InfluxDB运行的容器;给命名空间分配集群的读取权限;在命名空间创建ConfigMap用来存储InfluxDB容器的一些配置;在命名空间创建PersistentVolume用来申请InfluxDB使用的数据卷;在命名空间创建StatefulSet用来创建有状态负载;在命名空间创建Service,以对外提供SVC服务;
数据存储系统使用InfluxDB作为数据存储系统,InfluxDB是时序数据库,适合存储采集的指标数据,提供了对时序数据高效率的存储优化,以时间维度的高效率的数据检索,内置丰富的数据计算函数,支持数据的科学计算。
8.根据权利要求5所述的一种容器化环境下基于多个监控指标联合告警的系统,其特征在于:所述告警规则配置层模块用于用户根据要监控的资源及业务需求,自由组合需要监控的指标及自定义告警触发阈值等;告警规则配置完成后,由系统的service层生成TICKscript语言,通过RestAPI的方式请求Kapacitor;将Kapacitor镜像,打包并放到集群镜像仓库中;在搭建好的Kubernetes集群中创建自定义的的命名空间,主要用于存放Kapacitor运行的容器;给命名空间分配集群的读取权限;在命名空间创建ConfigMap用来存储Kapacitor容器的一些配置;在命名空间创建PersistentVolumeClaim用来申请Kapacitor使用的数据卷;在命名空间创建Deployment,通过yaml文件安装Kapacitor;在命名空间创建Service,以对外提供svc服务;
Kapacitor中任务类型分为两种:stream和batch,Kapacitor使用名为TICKscript的DSL来定义任务,每个TICKscript定义一个管道,告诉Kapacitor要处理哪些数据以及如何处理,TICKscript语言是一种调用链接语言,每个脚本都有一个作用范围,并且作用范围中的每个变量都定义了可以在其上调用的方法;这些方法有两种:属性方法,修改调用的节点并返回对同一节点的引用,和链接方法,创建一个新节点作为节点的子节点,并返回一个对新节点的引用,每个TICKscript都有一个流或批变量,取决于想要运行的任务类型;Kapacitor使用TICKscript定义数据处理管道,管道是一组节点,它处理连接节点的数据和边缘,Kapacitor的中的管道是有向无环图DAGs,这意味着每个边有一个数据流的方向,而管道中不可能有任何循环,每个边缘都有一个类型,StreamEdge是一次传输单个数据点的数据的边缘,BatchEdge是一种以块方式而不是一次一次地传送数据的边缘,连接节点时,TICKscript语言不会阻止连接错误类型的边缘,而是在运行时执行检查,因此,语法正确的脚本可以定义无效的管道。
9.根据权利要求5所述的一种容器化环境下基于多个监控指标联合告警的系统,其特征在于:所述告警事件触发层模块用于如果多个监控指标的监控数据都达到告警阈值,Kapacitor将Lambda expressions为true的产生告警信息;serviceId标识监控对象名称,index.Fields标识监控指标,使用正则表达式匹配并替换实际告警对象和告警描述信息,生产用户可阅读和理解的告警信息描述;并可以设置告警通知策略,以短消息或者是邮件的方式通知到用户。
10.根据权利要求5所述的一种容器化环境下基于多个监控指标联合告警的系统,其特征在于:所述用户展示层模块用于监控数据展示页面,主要展示监控统计结果,用户根据业务需求展示不同采样周期:1分钟、5分钟、1小时、24小时,不同时间段内的监控数据;告警历史页面主要展示触发告警数据的资源信息、规则信息及告警触发时间等,方便用户及时的定位及修复告警。
CN202210222041.XA 2022-03-07 2022-03-07 一种容器化环境下基于多个监控指标联合告警的方法及系统 Pending CN114598601A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210222041.XA CN114598601A (zh) 2022-03-07 2022-03-07 一种容器化环境下基于多个监控指标联合告警的方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210222041.XA CN114598601A (zh) 2022-03-07 2022-03-07 一种容器化环境下基于多个监控指标联合告警的方法及系统

Publications (1)

Publication Number Publication Date
CN114598601A true CN114598601A (zh) 2022-06-07

Family

ID=81815535

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210222041.XA Pending CN114598601A (zh) 2022-03-07 2022-03-07 一种容器化环境下基于多个监控指标联合告警的方法及系统

Country Status (1)

Country Link
CN (1) CN114598601A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115617625A (zh) * 2022-12-15 2023-01-17 云和恩墨(北京)信息技术有限公司 告警规则配置方法及装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114090378A (zh) * 2021-11-22 2022-02-25 浪潮云信息技术股份公司 一种基于Kapacitor的自定义监控告警方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114090378A (zh) * 2021-11-22 2022-02-25 浪潮云信息技术股份公司 一种基于Kapacitor的自定义监控告警方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115617625A (zh) * 2022-12-15 2023-01-17 云和恩墨(北京)信息技术有限公司 告警规则配置方法及装置

Similar Documents

Publication Publication Date Title
US11288142B2 (en) Recovery strategy for a stream processing system
US20210160307A1 (en) Probability-distribution-based log-file analysis
CN108335075B (zh) 一种面向物流大数据的处理系统及方法
WO2020147336A1 (zh) 一种微服务全链路监控系统及方法
Serhani et al. Self-adapting cloud services orchestration for fulfilling intensive sensory data-driven IoT workflows
CN112349404A (zh) 基于云-边-端架构的多中心医疗设备大数据云平台
US20100070981A1 (en) System and Method for Performing Complex Event Processing
CN107103064B (zh) 数据统计方法及装置
US20140222843A1 (en) Systems, Methods, and computer Program Products to Ingest, Process, and Output Large Data
CN114090378A (zh) 一种基于Kapacitor的自定义监控告警方法
CN110060118A (zh) 一种订单履约全链路实时监控方法、装置及计算机设备
CN111339175B (zh) 数据处理方法、装置、电子设备及可读存储介质
US8959051B2 (en) Offloading collection of application monitoring data
Badidi et al. Enhancing the processing of healthcare data streams using fog computing
CN110532152A (zh) 一种基于Kapacitor计算引擎的监控告警处理方法及系统
CN111245672A (zh) 一种通用可扩展的追踪业务全链路的监控方法及系统
CN114598601A (zh) 一种容器化环境下基于多个监控指标联合告警的方法及系统
CN106452829B (zh) 一种基于bcc-knn的云计算中心智能运维方法及系统
CN116932148A (zh) 一种基于ai的问题诊断系统及方法
CN111049846A (zh) 数据处理方法和装置、电子设备及计算机可读存储介质
Bhargavi Complex event processing framework for big data applications
EP2770447B1 (en) Data processing method, computational node and system
CN114756301A (zh) 日志处理方法、装置和系统
Plale et al. Data provenance for preservation of digital geoscience data
CN113377877A (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