云杉网络 DeepFlow & 必示RiskSeer 应用性能智能监控预警方案 原创
随着云原生技术的广泛应用,社会数字化快速发展,政府、金融、通信、电力、制造、消费等各行各业正在不断的被数字化、智能化改变,涌现出越来越多的大型、超大型 IT 业务。随之而来的是 IT 业务系统的复杂度越来越高,开发迭代速度越来越快,系统规模越来越大,运行风险越来越高,而业务抖动、业务故障的经济影响、社会影响也越来越广泛。
为了应对新的 IT 生产力带来的业务保障能力的挑战,可观测性技术快速发展和成熟,成为云原生时代公认的运维技术演进方向,可观测性平台也成为 IT 企业的必备选项。
可观测性技术从数据出发,致力于提升 IT 系统的可观察性、可维护性和运行可靠性,通过新的数据采集、数据处理、数据存储技术打通数据孤岛,形成百倍、千倍于上一代监控时代的数据体量,产生了 IT 运维的“数据大爆炸”。同时伴随着机器学习、神经网络、大模型等 AI 技术的不断爆发,使用 AI 技术对“数据大爆炸”产生的可观测性数据进行智能分析,逐步落地运维智能化将进一步改变 IT 运维,并最终实现端到端的 AI 运维保障能力。
通过在OpenAIOps 社区基于AIOps Live Benchmark:
https://www.aiops.cn/aiops-live-benchmark 进行充分验证,云杉网络与必示科技携手联合发布应用性能智能监控预警方案,融合云杉网络 DeepFlow 产品在可观测性、必示科技 RiskSeer 产品在运维数据 AI 分析的深厚技术积淀,实现 IT 系统高质量、高性能、全栈的可观测数据采集、智能监控和智能分析,全面提升云原生系统的可观测和智能化运维能力。
方案架构
云杉网络 DeepFlow 可观测性平台,以 eBPF 零侵扰(Zero Code)观测数据采集技术实现的分布式追踪数据、应用调用性能数据、函数剖析数据为核心,以智能标签(SmartEncoding)技术实现的观测信号高性能关联和存取为支撑,以观测数据 Sink 接口实现的观测数据 Pipeline 为补充,面向复杂的云基础设施及云原生应用,实现了全栈、全链路的分布式追踪、应用性能指标分析、TCP 性能指标分析、持续性能剖析、网络流回溯等一系列的深度观测能力。平台通过高性能、高质量的数据采集和开放的数据汇入,形成了汇聚 Metrics、Trace、Logging、Profiling、Events 等观测信号的可观测性数据湖,湖内的各类观测信号数据通过自动注入的标签(资源标签、业务标签)高度关联并富含上下文信息。
必示科技 RiskSeer 产品基于大数据技术和时序基础模型,面向时序数据提供基于智能动态基线的指标监控预警能力,在趋势预测方面积累了丰富的数据样本和模型算法参数,具有模型算法通用性强、处理性能高、抗数据噪音、抗数据缺损、非周期变化自适应、周期漂移自适应等诸多优异的智能特性,帮助用户及时准确的发现系统运行异常、主动消除潜在风险,持续提升业务运行健康状态。
DeepFlow 与 RiskSeer 结合,用数据加 AI,构建基于可观测性数据的应用性能智能监控预警方案,从观测数据采集到 AI 智能分析形成完整闭环,构建 IT 系统智能运维的新高度。
DeepFlow 可观测性数据采集
DeepFlow 通过 eBPF 技术用零侵扰的方式为用户带来全链路、全栈、Request 颗粒度的观测数据,为企业 IT 系统的观测广度、深度、精细度,以及运维效率带来革命性变化。
零侵扰
DeepFlow Agent 无需向应用中插入或改写代码(Zero-Code),无需重启应用(Zero-Reset),无需修改应用配置(Zero-Configure),即可对应用热加载观测数据的获取能力。
全链路
除 Java 应用程序之外,Golang、C/C++、Pathyon、Rust 等语言的应用均难以插码追踪,DNS、Redis、MQ、API Gateway 等平台服务也无法插码追踪,而 DeepFlow 使用 eBPF 技术将追踪能力扩展到了 Java 应用之外的广泛盲区,形成更加完整的全链路追踪。
1:(SIGCOMM 2023)Network-Centric Distributed Tracing with DeepFlow: Troubleshooting Your Microservices in Zero Code][1]
2:DeepFlow 分布式调用链追踪原理三分钟短视频[2]
3:DeepFlow 分布式调用链追踪火焰图三分钟短视频[3]
全栈
传统的 APM 技术聚焦于应用程序的观测,而 DeepFlow 不仅具备对应用程序的观测能力,还将观测能力延伸到操作系统、容器集群、云、物理网络,每一次应用请求在基础设施中全过程的性能、质量得以全面洞察,从而打通应用、系统、网络的运维鸿沟,使能各个技术栈统一面向业务运维,构建企业 IT 应用系统全栈、统一的观测运维体系。
Request 颗粒度
DeepFlow 为 IT 系统带来了高性能、无抽样的追踪能力和 Request 颗粒度的性能指标获取能力。在 DeepFlow 平台可以观测任意一次 Request 在全栈、全链路的全过程,以及每一个过程位置的性能数据。IT 系统中的周期性请求异常,无规律请求异常、偶发性请求异常、大规模请求异常、单次请求异常,在 Request 颗粒度的观测能力之下均可以全方位洞察,防微杜渐、防患未然。
RiskSeer 指标智能监控预警
RiskSeer 指标智能监控预警系统通过智能基线算法分析数据的内在规律,并实时预测指标上下界阈值,识别业务指标趋势的反常变化,从而检测超出规律之外的指标异常并及时预警,帮助用户及早发现问题风险,缩短故障发现与恢复时间。
- 智能识别多类型异常
RiskSeer 指标智能监控支持多种异常类型的自动识别和监测,包括:
检测周期性数据的异常
基于数据的周期性特征,检测出潜在异常。
以下图中的场景为例,图中的数据表现出明显的周期性波动,RiskSeer 通过分析这些周期性特征,智能识别出偏离正常波动范围的异常数据点,从而实现更准确的实时预警和监控,确保系统在周期性数据场景下的异常检测更加精准。
检测合理范围内的突变异常
能够检测到数据在合理波动范围内的突变情况。
以下图中的场景为例,由于网关问题导致交易量在短时间内发生了明显的下降,尽管这一变化仍然在正常的波动范围内,但RiskSeer凭借其智能异常检测能力,成功识别出了这一潜在的风险。
自动识别无规律指标
能够自动识别出数据中无规律的指标变化情况。
以下图中的场景为例,系统在面对大量无固定模式的指标时,凭借其先进的识别算法,自动适应无规律的情况,自动调整预警阈值,从而准确地捕捉到潜在的异常事件。
检测规律行为缺失
能够识别出数据中原本规律性行为的缺失情况。
以下图中的场景为例,系统通过对历史数据的分析,识别出某一特定时间段内原本应当出现的规律行为未能如期发生。这种缺失可能预示着潜在的异常或系统故障。
- 自适应复杂环境
由于 IT 应用系统运行过程中,性能指标会不定时受到不确定的批量任务处理、不确定的生产生活日期、不确定的变更升级、不确定的数据中断等随机因素的影响,进而影响预测指标的准确性。RiskSeer 通过技术积累具备多种指标特殊性的智能自适应能力,包括:
自适应无规律漂移
对规律事件的发生时间无规律漂移情况自适应,提升预警精准度。
以下图中的场景为例,由于跑批业务的时间不固定产生了指标规律事件的无规律漂移,RiskSeer 智能识别并自适应此类情况,从而更精准实时预测指标上下界阈值的范围。
自适应特殊日期
通过预配置特殊日期(周末、长假、产品发布日等),自适应特殊日期产生的合理指标量波动,提升预警精准度。
以下图中的场景为例,在春节等长假期中,业务系统的指标量会受用户使用情况影响,逐步降低或抬升,RiskSeer 能够基于预设的假期范围,动态预测指标上下界阈值的范围,消除潜在的预警误报。
自适应指标剧变
预测算法能够快速自适应变更或升级导致的指标剧变,降低预警的误报率。
以下图中的场景为例,因配置变更,业务系统接入全量业务后指标量剧烈变化,RiskSeer 在一天时间内快速适应新的指标水位,并实时动态预测指标上下界阈值的范围,消除潜在的预警误报。
自适应数据缺失
自动识别历史数据中的缺失、中断,并智能容忍其中的数据空白点,避免对指标上下界阈值的实时预测产生影响,提升预警精准度。
以下图中的场景为例,因网络变更导致监控缺失四个小时的指标数据,监控数据恢复后,预测算法能够自动恢复对指标上下界阈值的实时预测,且预测结果不受数据缺失的影响。
- 高性能、高精准度
- 指标检测性能:通过高性能的智能分析算法,RiskSeer 在 8C32G 的计算资源条件下可以同时完成不少于 4000 条指标的并行智能分析,实时动态生成指标上下界阈值。
- 指标检测精准度:经实际项目测算的故障预警准确率不低于 92%。
落地实践
在 DeepFlow & RiskSeer 应用指标智能监控预警方案中,DeepFlow 利用零侵扰技术进行应用调用指标采集,RiskSeer利用其时序智能技术提取指标数据中的历史趋势、历史规律,实时预测指标的上/下界阈值,并对连续多次的超阈值事件进行分级、归类、预警。
指标选取
应用调用的 RED 指标(Rate、Error、Duration)是反映应用服务质量的北极星指标,在应用指标智能监控预警方案的落地实践中同样选取 DeepFlow 采集的应用调用的 RED 指标数据作为 RiskSeer 智能指标分析、监测预警的首要目标,其中涉及:
- 请求速率——监测预警业务请求量的异常变化;
- 响应速率——监测预警业务响应量的异常变化;
- 客户端异常比例——监测预警由客户端原因导致的应用服务失败;
- 服务端异常比例——监测预警由服务端原因导致的应用服务失败;
- 平均时延——监测预警应用服务响应时延的普遍异常;
- 最大时延——监测预警应用服务响应时延的极端异常。
智能基线阈值
RiskSeer自适应指标类型,对速率类(请求速率、响应速率)的指标,根据历史指标趋势动态预测实时的上界阈值、下界阈值;对时延类指标(平均时延、最大时延)、错误类指标(客户端异常比例、服务端异常比例),根据历史指标趋势动态预测实时的上界阈值。
智能触发告警
RiskSeer 根据智能基线算法实时生成的指标阈值,判断当前越过阈值上下界的事件,计算异常程度,并根据告警触发算法判断是否产生告警事件,达到对指标异常精准告警的目标。
总结及展望
DeepFlow & RiskSeer 应用指标智能监控预警方案,充分结合可观测性与 AI 的各自优势,实现了海量可观测性数据的自动化智能监控和精准告警。通过该方案,IT 应用系统的监控人员无需繁琐地手动配置告警规则,无需担心告警规则设置是否合理,无需担心系统动态变化后的告警规则失效问题,仅需将一切与告警监控的操作交给 AI,由 AI 智能化监控指标、预测故障、触发告警,完全解放监控预警的生产力。
除了应用调用指标之外,DeepFlow 可观测性数据湖还蕴含更多的 Metrics、Trace、Logging、Profiling、Events 等各类型观测数据,云杉网络与必示科技还将继续携手用更多 AI 能力挖掘可观测性的数据矿山,并在 OpenAIOps 社区平台上进行合作与创新,稳步实现根因诊断、专家建议、故障自愈,最终为用户提供端到端的智能可观测性运维方案,推动 AIOps 生态繁荣发展。
参考资料:
[1] (SIGCOMM 2023)Network-Centric Distributed Tracing with DeepFlow: Troubleshooting Your Microservices in Zero Code]:
https://dl.acm.org/doi/10.1145/3603269.3604823
[2] DeepFlow 分布式调用链追踪原理三分钟短视频: https://www.bilibili.com/video/BV1ZC411E7ad/
[3] DeepFlow 分布式调用链追踪火焰图三分钟短视频: https://www.bilibili.com/video/BV1di421k7JE/