基于网络拓扑结构的故障根因定位系统

2020-09-27 05:38郭镇远
数码设计 2020年10期
关键词:拓扑结构故障定位网络

郭镇远

摘要:大型服务平台内部上百个系统间的相互调用并产生上万条告警数据,大量冗余的信息给处理带来不便。为此我们设计了告警信息预处理、根因定位和可视化拓扑模块,利用网络拓扑信息及告警数据,及时有效的对告警进行过滤,并设计算法快速定位网络故障中根因节点位置,并可视化展现出所有网络拓扑结构,当网络中出现故障时候根据告警信息来生成局部拓扑结构,并将产生故障的根因节点可视化展示出来。

关键词:网络;拓扑结构;故障定位

中图分类号:TP393.07 文献标识码:A 文章编号:1672-9129(2020)10-0075-01

1 引言

当今大型业务平台内部涉及上百个系统间的相互调用,每天会产生上万条告警数据,巨大数据量使得传统的人工定位无法及时有效的处理告警信息,我们基于拓扑信息、时间信息和告警内容,对告警信息进行收敛处理,去除大量荣誉告警数据和噪声数据,将有用的告警信息简洁的呈现给运维人员。

2 基本原理

2.1告警事件预处理。根据告警信息与网络节点拓扑连接关系关联,去除掉数据中对根因定位无影响的数字、字符、噪声信息,去除网络节点拓扑中不连接的节点数据。并对剩余告警信息按相似性进行分类,便于后续定位算法中因果模型的构建。

2.2告警信息收敛。从时间维度获取时间上相关的拓扑节点,从拓扑维度获取拓扑上相关的拓扑节点,通过时间和拓扑两个维度进行收敛,收敛出时间和拓扑上都具有关联性的告警节点,并根据收敛得到的告警节点生成节点事件。

2.3告警事件转换。将收敛过后的节点事件,通过节点与告警关联的方式进行告警类型的转换,将节点的关联关系转化成告警的关联关系,用于后续模型的训练。

2.4根因定位算法。基于收敛后的告警关联数据,通过因果发现算法构建因果图,并基于已知的数据进行分析和验证,最终得出相关模型,通过模型即可对根因进行定位。

2.5可视化根因信息。使用Echart可视化图表框架,可视化展现出所有网络拓扑结构,当网络中出现故障时候根据告警信息来生成局部拓扑结构,并将产生故障的根因节点信息可视化展示出来。

3 实现过程

3.1提取日志中的节点信息。在节点的告警事件中,包含告警信息,告警时间,告警节点等信息,由于这些信息并没有进行分离处理,因此观察起来十分不便。通过正则匹配以及数据预处理,将其告警信息内容进行提取,提取出对定位根因告警有用的信息,并且无用干扰和噪声信息进行剔除。之后通过对告警信息分词,计算其信息熵的方式来获取告警信息之间的相关性,将告警信息相关性较强的信息進行聚合,从而实现对告警信息的分类。分类好的数据,可以提高算法效率,得到较为准确的定位结果。

3.2告警数据收敛处理。在收敛阶段,通过对事件和拓扑两个维度进行聚合,来获取告警事件。首先在时间维度上,利用滑动窗口的方法,收敛在一段时间内的告警节点,并且将这些节点信息放到同一个事件中,通过时间窗口聚合,提取出时间维度上相互关联紧密的告警节点。在获取到时间上相关的收敛事件后,对节点事件进行拓扑维度的收敛。

基于网络的拓扑结构图,对时间维度收敛过后的事件进行拓扑维度上的收敛。通过网络拓扑图匹配时间维度收敛过后的节点事件,对事件中节点在网络拓扑图中存在连接关系的,进行收敛处理,对其中不存在拓扑连接关系的进行剔除处理。通过拓扑维度上的聚合,可以找到节点之间拓扑上的相关关系,从而用于模型训练。

通过对时间和拓扑两个维度的收敛,把两个维度上的关联关系全部提取出来,从而生成的事件可以进行模型训练。

3.3告警转换。由于我们要对告警进行定位,因此要将上一步收敛好的节点事件进行告警转换,将节点的聚合连接关系转化成告警连接关系。对文件中节点进行聚合处理,获取每个节点上的告警信息,根据节点和告警的关联,将节点事件转化成告警的事件,从而可以对告警事件进行模型训练。

3.4模型训练。首先将存在根因告警的文件进行分组,同一种根因告警类型划分为一组,通过划分得到不同的根因,分别对存在根因的文件进行因果模型训练。利用规则生成的方式,进行因果模型图的生成。遍历每组中告警类型的连接关系,对首次遍历到的告警类型节点生成一个连接关系,并为其设置权重,之后重复遍历到的节点每次遍历将权重增加,最终可以获得不同的根因告警的因果结构图,并且每个因果节点上附带节点的权重。每种因果告警因果图对应于一种根因告警模型,通过对模型的匹配来定位根因结果。

3.5验证预测。通过遍历预测文件中所有节点,来进行定位。如果节点告警类型在根因告警类型里,查找上层调用节点几跳的节点连接信息,构建一个树状的节点连接结构,并且将其节点连接结构转换成告警连接结构,通过匹配模型上的对应的路径获得节点的权重,通过权重对这条路径打分,遍历告警节点上所有路径,计算打分之合。遍历预测文件中所有节点,获取打分和,最终打分最高的节点告警即为根因告警。

3.6可视化展示。使用前后端分离的方式建立可视化网站,前端使用百度Echart插件对进行可视化拓扑结构的展示,后端使用python对数据进行处理。通过前后端配合,最终建立了系统中所有节点间的拓扑连接关系,系统间的拓扑连接关系,系统内的拓扑连接关系,节点与告警的连接关系,以及动态的网络拓扑监控系统。通过动态的网络节点拓扑监控系统,运维人员可以清晰看到网络中拓扑的结构,以及某一时间段内的告警信息情况,帮助运维人员进行管理;通过网络拓扑图定位可视化,可以将其根因节点以及告警信息展示给运维人员。

4 结语

本系统从收集的海量告警当中,基于深层关联规则分析和神经网络技术,保留关键告警信息,减少告警数量,减轻运维负担。对告警信息进行多角度统计,联动分析及可视化,支持任意属性特征查找详细告警信息,并且展示告警节点与告警信息的关联,实时展示网络拓扑结构上的告警状态,并将其信息进行整理展示给运维人员,实现了网络故障告警和根因定位。

参考文献:

[1]冯鲁汉. 智能运维中多维监测指标的异常定位研究[D].西安电子科技大学,2019.

猜你喜欢
拓扑结构故障定位网络
测控区和非测控区并存的配电网故障定位实用方法
浅谈P2P网络的拓扑结构
探讨智能配电网故障快速定位与故障恢复
信息办公平台网络优化设计
电力电缆故障定位的探讨
油气集输系统信息化发展形势展望
基于网络的信息资源组织与评价现状及发展趋势研究
基于网络的中学阅读指导
新形势下地市报如何运用新媒体走好群众路线