AIOps 在传统行业的落地探索

640?wx_fmt=png&wxfrom=5&wx_lazy=1

本文根据2018 GOPS·深圳站裴丹博士演讲《AIOps 在传统行业的落地探索》整理

分享:裴丹
编辑:白凡

640?wx_fmt=png&wxfrom=5&wx_lazy=1

讲师介绍:裴丹博士是清华大学长聘副教授,国家青年千人。从20年前开始做运维相关工作,从分布式系统一直做到路由、运营商、wifi、互联网、企业级,最近有很大的精力在传统行业 ( 特别是金融业)智能运维上。裴博士AIOps相关领域发表100余篇学术论文。部分工作还被美国MIT Technology Review进行了报道。

1、运维行业当前发展和前景

640?wx_fmt=png

运维无处不在,未来所有的服务全都会跑在软硬件系统中,因此市场规模巨大。我之前在其它场合分享过《基于机器学习的智能运维》、《AIOps中的科研问题》、《落地生根:AIOps落地路线图》。这次主要是跟大家解答传统行业落地AIOps过程中遇到的一些困惑。

640?wx_fmt=png

这些困惑是我在半年多来跟很多合作伙伴交流的过程中遇到并总结出来的。这些行业包括金融、能源、电信、工业制造、智慧城市等。

640?wx_fmt=png

今天主要是以金融业为例来讲传统行业AIOps的落地探索。先总结一下金融业AIOps的现状:AIOps的概念还有很多不清晰之处;对如何落地AIOps还有很多困惑;不少金融机构已经在AIOps方面立项了;大部分的金融机构正在构建一个运维大数据平台;部分金融机构从自身痛点出发尝试AIOps;不少金融机构希望把AIOps作为响应国家AI战略的试验田。基于对以上现状的观察,我的结论是2018年将是金融业和传统行业尝试AIOps的元年。


2、AIOps概述及价值

640?wx_fmt=png

金融业发生的一些故障,比如说银行转帐异常、银行网银卡钱,客户无法登录银行帐户,支付宝无法登录等等。运维故障无法完全避免,重点是快速应对,不以发生故障为耻,以快速修复为荣。

640?wx_fmt=png

为什么说运维故障难以完全避免呢?运维现在面临的接入网络、数据中心网络、软件模块之间调用关系都是非常庞大、非常复杂的, 而且还在不断地发生变化。 触发运维事件的触因 (软硬件故障、软件变更、用户请求变化、恶意攻击等等)无时无刻不在发生。所以运维工作不可能好做。

640?wx_fmt=png

640?wx_fmt=png

因此,运维人现在基本上是处于“水深火热”之中,7×24小时在救火,压力很大。人少事儿多,救火、高压、背锅、如履薄冰、幸福指数低,不知道下一秒会发生什么,睡不了安稳觉,起夜率高,脑袋别在裤腰带上。

640?wx_fmt=png

为什么会这样呢?这是因为,面对目前海量的运维监控数据,如果还用传统的方法已经是难以为继了。我们面临的任务往往是时效性非常强压力非常大的任务,如故障止损,人工决策往往需要小时级的时间。 根本原因是人是不擅于在短时间内处理海量数据做出实时准确的决策的。 怎么办呢?只能通过AI来解决,只有这一条路,没有别的办法。而AIOps会给运维人员带来革命性的影响。

640?wx_fmt=png

它到底是做什么的呢?就是用AI代替缓慢易错的人力决策部分,快速给出决策,或者提前规避故障。

640?wx_fmt=png

再给一些相对详细一点的定义。 首先AIOps的生态系统分为:眼、脑、心、手。我这边的主要根据是研究“脑”这部分,也就是AIOps的“CPU”。“心”是运维专家设定的整个系统的目标,比如整个运维系统达到”稳、省、快“的效果。

“眼”是运维大数据平台。运维事件的触因(故障、变更、用户行为变化、攻击)都会反映在监控数据里, 而这些运维监控数据都被汇总在“脑”中集中处理,由AI快速决策,并有由“脑”给“手”(运维自动化系统)给出执行指令。最后这个指令发送到运维自动化系统里面,进行止损、修复、规避。

640?wx_fmt=png

通过“心脑眼手”四位一体地协作, AIOps能为业务带来“稳、省、快”的价值,极大提升运维生产力。

那AIOps发展到后来的的终极形态是什么?我认为是Autonomous IT Operations,无人值守运维。

640?wx_fmt=png

最近看了一部电影《异形:契约》,契约号飞船搭载着冬眠中的2000名乘客和15名船员,飞往一个遥远的星球,行程几十年,只有一个机器人船员。几十年的行程没有一个人醒着,中间会遇到各种各样的问题,无数的软硬件运行的问题都被无人运维自动解决。2000人的生命在几十年时间里完全交给无人值守运维。

无人值守运维有可能吗?还是有可能的。我们看一下系统发生变化的触因。软硬件故障我们可以通过故障自愈来处理;软件变更可以通过无人值守变更来处理;用户请求变化的时候可以通过自动扩缩容来处理;有恶意攻击时可以通过自动防御来处理。上面的每个技术都有技术人员在尝试了,我们只需要锲而不舍的坚持下去。无人值守运维也许乍一听起来像天方夜谭,但是几年前听起来像天方夜谭的无人车已经在逐渐变为现实了,为什么无人值守运维不可以最终变为现实呢?

640?wx_fmt=png

引用比尔盖茨说的一句话:人们总是高估未来一到两年的变化,低估未来十年的变革。因此我们不要因为一两年AIOps没有飞速落地就觉得AIOps就会半途而废,而是把眼光放到十年、二十年的尺度来看AIOps的发展。我个人最近已经做出决定要all in 到AIOps这个方向,准备退休前就做这个方向了。如果到20年之后退休的时候还没做成,我就再工作20年的时间把它做成。


3、金融业AIOps落地方向及应用示例

640?wx_fmt=png

下面讲讲我认为在金融业落地AIOps可行的落地方向和应用示例。

首先讲一下落地AIOps的理想条件。首先是要有痛点,有原动力,不能为了做AI而做AI;其次是运维大数据平台基本建立;有基础的运维自动化工具;不管做哪个场景,要可以量化评估效果,这样才知道到底AIOps有没有起到作用。

640?wx_fmt=png

要确定尝试哪些具体场景式可以这么选:希望短期内能见效的,最好在该方向要有一些科研论文并有开箱即用的算法产品;如果想一年内能见效,那么最好要有科研论文,也许尚无开箱即用的算法产品;如果想探索前沿,可以通过设立科研项目的方式来探索。下面列举清华NetMan的AIOps实验室科研成果的产品化程度,供大家落地AIOps依照上述标准来选择具体落地方向。 这些方向包含AIOps最常见的场景:故障发现、故障止损、故障修复、故障规避,不同颜色表示不同产品化程度。

640?wx_fmt=png

那么具体什么叫“开箱即用”呢?就是要用高效分布式的系统把某一具体算法实现出来,通过流式数据处理得出实时决策结果。在下图中,输入是运维大数据系统(“眼”),输出是运维自动化系统(“手”)。

640?wx_fmt=png

下面通过一个视频演示,给出一个开箱即用的产品(异常检测和异常定位)的形态。首先异常检测系统,面对形态各异的KPI曲线,如下图中的三种不同的业务曲线,不管它长成什么样的,只需把一定时间的历史数据导入,不用调节任何参数就能做自动对该KPI曲线进行异常检测。这个异常检测系统还能自动处理数据缺失,不需要人工干预就自动避免缺失数对异常检测结果的影响


640?wx_fmt=png

该异常检测系统同时还能自动检测CPU、数据库、内存等机器指标的异常。比如说在很多系统里面有跑批量业务,每天都执行,但是执行时间会有偏移,这对一般的异常检测系统都有较大的挑战,会对CPU、内存产生误报或漏报。但是我们这个系统自动就能处理。在另一种情况下,如果某一天,该进行的跑批业务没有跑,我们的系统也能自动报出来,提醒运维人员注意。

640?wx_fmt=png

综合敏感度调节:上述异常检测功能肯定无法通过朴素方法达到,需要采用较为复杂的方法。我们努力做到了系统启动时就针对具体KPI曲线自动调参。如果万一运维人员对异常程度有不同的敏感度,我们还提供了如下两种方式来调节。第一种方式就是直接拖动滚动条来调节敏感度,从而下图中绿色箭头部分不再被检测为异常。

640?wx_fmt=png

第二种调节敏感度的方式更直观:通过对异常检测结果进行反馈,系统自动根据反馈结果来调节异常检测算法参数。为了减少反馈开销,系统能够自动搜索整条曲线中与标注出的异常区间类似的多个区间。从而运维人员可以一次性标度多个区间,大幅降低标注开销。

640?wx_fmt=png

异常定位。异常检测之后,下一步要做异常定位,要知道异常发生在哪儿,从而快速止损。 比如当业务指标,即交易响应时间和交易失败数发生了变化,在屏幕的右上角就显示有一个红点,表示它已经检测出异常了。点一下红点它会告诉你定位出的异常是什么。具体而言是三台机器出了问题,反映在5个指标上,每一种指标都发生了一些突变。也就是说,当业务出现问题的时候,系统自动定位除了异常所在的计算资源及其异常的指标。我们的目标就是希望通过一个屏幕、一个页面把最有价值的信息都集中在一起,让我们的运维能够更好做。

640?wx_fmt=jpeg



4、金融业对AIOps落地的十大困惑

上面给出了一些AIOps在金融业的落地方向以及应用示例。下面针对来自金融业对落地AIOps的常见困惑给出我的解答。

640?wx_fmt=png

1、到底什么是AIOps?。我们想把AIOps作为落地AI的抓手,会不会有些宣称AIOps的产品并没有用到AI。如何甄别真假AIOps? 我这里给出如图所示的标准。

640?wx_fmt=png

2、现在尝试AIOps会不会太早,会不会成为小白鼠?事实证明现在已经有不少机构已经在立项尝试了,所以已经不早了。这边是创新技术的一个传播曲线,大家可以根据自己公司的定位和自己部门的定位,在这里面找到自己的位置。

640?wx_fmt=png

3、有很多互联网公司现在有了AIOps的案例,是不是说互联网的案例并不适用于传统行业呢?真相是好的算法可以是普适的(如我们的异常检测算法),所以要具体问题具体分析。

640?wx_fmt=png

4、是不是说一定要先做一下整体的顶层设计才开始落地呢?要不然把路走歪了怎么办,能不能现在设计出来,5年领先,10年不落伍?但是好的顶层设计肯定是需要经验丰富的AIOps人才,但是不存在这样的人才。那么做什么能够有把握肯定错不了呢?把数据标准化、自动化做好,接好大数据平台,准备好算力,从相对成熟的AIOps算法切入,组建AIOps团队并逐渐培养AIOps人才。这是AI应用的普遍规律,同样适用于AIOps。

640?wx_fmt=png

5、现在的数据不太全,等数据采集完整了再说。其实真相是不同的AIOps场景对数据的要求是不一样的,只有不断探索才真正知道什么叫做完整,否则你都不知道你缺的是什么,所以你根据目前自身的数据情况,选择一些合适的AIOps方向来落地。

640?wx_fmt=png

不如之前演示的异常定位,只需要你的业务指标的监控,比如说你的总的交易量、服务器的数据、内存的数据,这些在大多数金融机构已经有了,因此这种场景就能落地了。此外可以通过不断地尝试落地各种场景才能发现你真正缺的是什么,然后再进行完善。


6、能否完全依赖内部的软件开发人员自己搞一下新的AIOps算法?其实真相是这样的:整个AI的发展历程,它是先有大量的论文,才有落地的实践,海量的论文可能剩下几个主流的方法能用。比如说在计算机视觉、语音、NLP方面都是这样的,因此AIOps也不能突破这个历程。AIOps系统的研制本质上是科学研究,需要大量的科学实验才能研制成功。所以每一个算法在我们的实验室里面都需要有专业人才一年以上的潜心研制。所以如果要研制新算法,建议还是要与专业算法人才合作,通过合作培养提升自有AIOPs人才。

640?wx_fmt=png

7、开发人员照着论文实现一下已有的AIOps算法不就行了?真相是论文都是大浪淘沙的,在产品化的过程中往往会带来新的科研挑战,需要AIOps算法人才长期深度的投入。比如说我们产品化异常检测的时候,经历了传统方法、有监督异常检测、无监督异常检测、辅助标注、对百万级曲线进行异常检测,自动适配曲线巨变等等。每一步都有一篇发表在学术顶会上的论文,都需要一人年专业AIOps算法人才的投入,都踩过不少坑。所以开发人员照着一篇已经发表的论文来实现异常检测的话,这些坑是否都要自己再踩一遍呢,要花多少时间呢?所以建议是与专业的AIOps算法人才合作产品化。

640?wx_fmt=png

下面再就异常检测给出更多细节。在之前跟百度的一个合作中,我们从KPI中提取出多个特征,然后要求运维人员给出标注,然后在多维的特征空间里面通过随机森林自动训练异常检测器,因此运维人员就不用再自己挑选算法和参数。

640?wx_fmt=png

但是这个方法的问题是运维人员只对最重要的曲线愿意做标注,对于其它曲线不愿意做标注。因此在和阿里的合作的一篇新论文中,我们通过完全无监督的方法,用了深度生成模型来做,准确度比之前的更高。

640?wx_fmt=png

上述无监督方法准确率效果很好,但是它有一个小问题,就是它的深度生成模型训练时开销量较大。因此我们做了另外一个工作,KPI聚类我们用聚类核训练深度生成模型,之后把聚类核的模型和参数应用到同一类里的一千条、两千条曲线上进行异常检测。效果也非常不错,准确率损失很少,但是训练时间降低了10倍以上。

640?wx_fmt=png

在此引用毛主席《实践论》中的一段话“实践、认识、再实践、再认识,这种形式循环往复以至无穷,而实践和认识纸媒一循环的内容,都比较地进到了高一级的程度,这就是辩证唯物论的全部认识论,这就是辩证唯物论的知行统一观”。做AIOps也是一样,要不断地实践,不断地认识,不断迭代,才能真正落地AIOps。

640?wx_fmt=png

8、AI是不是无所不能?能不能用黑盒方法训练AIOps的算法?

640?wx_fmt=png

不是这样的。想通过各种各样的基础的机器学习的方法直接训练出算法解决运维的场景是不可能的。做AIOps要从系统的角度,把纷纭复杂的运维的场景拆解成不同的算法模块,而每个模块都是AI擅长解决的问题。因此要做AIOps,需要有一个AIOps的架构师把这个工作做好,否则拆解不好就做不好。

640?wx_fmt=png

640?wx_fmt=png

9、哪个部门做AIOps??应用、系统、网络、数据库部门感觉很难独立推动尝试AIOps。真相:AIOps基于融合的运维大数据,输出跨部门的决策建议,从已有金融IT人员选拔组建内部AIOps团队,积极实践AIOps,接受AIOps正规培训。

640?wx_fmt=png

10、运维人员接纳AIOps,会不会自己丢了工作?一二十年内还不太可能。AIOps可以改善运维人员的工作生活状态,是难得的转型AI机会,无人值守运维还需要好多年才能实现,还是要拥抱变化,抓住时代赋予的机遇。

640?wx_fmt=png

5、AIOps挑战赛

640?wx_fmt=png

我们跟高效运维社区也一起举办了AIOps挑战赛,感谢数据赞助的搜狗、腾讯游戏、Ebay、百度、阿里巴巴;感谢腾讯游戏赞助了网站建设和网站计算资源;感谢微软Azure赞助决赛计算资源;感谢华为赞助竞赛奖金。

640?wx_fmt=png我们的预赛已经结束了,决赛正在如火如荼的进行中,目前预赛排名第一的团队已经超过了82%,国内的各大高校、互联网公司、银行、运维厂商都有参与。

640?wx_fmt=png

我们5月中旬会举行这次比赛决赛前5名的现场答辩、颁奖。同时举办AIOp学术研讨会,宣讲AIOps领域已经发表的学术论文。

640?wx_fmt=png后续比赛我们会采用奥运会的模式,主办方是中国计算机学会互联网专委会,现在公开征集工业界承办方。工业界承办方要提供数据、组织线上比赛、提供计算资源和奖金。其它工作由主办方和承办方共同完成。欢迎工业界积极参与承办后续AIOps挑战赛。640?wx_fmt=png


6、AIOps未来展望

总结一下,AIOps将为各行各业的运维带来革命性的影响,其终极形态是无人值守运维。我们演示了故障发现和故障止损等应用示例,并给出了若干近期可落地AIOps场景方向。然后回答了一些传统行业落地AIOps十大困惑。最后我们也想指出,落地AIOps核心关键是AIOps人才的培养,需要传统行业在内部通过合作、尝试、探索的方式培养自己的AIOps人才,加速AIOps的落地。2018年将是传统行业AIOps的元年。

640?wx_fmt=png

最后,我要指出,无人值守运维是持久战。套用一下毛主席的《论持久战》的句式:无人值守能实现吗,答复是会实现。能够快速实现吗?答复是不能速胜,必须是持久战。这个结论是正确的吗?我认为是正确的。

640?wx_fmt=png

GOPS 2018 深圳站精彩PPT(持续更新中)

链接: https://pan.baidu.com/s/1zgOGm7CabpO6lIquNVcNkg 

密码: sp76


更多相关文章阅读

青铜到王者:AIOps 平台在腾讯的升级之路

重磅!全世界第一份 AIOps 白皮书(诚意版)独家发布

AIOps 风向标!GOPS2018深圳站实录(附白皮书及PPT)

清华裴丹:AIOps 落地路线图


谁说中国的技术大会都是华而不实?

把下面这张图甩他脸上! 


80余名顶级专家,手把手带你起飞!

覆盖 DevOps 全领域的技术,全是干货!

涵盖国内外众多行业,总有一款适合你!

国内首个 DevOps 标准官方指定发布平台!


640?wx_fmt=png


DevOps 国际峰会(DevOps International Summit,缩写:DOIS)是国内唯一的国际性 DevOps 技术峰会,由 OSCAR 联盟指导、DevOps 时代社区与高效运维社区联合主办,共邀全球80余名顶级专家畅谈 DevOps 体系与方法、过程与实践、工具与技术。


点击阅读原文,参与报名⬇️

阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页