写点什么

智能运维系列(一)| AIOps 的崛起与实践

  • 2020-06-24
  • 本文字数:2938 字

    阅读完需:约 10 分钟

智能运维系列(一)| AIOps的崛起与实践

专题简介:智能运维(AIOps),根据 Gartner 的最新阐释,意指整合大数据和机器学习能力,通过松耦合、可扩展方式去提取和分析数据量(volume)、种类(variety)和速度(velocity)这三个维度不断增长的 IT 数据,进而为 IT 运维管理产品提供支撑。在此,微众银行智能运维团队根据一线工作的实践经验与心得体会,特别撰写了《智能运维系列》文章,敬请持续关注。


IT 运维其实早在科技公司创建之初即存在了,只是一开始与其说是运维,不如说是网管与电脑维修。公司与电脑有关的都在 IT 运维的工作范围内。随着科技的进步,IT 的岗位划分也越来越细致,才逐渐形成了与现在相似的对业务连续性直接负责的 IT 运维职能部门。而近 10 年随着各种技术浪潮的爆发,IT 运维价值才逐渐显现出来。


通过如下一张图就可以看到运维发展的几个阶段,早期的手工运维,到流程化、标准化运维,再到平台化、自动化运维,最后到近十年的 DevOps(研发运营一体化)和 AIOps(智能运维)。运维发展其实和各种技术更新是密不可分的,也是各种技术重要的实验田。



图 1:IT 运维发展示意图


对于企业而言,IT 运维的价值体现在对业务稳定、运行安全和提效降本三个方面的保障与控制。近年来实体业务纷纷发展线上交易,IT 投入逐渐加大,业务的稳定与安全直接影响企业效益,IT 在效率与成本上的平衡也成为各家企业需要面对的问题。


IT 运维行业转向 DevOps 或 AIOps 已经是必然的选择。DevOps 将软件全生命周期的工具全链路打通,结合自动化、跨团队的线上协作能力,实现了快速响应、高质量交付以及持续反馈。AIOps 的落地将为企业运营和运维工作在成本、质量、效率等方面的调整提供重要支撑。


目前 AIOps 的主要应用场景有异常告警、告警收敛、故障分析、趋势预测等。


下面以几个公司的案例为例来分析 AIOps 目前在企业中的实施情况。


(一)美团业务稳定性保障平台 AIOps 实践


2019 年 6 月,在全球技术领导力峰会上,来自美团的资深技术专家宋斌从美团的即时物流业务谈起,介绍了美团面临系统稳定性方面极高的挑战:峰值流量高、瞬间峰值大、业务链路长、线上业务复杂度高、故障敏感,影响履约完成率,造成赔付和客诉。经过一年多的努力,从人工运维状态逐步转化为自动化运维,甚至在尝试使用机器学习的能力,提升运维整理效率。


在此次分享中,我们可以看到美团主要在容量评估、弹性设计、故障诊断、风险防范方面逐步建立了全面可靠的自动化可运维的系统。



图 2: 美团配送实践概览


其中在故障诊断方面既包含了故障检测,也包含了根因定位。即回答了故障长什么样,也回答了故障是什么,根因是什么。从研发人员和管理人员两个角度展示故障信息。


在核心功能上不只完成了故障收敛,还完成了链路监控和故障拓扑展示,告警升级等,同时对故障进行相对完整的标记、运营、管理、跟踪等工作。



图 3: 美团故障识别模块


在根因定位思路上即在传统的纵向分析方面进行了根因挖掘,也在调用链调用关系逐层递归的横向分析方面有所创新。



图 4: 美团故障根因分析维度


从结果上看,定位时间和故障覆盖率都很好,极大的降低了运维成本。在整个运维保障体系中,机器学习主要应用在了端到端链路监控、以及失败率监控的动态阀值上(基于 LOF 算法的异常检测),但同时也辅助以规则。



图 5: 美团故障识别收益


(二)百度 AIOps 在监控报警方面的应用场景


在 2019 年的全球架构师峰会上,百度资深研发工程师周伟/范月林介绍了百度落地 AIOps 过程中在智能异常检测和智能报警合并两个监控场景取得的收获。


如下图是百度的报警系统业务模型,在异常判断阶段,面临的挑战是模型变更频繁,算法不固定。为了解决这个问题,百度实现了算法和模型分离,迭代周期从月缩短到日。验证算法策略的平台分为了离线环境、近线环境、在线环境,使算法在一个可靠的数据环境中验证。


在通告发送阶段,由于可能面临报警风暴的挑战,需要做报警合并。百度从两个方面进行了合并,按部署架构合并和跨部署架构的合并。其中按部署架构合并主要基于配置管理系统的基础关联关系,而跨部署架构合并则依赖上下游关系和离线的策略挖掘。



图 6: 百度报警系统业务模型


从效果上看,核心的监控关键指标都有了明显提升。异常检测效果非常好,报警的短信量也大幅降低。



图 7: 百度报警优化收益


(三)微众银行在异常发现和根因定位方面的 AIOps 实践


2019 年微众银行在落地 AIOps 过程中,也使用了机器学习算法在多个功能场景中实践,取得了一定的成果。


在异常发现方面,从业务产品可用率出发,定义业务黄金指标(交易量、业务成功率、系统成功率、单位时间交易平均耗时),对黄金指标进行算法结合规则的检测。


在根因定位方面,放弃了传统的组件告警收敛专家经验的定位方法,以消息总线的消息日志为基础,基于算法生成交易链路,异常时绘制故障交易链路图,定位中断子系统,然后以中断子系统为圆心,使用知识图谱算法发散式根因挖掘。另外,历史异常事件的数据也导入知识图谱,修正知识图谱中的专家经验。从运维管理的角度进行异常识别和根因定位标记,不断迭代修订基础模型数据。



图 8: 根因分析逻辑示意图


2019 年微众银行全年异常识别准确率 96%,漏告量低于 1 笔/季度。异常通报时常较 2018 年提升 66%。从异常发生开始 5 分钟完成根因定位。异常识别和根因定位的效果都有明显改善。



图 9: 微众银行异常识别与根因定位准确率



图 10: 微众银行异常根因定位收益


从以上比较成功的 3 个案例出发,我们可以尝试总结一下目前 AIOps 在 IT 运维领域实践的几个特点:


(1) 机器学习算法落地场景首推异常指标识别。因为工程化成本低,较容易产生效果。一两个核心开发人员即可。而且一旦成功,运维人员能获得最直接的收益。


(2) 从异常指标出发,衍生到异常追溯原因的各类场景。当识别出了异常,自然希望得到答案。例如以上案例所示美团和微众银行都在根因定位上有所突破,同时都使用到了交易链路,所不同的是,美团是依靠人工管理标注完成,而微众银行使用了算法结合消息总线的日志自动产生。所以,从纯粹数据层面的机器学习逐渐过渡到逻辑层面的机器学习。


(3) 算法结合规则才能达到实际生产运维期望的效果。算法不能解决所有问题。如果要更好的解决实际运维场景的问题,算法结合规则或专家经验才是宝贵的 AIOps 落地经验。


(4) 标准化、数据仓库式的运维数据是基础,大量运维格式化基础数据是机器学习的先决条件。所以,从组织架构到运维工具都应尽量做到集中化管理。


(5) 类似容量预测或事件预测等类似预测类的场景将是 AIOps 的下一个探索方向,主动发现与预测将是 IT 运维未来需要解决的问题。


IT 技术架构从“IOE 架构”逐步走向了“互联网架构”;运维体系从 ITIL 走向 DevOps;运维平台从自动化走向了 AIOps;运维核心从关注平台走向数据资产。智能化以及数据化是未来 IT 运维的总体趋势,互联网业务的连续性保障的方方面面都将在这次 IT 运维变更中发生巨大变化。AIOps 也会在更多运维场景中发挥不可替代的作用。


本文作者


微众银行智能运维首席产品经理:王雅琪


2020-06-24 09:0019544
用户头像
陈思 InfoQ编辑

发布了 576 篇内容, 共 280.0 次阅读, 收获喜欢 1301 次。

关注

评论

发布
暂无评论
发现更多内容

一口气搞懂分库分表 12 种分片算法,大厂都在用

程序员小富

Java 分库分表 spring-boot

StarRocks 助力小红书离线数仓提效,提升百倍回刷性能!

StarRocks

数据库 大数据 数仓 湖仓一体

AlDente Pro电池寿命延长工具功能介绍 及 AlDente Pro使用教程

Rose

Mac软件 AlDente Pro破解版 AlDente Pro电池寿命延长

优秀电源工程师需要的必备技能

芯动大师

工程师 电源 优秀

有一个可以写到简历的项目,嘎嘎强!

冰河

分布式 微服务 高并发 聊天 IM即时通讯

深入理解HTTP请求的五个要点

百度搜索:蓝易云

云计算 Linux 运维 HTTP 云服务器

ARM版Win10系统下载-Windows系统下载

Rose

win10 Windows系统 win 10镜像

[自研开源] 数据集成之分批传输 v0.7

LIEN

开源 数据集成 业务融合 API对接 mydata

分享10个学习计划模板,让你的个人发展更上一层楼!

彭宏豪95

效率工具 在线白板 模板 办公软件 学习计划

数字化先行者,HAP大使招募中

明道云

编写的Snort规则不报警怎么办?

百度搜索:蓝易云

云计算 Linux 运维 云服务器 Snort

Visual Studio 2022 内置 Git 异常

雄鹿 @

Visual Studio 2022

就是这么简单,Selenium StaleElementReferenceException 异常分析与解决

霍格沃兹测试开发学社

Python中的datetime模块:轻松拿捏时间操作

霍格沃兹测试开发学社

事业-最佳实践-编码-继承组合选择

南山

最佳实践 组合模式 设计原则 组合 继承

Django数据库类库MySQLdb使用详解

百度搜索:蓝易云

django Linux 运维 云服务器 mysqldb

jprofiler安装使用教程 附jprofiler永久激活码 Mac/win

Rose

Java性能 JProfiler激活码 JProfiler 14下载

Xliff Editor for Mac 编辑和管理XLIFF文件

Rose

Mac软件 Xliff Editor XLIFF文件

Selenium报错元素不可交互,该如何解决?

霍格沃兹测试开发学社

火山引擎边缘云出席2024亚太内容分发大会,助推游戏体验全面升级

火山引擎边缘云

CDN 游戏 CDN加速 CDN带宽

ASP.NET Core 依赖注入(Ioc)

雄鹿 @

ASP.NET Core

YYDS,只用几条命令轻松搭建自己的项目管理平台jira

霍格沃兹测试开发学社

在 ASP.NET Core 引入 Autofac 增强容器

雄鹿 @

ASP.NET Core

php所有函数总结

百度搜索:蓝易云

php 云计算 Linux 运维 云服务器

使用 Amazon Bedrock + Claude 3 打造个性化智能编程助手

亚马逊云科技 (Amazon Web Services)

人工智能

单体分层应用架构剖析

疯狂架构

架构 分层架构 单体应用架构

STL算法大全

百度搜索:蓝易云

Linux 运维 云服务器 stl C+

哪里有Mac SVN管理工具 cornerstone 4破解版?

Rose

SVN管理工具 cornerstone 4 破解版 cornerstone 4许可

C++ 用户输入与数据类型详解:建立基本计算器及变量类型

小万哥

程序人生 编程语言 软件工程 C/C++ 后端开发

《出海和跨境:明道云HAP支撑全球化业务的能力白皮书》正式发布

明道云

在 ASP.NET Core 引入 Scrutor 增强依赖注入

雄鹿 @

ASP.NET Core

智能运维系列(一)| AIOps的崛起与实践_AI&大模型_王雅琪_InfoQ精选文章