【云驻共创】AIOps项目开发实战
AIOps原子能力划分及介绍
AI使能基于包括日志和KPI数据在内的基础数据层,在基础算法库的帮助下构建算子能力,覆盖了故障发生、故障检测、故障定位和故障修复在内的整个时期,在无故障阶段进行故障预测,实现全流程覆盖。
AIOps具备20+原子能力,覆盖了预测、检测、诊断、识别等多个运维环节,在故障预测阶段提供了时空流量预测、硬盘故障检测、电池故障预测和光模块故障预测等;在故障检测阶段提供了KPI异常检测、多KPI异常检测、日志异常检测、信令异常检测,具备标注反馈优化能力;在故障识别阶段,提供告警严重度分级、日志异常分类、KPI异常分类和识别类功能,用来减轻运维人员的工作量;在故障定位阶段提供KPI关联分析、异常传播关系挖掘、告警根因诊断、多维属性的根因定位和故障恢复推荐。
AIOps在IT场景实践
采集Access日志数据,提取KPI,进行KPI异常、日志异常检测,其中黄金指标和系统指标是重点检测对象,将服务告警、KPI异常和日志异常等进行异常事件的一个聚合,进行故障定位,展示给相关的运维人员。主要监控关键接口的成功率和时延这两者被称为黄金指标,每个微服务都提供了该服务的关键接口作为主要监控目标。
灵活的流程编排,快速实现IT场景智能化运维,从KPI提取、数据对接到异常检测,一直到事件的通知,提供了方便的流程操作。
KPI异常检测能力是AI运维的基础,也是其实现所需要的最关键的能力,如果知识基于单指标做检测,准确率是不达标的,所以NAIE采用了多指标检测,比如卡方分布、BRCF、CLSTM和iforest。同样对于单指标也做了多型数据进行分析,来优化其准确率。
在异常发生后,做个关联分析能够辅助故障的定界定位。KPI异常检测整体流程分为全量KPI指标,包括分组配置、KPI业务属性等;属性分析,在周期检测上分为有周期和无周期,无周期的具有平稳、复杂变化的特点,除此还有波动性检测、离散检测等;在数据预处理阶段,可以进行缺失补齐、指标平滑、异常去噪等,生成标签给下一阶段;进入异常检测阶段,使用多指标检测;之后检测异常显著度,并对异常进行告警。
AIOps采用大规模服务集群,训练态包括日志的模板提取,包括从原始数据、数据预处理到模板生成。运行态包含了故障发生、故障检测和故障分析。利用日志模板对日志进行匹配,并通过日志模板增量学习来不断优化日志模板,根据匹配的结果检测异常,进行特征提取,展示其异常。在运行态需要实现提取模板、匹配模板(事件)、提取日期、提取时间、提取常量和变量、基于时间窗内的模板词频顺序等判断是否异常推荐出异常时间窗内的top根因日志。
告警分级排序,可以用来解决事件窗的选择困难。它是从多个数据源进行特征提取,然后进行排序,为了得到更高的准确率,也加入了一些相关的关键词。数据源包括KPI指标、系统日志、操作日志、运行日志和告警信息等等。根据相关数据源,进行KPI异常告警检测和日志异常告警,将这些汇聚成事件,分析其告警特征,比如相关的文本特征和语义特征、时间特征比如频率数量周期等。除了告警特征还有就是指标特征,比如指标类型、偏离度、异常个数。根据特征提取的结果利用XGBoost进行排序,它可以适应多个场景,进行多分类和排序操作均可;它的精度更高,它对损失函数进行二阶泰勒展开,增加精度,而且可以近似大量损失函数;它的灵活性更强,不仅支持CART还支持线性分类器、自定义损失函数(要支持一阶二阶求导);支持并行运算,XGBoost中的’块结构’能够支持并行,提升效率。
我们可以基于调用链,实现故障实时的异常定界。可以通过3个步骤来进行实现,从历史的Trace日志中获取各接口间的调用关系比如对trace日志进行关系提取,对接口指标进行日常检测获取异常KPI组比如对接口KPI进行异常检测,使用随机游走算法获取根因微服务。
多故障诊断方法相结合,实现单网元和跨网元场景根因定位,包括拓扑关系的根因定位和层次关系的根因定位。前者遵循的方法是先定界再定位,因果推理包括格兰杰因果、PC因果和PCMIC,进行关联分析包括异常时间关联、皮尔森相关和互相关。而后者遵循的方法是Bottom-Up定位有效组合和Top-Down定位根因组合。
效果展示
下面是应用后的效果展示,提供了接口的成功率和平均时延,他们能够实时更新,实时的检测。还提供了接口失败率的排行,可以有选择的关注某些接口。还提供了接口的时延排行,可以清楚的看到哪些接口时延占比高。除此还有相关的一些检测、接口的调用次数等等。
这张图展示了KPI的告警信息、时延的异常走势、成功率的异常走势,可以根据其情况给予重点关注。
最后这张图提供了故障根因描述、关联告警、异常日志、调用链时序图。基于调用链时序图,我们可以直观的看到接口调用情况,以及相关的异常问题。
网络人工智能引擎iMaster NAIE是自动驾驶网络的网络AI设计和开发基础平台,支持对上传到云端的各种网络数据,持续进行AI训练和知识提取生成AI模型和网络知识成果,并可注入到网络基础设施、网络管控单元和跨域智能运维单元中,让网络更好用,越用越智能。让网络AI开发更简单、应用更高效,使能自动驾驶网络!
- 点赞
- 收藏
- 关注作者
评论(0)