清华教授解密AIOps,揭秘人工智能
分类:网络运维

揭秘人工智能下的搜狗智能运维实践,揭秘人工智能

搜狗以搜索和输入法为主,技术实现背后有大量的人工智能技术做支撑。搜狗运维在这样一家以人工智能技术为主的公司中,将面临哪些挑战?本文将与大家分享人工智能在运维中的实际应用,以及搜狗在智能运维方面的实践。

随着 AI 技术在各个应用领域的落地及实践,IT 运维也将迎来一个智能化运维的新时代。算法的效率提升了 AIOps 的价值,通过持续学习,智能运维将把运维人员从纷繁复杂的告警和噪音中解放出来。

一、运维工程师遭遇的三大痛点

再讲智能运维之前,我们先来看看,运维工程师常见的三大痛点:操心成本、智商不够、烦人成本

那么,基于算法的 IT 运维与自动化运维的区别是什么?在现阶段,运维中的哪些痛点适合引入人工智能技术?如何加速落地?

1.1、操心成本

所谓操心成本与相声《扔靴子》所表达的主题相似——你并不知道“第二双靴子什么时候扔下来”,同样你并不知道故障什么时候来临,所以你一直提心吊胆,惶惶不安

7×24运维,半夜经常会有收到警报的情况,运维团队负责多个模块、机器、服务、业务等等,如何保障它们的可靠性?并且每个业务都有自己的指标,响应时间、请求量、磁盘容量、网络IO等等,这些指标都可能发生异常。

目前业界一些通用的监控手段,有时会铺天盖地报警,但这些报警不一定能反应真实的情况,真是让人操碎了心

8 月 26 日下午 51CTO 在北京举办了第十四期以“Tech Neo”为主题的技术沙龙活动,进一步拓宽运维/开发人员的运维思路、激发创新能力。由清华计算机系副教授,智能运维算法专家裴丹为大家分享主题为“智能运维如何落地”的精彩演讲。

1.2、智商不够

当运维过程中遇到比较复杂的故障需要处理的时候,不能很快的找到出现故障的根源,很好地进行故障定位,感觉智商不够用。

图片 1

1.3、烦人成本

在搜狗内部有一条明文规定,如果运维工程师不做运维开发,不予升职。所以搜狗的运维经理除了履行保障线上可靠性职责的同时还要做自动化研发。因为职责在身,线上一旦出现问题,无论大小,运维人员是首先被问询的,所以运维人员最容易被打扰。

可做研发大家都知道,是需要整块时间才能够保证效率且减少出错。这样一来,上班时间基本上不会有大块时间来做研发,这样的状况真的很烦人。

在演讲开始,裴丹教授通过运维背景介绍,普世化智能运维关键技术,意在让所有公司都能用上最好的智能运维技术。裴丹教授认为,解决智能运维普世化的问题在数据、算法、算力、人才四方面。

二、面对痛点 用“智能”来化解

针对这三大做运维最基本的痛点,搜狗运维选择用“智能”来化解:

  • 针对操心成本,是智能熔断

  • 针对智商不够用的情况,是智能故障定位

  • 针对烦人成本,是智能问答机器人“维秘”

第二部分是分解定义智能运维中的关键技术,通过分解关键技术来定义科研问题。

2.1、智能熔断的思路

作为运维人员所要面临的问题,往往是一张以时间为横轴的时序图,纵轴是响应时间、CPU占有率、网络IO、磁盘IO等一系列指标,这样的指标每个节点或机器都有一二十个。如果有上万台机器,上万个节点,那么就会有一百万张时序图,工程师需要对每张图做智能监控, 当发生异常,随时上报。

在股票、医学领域,基于时间轴的数据监控已被广泛应用。股市利用数据监控预测股票涨跌,医学可以利用数据监控预测疾病的发生时间,这些特点与运维有高度的相似性。

运维领域也是以时间轴为纬度分析,目前有很多监控和分析的工具,最简单如设定一个固定的阈值或者周同比,但这些工具还不够智能。

智能熔断系统。目前,搜狗运维正在研发智能熔断系统,是为应对操心成本而生,针对故障的根本原因进行分析和故障预测。

故障的原因有二

1、代码变更或上线,这类的故障非常多,而且大多都是人为造成的 ,现在基本上可以实现智能上线平台做自动上线,完全自主。

2、就是机房、网络和硬件等。

当面对自主上线的情况,如何保证平台的稳定?

下图是智能熔断的实现原理,搜狗引入熔断机制,当某些指标有发生上线动作、发生异动的时候,系统自动判断并做熔断,比如做停止或者回滚操作。并和一些其他的智能设备相结合,如手机上可操作熔断、停止及回滚等功能。这个系统能解决大部分问题,如环境、代码、人为误操作等等。

还有一个问题,就是一些研发人员水平不高,写出的代码在上线的瞬间,指标出现异常,但重启一段时间就好了。同时研发人员表示,当前没有精力去处理,暂时忽略。面对这种情况,就要引入更深的人工智能话题,要对异常进行判断,是已忽视的正常异常,还是需要处理的异常,这里就涉及到对故障点分类的问题。

裴丹老师指出的科研问题要求分别为:

2.2、智能故障定位

搜狗搜索引擎的架构非常复杂,如下图只是架构的冰山一角。在如此复杂的前后连接关系的情况下,当故障发生时,如何快速故障定位、如何减少用时、如何判断报警的根本原因呢?

搜狗的做法是把问题抽离成一个规则的模板,即一个规则的集合,然后基于特定业务架构图去分析,最终定位故障具体原因。

大致的算法是每一个探针的请求都带一个ID,这个ID在各个模块都是打通的。运维工程师分析这个请求的ID在每个模块里面的具体表现,根据这些规则模板看它是否命中设定规则模板,然后定位系统,再根据这些规则模板的命中情况做一个决策,将故障定位。甚至可以定位它是属于哪个模块的哪个节点,这样就可以快速的去处理这个故障。

如下图,右上角是各种模板命中的情况,根据命中情况做最终的判断。

如果熔断系统是人工智能的话,故障定位就是人肉智能,可以看到核心功能都是由人肉智能编纂出来的。每当出现一类问题,就编入知识库和故障分析模块,避免下一个同样的故障发生。

但实际情况是,大家在操作某一个模块时, 不一定会去看之前存在的问题和解决方案。搜狗的做法是把这些问题与知识固化到系统里,让机器人发挥作用,如上图的最终结果展示,包括Web端和手机端,都可对接一些故障问题。

清晰输入,数据可获得。 清晰输出,输出目标切实可行。 有 high-level 的技术路线图。 有参考文献。 非智能运维领域的学术界能理解、能解决。

2.3、智能问答机器人“维秘”

这是一个问答系统,已在搜狗内部开始内测,也是为了解决运维的第三个痛点——烦人成本。运维工程师每天需要解答各种各样的问题,需要花费大量的琐碎时间,而这个工作完全可以交由智能机器人来解决。

智能问答机器人“维秘”

维密运维机器人,构建在搜狗内部的即时通讯工具中,类似

搜狗以搜索和输入法为主,技术实现背后有大量的人工智能技术做支撑。搜狗运维在这...

裴丹教授还指出,Gartner报告中关于智能运维的问题描述太宽泛。智能运维如何做好?裴丹教授认为,机器学习本身有很多成熟的算法和系统,及其大量的优秀的开源工具。

如果成功的将机器学习应用到运维之中,还需要以下三个方面的支持:

数据。互联网应用本身具有海量的日志。需要做优化存储。 数据不够还需要自主生成。 标注的数据。日常运维工作会产生标注的数据。 比如出了一次事件后,运维工程师会记录下过程, 这个过程会反馈到系统之中, 反过来提升运维水平。 应用。运维工程师是智能运维系统的用户。 用户使用过程发现的问题可以对智能系统的优化起正向反馈作用。

裴丹教授通过与百度运维、搜索部门的合作,分享了智能运维的三个案例,包括异常检测、瓶颈分析以及智能熔断。第一个案例是基于机器学习的 KPI 自动化异常检测。

图片 2

上图表示运维人员判断 KPI 曲线的异常并标注出来, 系统对标注的特征数据进行学习 。这是典型的监督式学习,需要高效的标注工具来节省运维人员的时间: 如可以拖拽,放大等方式。

最后,裴丹教授在通过构建 KPI 异常检测系统中分享了相关的实践与挑战等相关的解决方案。以下为演讲实录:

智能运维的发展历程

图片 3

我们大家都知道,在运维发展的过程中,最早出现的是手工运维;在大量的自动化脚本产生后,就有了自动化的运维;后来又出现了 DevOps 和智能运维。

在运维的过程中,涉及到的步骤可以概括为:产生海量的监测日志,进行分析决策,并通过自动化的脚本进行控制。

运维的发展过程,主要是分析决策步骤发生了变化:起初,由人工决策分析;后来,在采集数据的基础上,使用自动化的脚本进行决策分析;最后,用机器学习方法做决策分析。

图片 4

根据 Gartner Report,智能运维相关的技术产业处于上升期。2016 年,AIOps 的部署率低于 5%,Gartner 预计 2019 年 AIOps 的全球部署率可以达到 25%。所以,AIOps 的前景一片光明。

如果 AIOps 普遍部署之后会是什么样的呢?现在做运维的同学们会变成怎样?

从机器的角度,基础性、重复性的运维工作都交给计算机来做了;同时,机器通过机器学习算法为复杂的问题提供决策的建议,然后向运维专家学习解决复杂问题的思路。

从运维专家的角度,运维专家主要处理运维过程中的难题,同时基于机器建议给出决策和训练机器徒弟。

运维工程师将逐渐转型为大数据工程师,主要负责开发数据采集程序以及自动化执行脚本,负责搭建大数据基础架构,同时高效实现基于机器学习的算法。

机器学习科学家主要负责 AI 的落地应用,智能运维领域相对于其他 AI 应用领域的优势在于,我们不仅有大量的应用数据,而且有实际的应用场景和部署环境。

因此,人工智能在计算机视觉、自然语言理解、语音识别之外,又多了一个落地应用——这是一座尚未开采的金矿。

智能运维科研门槛高-工业界

一般有“前景光明”、“前途光明”这些词的时候,下面跟着的就是“道路曲折”。实际上,智能运维是一个门槛很高的工作。

图片 5

为什么呢?因为智能运维需要三方面的知识:

我们要熟悉应用的行业,比如互联网、电信或者相对传统的行业,如金融、电力等等。 我们要熟悉运维相关的场景,包括异常检测、故障预测、瓶颈分析、容量预测等。 虽然工业界熟悉运维行业和场景,熟悉生产实践中的挑战,也有数据。但是,工业界并不熟悉整个智能运维中最重要的部分——如何把实际问题转化为算法问题(后面会讲到如何把实践中的难题分解成多个算法并逐个解决)。

同时,工业界也不太熟悉查阅科研文献,特别是跨行业的文献。因此,智能运维是一个需要三方面领域知识结合的高门槛领域。

在智能运维文献里有几十种常见的基础算法。但是,工业界并不熟悉这些算法。所以,我们利用微信公众号介绍这些算法。

下面我将介绍一个例子——通过机器学习方法提升视频流媒体的用户体验和观看时长。

图片 6

这是一位 CMU 教授的系列文章,这位教授在一个做视频分发的创业公司做了若干工作。

2011 年,他在学术界发表了一篇文章,这一工作比较简单,主要为了提升用户观看流媒体的体验,其中用到了相关分析、线性回归、信息增益等简单算法。

2013 年,该教授基于网络行为数据和性能数据,使用决策树方法预测用户的观看时长。该教授于 2017 年发表了一篇新的文章,将视频质量的实时优化问题转化为一种基础的强化学习问题,并使用上限置信区间算法有效解决了这一问题。

智能运维科研门槛高-学术界

在学术界中,很少有人做智能运维方向。这是因为,对于学术界来说,进入到智能运维这一科研领域具有很强的挑战性。为什么呢?

图片 7

虽然学术界研究人员的算法能力相对较强,但是他们往往不熟悉行业和运维领域的相关知识。而智能运维处于三个领域的交叉部分。这就导致智能运维的门槛比较高,需要花大量的时间和精力才能进入智能运维领域。

图片 8

前面讲了如何降低工业界进入智能运维的门槛。同时,我也做了一些工作,以降低学术界进入智能运维领域的门槛。例如,我应邀在《中国计算机学会通讯》上发表文章,向学术界的同行介绍智能运维中的科研问题。

但是,仅仅宣传是远远不够的,我们还要实践。去年,我在第一届 APMCon 会议上做了报告,讲述了当时和百度合作的三个案例,包括异常检测、瓶颈分析以及智能熔断。

这种公开的宣传给我自己带来了很多新的合作。除了与百度的合作,我们清华实验室相继与滴滴、搜狗、阿里巴巴、腾讯签署了正式的合作协议。

这验证我的在去年我在 APMCon 上演讲的观点:工业界可以获得算法层面的深度支持,学术界可以获得现实世界的前沿问题和数据,有利于发表论文和申请国家项目。

工业界-学术界合作

1.0:一对一交流合作

但是,现在这种工业界跟学术界的合作方式,还处于1.0阶段,即一对一的交流。

图片 9

在这个过程中,我们遇到了诸多挑战:

交流合作效率低,见效慢。比如说我是这个教授,我跟 A 公司讨论一下,再跟 B 公司讨论一下。很多情况下,不同公司遇到的问题都是类似的,比如异常检测。但是,我需要跟每个公司梳理一遍这些问题。

C 公司可能不知道我,就找另外一位教授,他依然需要梳理这些问题。这就大大降低了交流合作的效率。我们知道,科研最难的部分,就是把一个实践中的问题定义好。当定义好问题之后,只要数据准备好,其他问题都可以迎刃而解。

智能运维算法不幸成了特权。因为很少有教授愿意去做这种一对一交流,而愿意或有渠道和学校科研人员沟通交流的公司也不多。

这就导致,在国外,只有少数大公司和教授才能合作。比如,目前只有 Google、 Microsoft、Linkedin、Facebook、雅虎等大公司发表过智能运维有关的论文。

涉及知识产权,不符合开源大趋势。因为一对一的合作需要签署涉及知识产权的协议,不符合开源的大趋势。

2.0:开源开放

一对一交流效率低,那具体应该怎么做呢?我们希望拥抱开源开放的文化,形成工业界与学术界合作的 2.0。

图片 10

开源开放的大趋势已经对工业界和学术界产生了巨大的影响。大家耳熟能详的 Hadoop、Ecosystem、TensorFlow 等,都是开源开放的产物。

在算法层面,当前有 arXiv 共享算法(论文)平台,和 Github 代码共享;在数据层面,ImageNet 等数据共享平台对机器学习算法的研究起到了巨大的推动作用;在计算能力层面,各大公司都建立了 AI 云;在人才层面,我们也可以看到,学术界和工业界的人才流动比原来顺畅多了。

所以,我们的基本思路是,希望能够建立智能运维的问题库。具体的,我们尝试把运维的常见问题梳理出来,并存储到一个问题库里。

这样的话,对于缺乏智能运维背景知识的科研人员,在问题的输入、输出、数据集齐全的前提下,可以很容易地着手解决问题库中的科研问题。对于做运维实践的工业界的同学们,当遇到实际的问题时,可以查询问题库中的解决方案。

这一思路受到了斯坦福教授李飞飞的影响。她最近在宣传普世化 AI 的思路——让所有人都可以使用 AI。李飞飞教授建立的 ImageNet 上面有 1000 多万张图片的分类标注数据。

在 2012 年 Hinton 教授提出了一种基于 CNN 的图片分类算法,取得比以往最好结果高好几个百分点的结果, 引起了深度学习的复兴。

现在,她同时兼任 Google 机器学习部门的负责人。她在宣传普世化 AI 思路时,提到普世化有四个基本点:计算能力、数据、算法、人才。

这四个基本点跟我们要落地智能运维所遇到的挑战是一样的。 因为我们也需要用到机器学习和 AI 的技术来解决智能运维中的挑战性问题。

图片 11

除了问题库,学术界还需要数据集。此外,工业界最好能提供云计算资源,让学术界提供的算法在云端跑。数据公开后,学术界可以公布训练好的算法,工业界就可以直接使用这些算法。

在人才方面,工业界可以与学术界合作。同时,那些参与我们的智能运维算法大赛且排名靠前的学生,也可以成为工业界的人才储备。最终,我们希望所有的公司都能用上最好的智能运维算法。

分解定义智能运维中的科研问题

下面分解定义一下智能运维中的科研问题,由于时间关系,我只能概述算法的特性。

为什么我们要定义科研问题呢?对于科研工作者来说,类似 Gartner Report 中列举的智能运维问题太宽泛。

首先,科研问题需要清晰的输入,并且数据是可以获得的;其次,科研问题要有清晰的输出,并且输出的目标要切实可行;再次,科研问题要有高层面的技术路线图,以及参考文献;最后,非智能运维领域的学术界要能理解该科研问题。

图片 12

这是我们已经梳理出来的一些科研问题,我将用后面的时间来解释一下这些算法。

这些算法分为三种:

本文由威尼斯手机娱乐官网发布于网络运维,转载请注明出处:清华教授解密AIOps,揭秘人工智能

上一篇:威尼斯手机娱乐官网真实还是幻灭,企业内部如 下一篇:威尼斯手机娱乐官网:ELK系统一分配析Nginx日志并
猜你喜欢
热门排行
精彩图文