阿里云大数据计算平台 基于AIOps的根因定位实践 阿里云算法专家/张颖莹 演讲大纲 01阿里云大数据运维背景02大数据运维中的根因定位 03阿里云根因定位实践04 根因定位背后的算法和工程链路 05总结和展望 01阿里云大数据运维背景 阿里灵杰 阿里云大数据计算平台 典型业务场景 大数据计算服务MaxCompute 实时计算Flink版 实时数仓Hologres …… 大数据计算平台 阿里云ABM运维中台 效率 AIOps 稳定性 成本 智能运维AIOps 大规模 核心业务 实时性 架构复杂 海量多源异构数据 02大数据运维中的根因定位 根因定位业务价值 MeanTimeToResolve(MTTR) 问题发生异常发现根因定位问题恢复 缩短MTTR,保障SLA(ServiceLevelAgreement) 根因定位问题定义 当我们在谈论根因定位时,我们究竟在谈论什么? 维度下钻 根因分类 因果推断 定位结果 根因维度 根因类别 根因节点/路径 核心挑战 庞大搜索空间 特征构建 因果图构建和推断 根因定位的普遍性难点 数据来源和类型复杂 指标间存在复杂的关联关系性能和实时性要求高 标注样本数量少 全新的根因类型或表现形式专家经验与模型能力的结合 03阿里云根因定位实践 案例1:多维数据下钻分析 服务整体流量指标 Q:哪些维度导致了服务整体流量下跌?具体是哪几个用户/机房? 集群 机房 应用 地域 应用 用户 案例1:DrillUp下钻分析框架 难点 解决方案 如何量化一个维度是根因的可能性 显著度(自身变化) 惊喜度(子节点分布) 贡献度(总体占比) 面对庞大的搜索空间如何提升性能 自动选择最优的搜索方向 快速剪枝 高效的数据结构(BitMap) 案例2:计算平台故障根因类型定位 模块 Flink MaxCompute Hologres 根因类型 资源调度 YARNNMdecommissioned Fuximasterfail ASIserveroverload YARNRMswitch Fuxitobofail ASInodefail YARNresourcepreemption Fuxiapiserveroverload ASIapiserveroverload … … … 存储 HDFSserviceunavailable panguserverunavailable HDFSusageoverlimit pangumasterfailover HDFScallqueuefull pangumasterqueuesizefull … panguserverwriteslow panguchunkserverfailover … 机器 oomiohangdiskfailurecpuusageoverlimitmachinebreakdown … 网络 martnetexceptionqosexceptionlvsexception … 其他 Upstream-TT Tunnel POP Upstream-SLS Frontend DNS … … … Q:故障发生时 是平台哪个模块导致的?具体是哪种类型的原因? 案例2:计算平台故障根因类型定位 特征构建 异常检测 指标 事件 log 实时在线聚类 •NLP •层次聚类 指标构建 •日志类别 •维度 日志聚类 日志 拓扑 案例2:计算平台故障根因类型定位 样本积累 Flink Hologres MaxCompute 故障演练数据增强 案例2:计算平台故障根因类型定位 定位模型 基于知识的层次贝叶斯网络(KHBN) 值为0/1的 时间序列 事件指标日志 实体关系拓扑 专家定义的根因类型 •指标层因果关系构建PCAlgorithm 指标层 根因层 模块1 模块2 模块3 … 类型1 类型2类型3 … •根因分类 条件概率 i i type∗=argmaxtP(ti|mk,s1,s2,…,sj )P(mk |s1 ,s2, …,sj) 案例2:CloudRCA根因定位框架 事件中心 PMDB 日志存储系统 CMDB 优势 •整合多源异构数据 •融合了专家知识和数据智能的层次贝叶斯网络 •可应对全新的故障类型 •可迁移的通用学习框架 事件 指标 日志 实体关系 周期识别和 日志聚类 分解 预处理 模板提取() AFT-tree 向量化 异常检测 (Word2Vec) 实时聚类 (al Hierarchic Clustering) 特征数据(标准化0/1时间序列) 带标注样本数据 故障演练 基于知识的层次贝叶斯网络(KHBN) 根因推断 [1]ZhangY,GuanZ,QianH,etal.CloudRCA:ARootCauseAnalysisFrameworkforCloudComputingPlatforms[C]//Proceedingsofthe30thACMInternationalConferenceonInformation&KnowledgeManagement.2021:4373-4382. 案例3:网络故障根因类型定位 ICASSP’22AIOpsChallenge网络智能运维大赛 Q:根因是哪种类型或哪几种类型的组合? 案例3:网络故障根因类型定位 特征构建 时序特征 方位特征 缺失特征 特征依赖 进行拓展 tsfresh 方向+距离利用归因模型 拓展出交叉特征 标签拓展 案例3:网络故障根因类型定位 数据增强 未打标数据标签拓展 多维时间序列相似度计算 Eros(ExtendedFrobeniusnorm) 已打标数据标签补充 时间戳对齐 案例3:网络故障根因类型定位 定位模型 分类模型 XGBoost 融合模型 规则生成模型 基于树模型的规则生成Skope-rules 归因模型 特征重要性计算Shapleyvalue 因果图模型 随机游走 PageRank 案例3:NetRCA根因定位框架 时序特征方位特征补全特征交叉特征 特征工程 原始数据 优势 样本相似度计算样本标签补全 数据增强 分类模型规则生成模型 归因模型图模型 集成模型 •充分挖掘的时序特征和特征间的关联关系 •充分利用了未打标的数据 •集成模型兼顾了准确性和可解释性 派生数据 根因推断结果 [2]ZhangC,ZhouZ,ZhangY,etal.Netrca:aneffectivenetworkfaultcauselocalizationalgorithm[C]//ICASSP2022-2022IEEEInternationalConferenceonAcoustics,SpeechandSignalProcessing(ICASSP).IEEE,2022:9316-9320. 04根因定位背后的算法和工程链路 根因定位算法工具箱 AIOps背后的数据和工程链路 流程平台 通知服务 作业平台 …… MaxCompute Flink 机器学习平台PAI …… 异常检测 MaxCompute/Flink/Hologres系统异常根因定位 …… 稳定性SLA指标 平均故障发现时间 平均故障处理时间 …… 指标运营AIOps平台运维中台计算服务 性能指标库PMDB 事件中心 日志中心SLS 配置管理库CMDB 日志聚类 因果推断 …… 算法服务数据存储 指标 告警/操作事件 日志 实体拓扑关系 数据采集 05总结与展望 维度下钻 DrillUp 总结 效率 AIOps 稳定性成本 MeanTimeToResolve(MTTR) 根因分类 CloudRCA 因果推断 NetRCA 问题发生异常发现根因定位问题恢复 数据来源和类型复杂 时序分析 日志分析 归因模型 拓展特征 因果分析 剪枝 Flink 指标间复杂的关联关系性能和实时性要求高 标注样本数量少 故障演练 数据增强 因果推断 因果图构建 全新的根因类型或表现形式专家经验与模型能力的结合 思考和展望 数据来源 特征工程 样本积累 模型构建 云原生可观测性Metric/log/trace 算法工具箱链路实时性 混沌工程数据增强 推断能力可解释性 SREWorks 云原生数智运维平台 https://github.com/alibaba/SREWorks 部分算法服务在未来将陆续通过SREWorks输出,欢迎关注!