一种IT智能运维监控系统及运维方法转让专利

申请号 : CN202210502055.7

文献号 : CN114615134B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 沈力朱义元

申请人 : 北京华创方舟科技集团有限公司

摘要 :

本发明提出了一种IT智能运维监控系统及运维方法,数据采集单元用于将被监控的指标数据采集到所述运维监控系统中;数据传输单元用于将所述数据采集单元采集的指标数据传输到所述数据存储单元;数据存储单元用于将收集到的指标数据按照时间维度存放在时序数据库中;数据分析单元用于对所述时序数据库中的时间数列数据的季节特征、趋势进行预测;告警触发单元在指标超过设定的阈值或者依赖服务状态变为不可达时,及时发出报警通知服务管理员排查;应用单元,基于所述数据采集单元和数据分析单元实现IT智能运维系统的可视化监控和全链路监控。

权利要求 :

1.一种IT智能运维监控系统的运维方法,其特征在于,包括如下步骤:S1、将数据采集单元采集的指标数据传输到数据存储单元;

S2、将收集到的指标数据按照时间维度存放在时序数据库中;

S3、数据分析单元对所述时序数据库中的时间数列数据的周期特征、趋势进行预测;

所述数据分析单元对处理后的时间数列数据随时间变化而呈现周期性波动的规律进行分析,定义时间数列数据样本自协方差 为:;

式中:N为样本长度,k为取值间隔,为样本平均值,E为均值函数;

时间数列数据样本的自相关函数 定义为:;

式中: 为该样本的方差;

根据 原则,若有:

则估计值 趋于零,时间数列不含有周期性,反之,则时间数列存在周期性波动特征;

S4、在指标超过设定的阈值时,及时发出报警通知排查;

S5、基于所述数据采集单元和数据分析单元实现IT智能运维系统的可视化监控和全链路监控。

2.根据权利要求1所述的IT智能运维监控系统的运维方法,其特征在于,所述数据分析单元在进行数据分析之前,采用平滑算法进行数据预处理,假定{Xt:t≥1}是一组观测时间数列,则平滑算法的拟合序列{Pt:t≥2}为:;

式中,平滑系数 ;

预测未来T期的估计值 表示为:

式中,

选取中间变量 作为处理时间数列。

3.根据权利要求2所述的IT智能运维监控系统的运维方法,其特征在于,所述数据分析单元采用标准化方法保证数据之间的可比性,标准化参数z为:;

式中: x为原始数据的取值, 和 分别为原始数据的均值和标准差,经过所述标准化处理,所有输出的处理时间数列均映射到 , 的区间内。

4.根据权利要求2所述的IT智能运维监控系统的运维方法,其特征在于,对所述时间数列数据进行傅里叶变换,由傅里叶变换计算得到主周期长度和振幅,利用时间数列分解法去除周期分量,并计算剩余时间数列数据的自相关函数估计值。

5. 根据权利要求4所述的IT智能运维监控系统的运维方法,其特征在于,选取周期性加法模型作为时间数列预测模型,假定{Xt: t≥1}是一组观测时间数列,则周期性加法模型为:;

式中:  ∈[0,1]代表数据平滑系数;∈[0,1]代表趋势平滑系数;∈[0,1]代表周期平滑系数;L表示一个周期的长度;Pt表示t时刻的去除周期分量的数据平滑值;Tt表示t时刻的趋势平滑值;St表示t时刻的周期性平滑值;

未来m期的数据预测模型为:

;其中,mod函数是求余函数;

对首个周期内的时间数列建立双参数模型,为:。

6.一种IT智能运维监控系统,用于实现权利要求1‑5任意一项所述的IT智能运维监控系统的运维方法,其特征在于,包括数据采集单元、数据传输单元、数据存储单元、数据分析单元、告警触发单元和应用单元:所述数据采集单元,用于将被监控的指标数据采集到所述运维监控系统中;

所述数据传输单元,用于将所述数据采集单元采集的指标数据传输到所述数据存储单元;

所述数据存储单元,用于将收集到的指标数据按照时间维度存放在时序数据库中;

所述数据分析单元,用于对所述时序数据库中的时间数列数据的周期特征、趋势进行预测;

所述告警触发单元,用于在指标超过设定的阈值时,及时发出报警通知排查;

所述应用单元,基于所述数据采集单元和数据分析单元实现IT智能运维系统的可视化监控和全链路监控。

7.根据权利要求6所述的IT智能运维监控系统,其特征在于,当接收到所述数据分析单元的分析结果后,与监测器预设的阈值做比对,如果超出阈值,则触发告警,改变监测器的状态,由正常状态转变为告警状态,并将告警信息在告警页面显示,如果没有超出阈值,则监测器的状态保持不变,依然为正常状态。

8.根据权利要求6所述的IT智能运维监控系统,其特征在于,所述告警触发单元采用阈值模型,根据监测器的历史数据,生成动态阈值;在服务高峰期,监测器与高峰期的阈值对比,在服务闲置期,监测器与闲置期的阈值比对。

说明书 :

一种IT智能运维监控系统及运维方法

技术领域

[0001] 本发明涉及智能运维监控技术领域,尤其涉及一种IT智能运维监控系统及运维方法。

背景技术

[0002] 近年来,云计算技术发展迅速。越来越多的公司选择将其应用程序部署到云上,云平台由此产生,各种企业纷纷开始使用基于云的服务,数字的存储和使用方式正在发生着革命性的改变。云平台带来便捷的同时,问题也随之而来,云环境下各种应用服务种类繁多且数量巨大,一旦发生异常导致系统崩溃,将会造成不可估量的损失。为了时刻监控云平台的运维状态,保障云环境安全,相关维护人员在云平台上选择不同的应用层面,并收集对应层面中各种不同的监控指标数据。资源类型和监控指标复杂多样,如基础设施的CPU参数、内存利用率以及各种网络指标等。这使得云平台中产生的日常监控数据数量大种类多,即对应的时序数据规模大维度高。为了从海量KPI数据中挖掘有用信息,获取数据规律,可以对时间数列数据进行处理分析,进而据此进行自动地异常检测研究,但这个过程中往往意味着巨大的计算开销。
[0003] 运维监控系统是运维乃至整个软件产品生命周期中最重要的一环,被称作观察服务的眼睛。通常软件从业者们习惯性的更加关注软件产品的需求分析、开发、测试等环节,却忽视了运维监控的重要性。但是一旦服务出现问题,没有一个好的监控系统,排查故障犹如盲人摸象、大海捞针。运维监控系统的核心作用就是让服务处于被洞察的状态:运维工程师通过监控系统可以及时了解当前系统资源占用情况、服务可用情况、上下游依赖健康情况等等。好的运维监控系统可以做到事前及时预警发现故障,事后提供详实的数据用于追查定位问题,出现问题及时主动发出报警信息并准确推送给相关人员。运维监控系统的终极目标是保证服务的高可用。

发明内容

[0004] 为了解决上述技术问题,本发明提出了一种IT智能运维监控系统的运维方法,包括如下步骤:
[0005] S1、将数据采集单元采集的指标数据传输到数据存储单元;
[0006] S2、将收集到的指标数据按照时间维度存放在时序数据库中;
[0007] S3、数据分析单元对所述时序数据库中的时间数列数据的周期特征、趋势进行预测;
[0008] 所述数据分析单元对处理后的时间数列数据随时间变化而呈现周期性波动的规律进行分析,定义时间数列数据样本自协方差 为:
[0009] ;
[0010] 式中:N为样本长度,k为取值间隔,为样本平均值,E为均值函数;
[0011] 时间数列数据样本的自相关函数 定义为:
[0012] ;
[0013] 式中: 为该样本的方差;
[0014] 根据 原则,若有:
[0015] ;
[0016] 则估计值 趋于零,时间数列不含有周期性,反之,则时间数列存在周期性波动特征;
[0017] S4、在指标超过设定的阈值时,及时发出报警通知排查;
[0018] S5、基于所述数据采集单元和数据分析单元实现IT智能运维系统的可视化监控和全链路监控。
[0019] 进一步地,所述数据分析单元在进行数据分析之前,采用平滑算法进行数据预处理,
[0020] 假定{Xt:t≥1}是一组观测时间数列,则平滑算法的拟合序列{Pt:t≥2}为:
[0021] ;
[0022] 式中,平滑系数 ;
[0023] 预测未来T期的估计值 表示为:
[0024] ;
[0025] 式中,
[0026] ;
[0027] 选取中间变量 作为处理时间数列。
[0028] 进一步地,所述数据分析单元采用标准化方法保证数据之间的可比性,标准化参数z为:
[0029] ;
[0030] 式中: x为原始数据的取值, 和 分别为原始数据的均值和标准差,经过所述标准化处理,所有输出的处理时间数列均映射到 , 的区间内。
[0031] 进一步地,对所述时间数列数据进行傅里叶变换,由傅里叶变换计算得到主周期长度和振幅,利用时间数列分解法去除周期分量,并计算剩余时间数列数据的自相关函数估计值。
[0032] 进一步地,选取周期性加法模型作为时间数列预测模型,假定{Xt: t≥1}是一组观测时间数列,则周期性加法模型为:
[0033] ;
[0034] 式中:  ∈[0,1]代表数据平滑系数;∈[0,1]代表趋势平滑系数;∈[0,1]代表周期平滑系数;L表示一个周期的长度;Pt表示t时刻的去除周期分量的数据平滑值;Tt表示t时刻的趋势平滑值;St表示t时刻的周期性平滑值;
[0035] 未来m期的数据预测模型为:
[0036] ;
[0037] ;其中,mod函数是求余函数;
[0038] 对首个周期内的时间数列建立双参数模型,为:
[0039] 。
[0040] 本发明还提出了一种IT智能运维监控系统,用于IT智能运维监控系统的运维方法,包括数据采集单元、数据传输单元、数据存储单元、数据分析单元、告警触发单元和应用单元:
[0041] 所述数据采集单元,用于将被监控的指标数据采集到所述运维监控系统中;
[0042] 所述数据传输单元,用于将所述数据采集单元采集的指标数据传输到所述数据存储单元;
[0043] 所述数据存储单元,用于将收集到的指标数据按照时间维度存放在时序数据库中;
[0044] 所述数据分析单元,用于对所述时序数据库中的时间数列数据的周期特征、趋势进行预测;
[0045] 所述告警触发单元,用于在指标超过设定的阈值时,及时发出报警通知排查;
[0046] 所述应用单元,基于所述数据采集单元和数据分析单元实现IT智能运维系统的可视化监控和全链路监控。
[0047] 进一步地,当接收到所述数据分析单元的分析结果后,与监测器预设的阈值做比对,如果超出阈值,则触发告警,改变监测器的状态,由正常状态转变为告警状态,并将告警信息在告警页面显示,如果没有超出阈值,则监测器的状态保持不变,依然为正常状态。
[0048] 进一步地,所述告警触发单元采用阈值模型,根据监测器的历史数据,生成动态阈值;在服务高峰期,监测器与高峰期的阈值对比,在服务闲置期,监测器与闲置期的阈值比对。
[0049] 本发明通过对IT运维监控系统的开发,希望能够达到对设备、业务的实时监控,服务快速部署,资产统一管理,对于设备或业务故障能够及时发现,迅速定位,并自动处理一些故障告警,实现自动化运维。具体地能够实现定时采集各监控对象的基本信息和实时运行信息,对数据的异常情况进行检测分析、发展趋势进行预测分析;同时能够通过多种告警方式及时地将告警信息发送给运维人员,将监控对象的运行信息直观地展示给运维人员,实现时间数列的快速存取以及系统关键接口安全访问功能。

附图说明

[0050] 为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0051] 附图1为本发明的IT智能运维监控系统的结构示意图;
[0052] 附图2为本发明的去除时间数列随时间变化而出现的周期分量的流程图;
[0053] 附图3为本发明的告警触发机制的结构示意图;
[0054] 附图4为本发明的IT智能运维监控系统的运维方法的流程图。

具体实施方式

[0055] 为了使本技术领域的人员更好地理解本申请实施例方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。
[0056] 在本发明的具体实施例附图中,为了更好、更清楚的描述系统中的各元件的工作原理,表现所述装置中各部分的连接关系,只是明显区分了各元件之间的相对位置关系,并不能构成对元件或结构内的信号传输方向、连接顺序及各部分结构大小、尺寸、形状的限定。
[0057] 如图1所示,为本发明的IT智能运维监控系统的结构示意图,包括如下单元:
[0058] 数据采集单元:数据采集指的是将被监控的指标数据采集到运维监控系统中,是监控系统数据的源头。数据采集通常采用客户端服务端模式,即安装部署在目标机器上的客户端负责采集到数据,然后传输到监控系统的服务端,服务端收集到指标数据则意味着数据采集成功。除了客户端采集之外,还有标准协议采集方式,如利用IGMP报文获取到当前网络设备信息。但是标准协议方式灵活性不够,因此本系统采用的是客户端采集方式。
[0059] 数据传输单元:在指标采集客户端采集到数据之后,需要将数据传输到监控系统服务端,供后续流程使用。目前数据传输方式有两种,一种是通过标准协议如HTTP ,TCP等进行传输,另一种是借助消息队列如Kafka, nsq等进行传输。使用消息队列虽然可以解耦服务,但引入一个第三方服务会增加系统复杂度,且会带来额外的资源消耗。因此系统选用HTTP协议进行数据传输。
[0060] 数据存储单元:我们需要对收集到的数据进行持久化存储,以便在分析的时候随时提取,也可以用于出现问题后的复盘,甚至可以用于机器学习的训练数据,使得监控系统具有一定的智能预测功能。监控系统收集到的指标数据通常存放在时序数据库中。监控数据的最大特点是天然带有时间维度,每个监控数据都有一个时间字段。这种带有时间属性的数据被称为时序数据,它可以很方便的展现一个指标在一段时间内的变化趋势,易于做时间维度的聚合分析。
[0061] 数据分析单元:数据分析是指为用户或者其他系统提供对监控数据的性能分析、关联分析和趋势分析。
[0062] 当数据采集单元采集到各对象的元数据后,需要数据分析单元对元数据进行深入分析。由于本系统中,关键数据的类型为时间数列,因此数据分析单元主要对时间数列的特征、趋势进行预测,同时进行异常检测。
[0063] 数据分析单元在进行数据分析之前,为了解决噪声和缺失点的影响,采用了指数平滑法进行数据预处理。本实施例中优选平滑算法实现时间数列降噪以及缺失点补齐的功能。
[0064] 平滑算法是对一次指数平滑后的值再进行两次指数平滑处理,具有更高的拟合精度,具体处理过程如下:
[0065] 假定{Xt:t≥1}是一组观测时间数列,则平滑算法的拟合序列{Pt:t≥2}如下式所示。
[0066] ;
[0067] 式中,平滑系数 。
[0068] 则预测未来T期的估计值 计算方法如下式所示:
[0069] ;
[0070] 式中,
[0071] ;
[0072] 利用平滑算法实现数据处理时,选取了中间变量 作为处理时间数列。
[0073] 为了解决量纲的影响,数据分析单元采用标准化方法进行处理,保证数据之间的可比性。
[0074] 标准化方法如下式所示:
[0075] ;
[0076] 式中:z为标准化参数,x为原始数据的取值, 和 分别为原始数据的均值和标准差。经过标准化处理,所有输出的处理时间数列均可映射到 , 的区间内。
[0077] 对处理后的时间数列随时间变化而呈现周期性波动的规律进行分析。如图2所示,为本发明的去除时间数列随时间变化而出现的周期分量的流程图。
[0078] 为了使实际计算的时间数列样本y以更快的速度收敛,定义样本自协方差 为:
[0079] ;
[0080] 式中:N为样本长度,k为取值间隔,为样本平均值,E为均值函数。
[0081] 则样本的自相关函数 定义为:
[0082] ;
[0083] 式中:  为该样本的方差。在样本容量N较大时,统计量自相关函数 的估计值近似服从分布N(0,1)。
[0084] 根据 原则,若有:
[0085] ;
[0086] 则认为估计值 趋于零,时间数列不含有周期性波动特征。反之,则认为时间数列存在周期性波动特征。
[0087] 接着,对该时间数列进行傅里叶变换,由傅里叶变换计算可得到主周期长度和振幅,利用时间数列分解法去除该周期分量,并计算剩余时间数列的自相关函数估计值。
[0088] 选取周期性加法模型作为时间数列预测模型。
[0089] 假定{Xt: t≥1}是一组观测时间数列,则周期性加法模型如式所示。
[0090] ;
[0091] 式中:∈[0,1]代表数据平滑系数;∈[0,1]代表趋势平滑系数;∈[0,1]代表周期平滑系数;L表示一个周期的长度;Pt表示t时刻的去除周期分量的数据平滑值;Tt表示t时刻的趋势平滑值;St表示t时刻的周期性平滑值。
[0092] 基于上式,未来m期的数据预测模型如下式所示:
[0093] ;
[0094] 式中, ;
[0095] 其中,mod函数是求余函数。
[0096] 对首个周期内的时间数列建立双参数模型,如下式所示:
[0097] ;
[0098] 本实施例中,双参数模型初始值设定如下式所示:
[0099] ;
[0100] 为了找到最优的平滑系数 、、,采用均方根误差R获得最优解。
[0101] 其中,均方根误差R的表达式如下式所示:
[0102] ;
[0103] 式中:Xt表示t时刻的实际观测值;Pt表示t时刻的单步预测值。
[0104] 告警触发单元:告警是运维监控系统里很重要的一个功能。在指标超过设定的阈值或者依赖服务状态变为不可达时,及时发出报警通知服务管理员排查。当数据分析单元判断出监控指标出现异常后,需要监控中心第一时间将异常信息发送给指定的运维人员。因此,为确保运维人员能够及时处理异常情况,消息推送模块需要选择合适的消息推送方式,并加以实现。这样可以及时发现问题及时处理,避免造成不必要的损失。
[0105] 告警触发机制如图3所示,当监控server将各个监测器的监控数据采集回来后,要跟监测器预设的监控阈值做比对,如果超出阈值,则触发告警,改变监测器的状态,由正常状态转变为告警状态,并将告警信息在告警页面显示,如果没有超出阈值,则监测器的状态保持不变,依然为正常状态。
[0106] 要满足历史告警可追溯的需求,关键在于要便于按照不同的维度对历史告警进行检索。历史告警被定义为已经处理过的,响应监测器状态己恢复正常的告警。在对告警数据设计时,要有一个告警状态的字段,当告警正在发生时,告警的状态为当前告警。当告警已经被确认后删除或者监测器的状态已恢复为正常,则告警的状态为已解除,流转为历史告警。历史告警产生的过程,历史告警生成后都显示在历史告警的页面中,可以根据告警的时间段、告警类别、告警字段、告警级别进行检索,并可以按照这个字段进行排序。
[0107] 为了实现告警的及时性,需要在预设监测器的阈值时找出一个最优值。为了达到这个目标,系统中引入了阈值模型的概念。阈值模型是指根据监测器的历史数据,生成一个动态的阈值,即在不同的时间点监测器跟特定的阈值进行比对,可能每个时间点的阈值都是不同的。
[0108] 阈值模型是根据监测器的历史监测数据生成的,除了产生特殊的时间点,它的基线基本就是监测器所代表的服务的一个整体服务水平,因此在这个基线的基础上加一个范围,只要在这个范围之内的监测值,就是正常状态,超出了这个范围就发出告警。阈值模型的范围是随着时间而变化的,在服务高峰期监测器与高峰期的阈值对比,在服务闲置期监测器与闲置期的阈值比对,避免了与一个固定阈值比对时高不成低不就的状态,在一定程度上阈值模型也起到了有效控制虚警量的作用。
[0109] 应用单元,其主要功能是完全基于数据采集单元和数据分析单元实现IT系统运维可视化监控、业务系统端到端全链路监控与故障自动定位,并对运维的实际需求进行动态化“零编码”的可视化中心建设,为运维人员提供高效的、智能化的IT系统运维管理工具平台。通过基于历史运维数据特征的告警触发单元自动设定功能平台建设,结合IT系统运维监测可视化画像、IT系统指标及日志关联分析的需求,完善和迭代基于IT业务端到端的全链路数据节点监控一条线,并且系统平台引入自动化运维技术,支持人工关联自动化运行作业,全面打造高效、可靠、安全的IT系统运维数字化平台。
[0110] 本发明还提出了一种IT智能运维监控系统的运维方法,采用上述的IT智能运维监控系统实现,如图4所示,包括如下步骤:
[0111] S1、将数据采集单元采集的指标数据传输到数据存储单元;
[0112] S2、将收集到的指标数据按照时间维度存放在时序数据库中;
[0113] S3、对所述时序数据库中的时间数列数据的周期特征、趋势进行预测;
[0114] S4、在指标超过设定的阈值时,及时发出报警通知排查;
[0115] S5、基于数据采集单元和数据分析单元实现IT智能运维系统的可视化监控和全链路监控。
[0116] 在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者通过所述计算机可读存储介质进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如,固态硬盘(solid state disk,SSD))等。
[0117] 以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。