面向复杂微服务架构系统的异常分析与定位方法研究
如果无法正常显示,请先停止浏览器的去广告插件。
1. 面向复杂微服务架构系统的异常分析与定位方法研究
荣国平
2021年12月4日
2. 个人介绍
荣国平,博士,南京大学软件学院副研究员,南京大学-星环科技“星云”数据技
术联合研究中心主任,主要研究领域为软件过程、DevOps 、AIOps和数据技术等,
主持或参与多项国家级、省部级项目。在IST、SPE、JSS、软件学报等一流期刊
以及ICSE,ESEM,ISSRE,ICSME 等一流国际会议上发表各类论文60余篇。作
为核心成员规划了《开发运维一体化成熟度模型国家标准》的整体架构,出版了
第一本中文DevOps教材《原理、方法与实践》。此外,组织了“工业和信息化领
域急需紧缺人才(大数据和人工智能)培养工程”丛书,并担任主编。
2
3. 1 异常分析现状与挑战
2 基于多维指标的异常分析
3 基于图理论的异常分析
4 总结与展望
4. 背景介绍
观测
发现
定位
恢复
AIOps
4
5. 背景介绍
观测
发现
定位
恢复
AIOps
5
6. 背景介绍
Ø服务数量庞大
Ø服务异构
Ø调用关系复杂且动态变化
6
7. 问题挑战
Ø 服务数量大 Ø 掩盖有价值的数据
Ø 服务异构 Ø 算法复杂
Ø 调用关系复杂且动态变化 Ø 影响分析效率
目标:识别/给定一个已经产生的异常,分析并定位异常产生的根本原因
( 1 )根因是努力的目标,很多时候我们只能获取线索
( 2 )“出问题”对于软件和硬件的含义是不一样的
( 3 )可观测性:使业务系统“透明化”的能力
7
8. 1 异常分析现状与挑战
2 基于多维指标的异常分析
3 基于图理论的异常分析
4 总结与展望
9. 维度信息
一条请求附带了维度信息:
异常
(城市,OS平台,网络类型,运营商…)
每个维度有不同的值:
Ø 城市:上海、北京、深圳 …
Ø OS平台:iOS、Android …
Ø 网络:4G、5G、WIFI …
Ø 运营商:移动、联通、电信 …
上海,移动
Android
Ø …
9
10. 场景与目标
在观测到一项KPI(例如,成功率或者请求时间等)指标出现异常后(例如,
陡升陡降),能够尽快定位和识别哪个维度组合最可能导致该异常。
10
11. 维度组合爆炸问题
All
( A1 )
( A2 )
…
( An )
( A1, B1 )
( A1, B2 )
…
( A1, Bm )
( A2, B1 )
…
( An, Bm )
A B C
A, B A, C B, C
全量维度组合
的数量爆炸
A, B, C
11
12. 算法流程
构建维度树
遍历维度组合
方向:自顶而下、自下而上...
策略:剪枝、蒙特卡洛搜索...
计算贡献度 取Top-N为
参考线索
设计贡献度衡量指标 选取Top-N
12
13. 现有研究与方法
算法 论文
ImpAPTr Locating the clues of declining success rate of service calls
Squeeze Generic and Robust Localization of Multi-Dimensional Root
Causes
HotSpot HotSpot: Anomaly Localization for Additive KPIs with Multi-
Dimensional Attributes
Adtributor Adtributor: Revenue debugging in advertising systems
* 按发表时间排序
13
14. 现有研究与方法
Top-N准确率
14
15. 现有研究与方法
耗时
15
16. 1 异常分析现状与挑战
2 基于多维指标的异常分析
3 基于图理论的异常分析
4 总结与展望
17. 基本原理
Ø 不同的运维数据之间的关联关系天然地可以利用图进行表示
Ø 图结构表示了异常传播的过程
Ø 对图进行分析的过程模拟了人工定位异常原因的过程
• 利用蒙特卡洛:模拟人工排查的过程
• 利用历史数据:模拟查询知识库的过程
17
18. 基于图理论的异常分析定位
数据获取
图构建
图分析
18
19. 数据获取
存在的挑战
Ø 数据异构
Ø 数据量大
Ø 关联复杂
19
20. 图构建—利用因果推断构建拓扑图
PC算法及其变种
Ø 因果推断
Ø 基于贝叶斯网络
Ø 确立依赖关系及依赖方向
20
21. 图构建—利用调用链路构建拓扑图
21
22. 图分析
01 02
随机游走 图匹配
Ø 无需历史数据 Ø 依赖历史数据
Ø 无法沉淀有用历史信息 Ø 无法识别超出历史数据范围的问题
22
23. 图分析—基于随机游走
游走过程
Ø 权重计算
Ø 执行游走
• 前向转移
• 逆向转移:防止陷入局部最优
• 原地滞留:周围节点权重都小于
当前节点
23
24. 图分析—基于随机游走
随机游走变种
Ø Random Walk with Restart
Ø PageRank
Ø Personalized PageRank
Ø …
24
25. 图分析—基于图匹配
25
26. 现有研究与方法
算法 论文
MicroCause Localizing Failure Root Causes in a Microservice through Causality
Inference
MicroRCA MicroRCA: Root Cause Localization of Performance Issues in
Microservices
Graph based RCA Graph-based root cause analysis for service-oriented and
microservice architectures
MonitorRank Root Cause Detection in a Service-Oriented Architecture
* 按发表时间排序
26
27. 各个方法性能表现
100
90
80
70
60
50 Ours
40 MicroCause
30 MicroRCA
20
10
0
Top1
Top3
Application
Top5
Top1
Top3
Host
Top5
Top1
Top3
Metric
Top5
Top1
Top3
Top5
Problem
27
28. 1 异常分析现状与挑战
2 基于多维指标的异常分析
3 基于图理论的异常分析
4 总结与展望
29. 总结与展望
异常
分析
上下文关联
定位
Ø介入点左移——服务健康度维持
Ø数据质量治理——数据可观测性
Ø经验知识化——运维知识图谱
Ø重视统计方法——先统计,后AI
29
30. 面向复杂微服务架构系统的异常分析与定位方法研究
THANKS
荣国平
ronggp@nju.edu.cn