裴丹:智能运维算法需要工业界

学术界密切合作实现技术突破

■商灏

清华的计算机系,国内一流,而其智能运维研究,据业内人士透露,近两年已超越美国同行,为世界最顶尖水平。本篇可能是国内财经媒体首次触及此类最前端科技应用的报道。

清华大学计算机系副教授裴丹博士,曾在美国AT&T研究院学习和工作,AT&T研究院前身是贝尔实验室的一部分,大概有200个博士,有C++发明者、防火墙之父,裴教授在此发表了23项运维相关的专利。之后他回到清华继续从事运维科研。

裴教授所在的清华大学NetMan实验室,做的科研基本上都是跟运维相关。他认为,工业界、学术界应该在运维领域里面能够密切合作,各取所需。工业界有很多实际问题,有很多经验,也有实际的数据,学术界有时间,有算法,有学生,大家一起结合,这样就会产生很好的效果。

作为一位运维专家,裴教授曾在美国一个30万人的大公司里面主要通过大数据分析的方法做运维,是基于大数据技术管理网络和应用的性能,各种网络协议、IPTV、Video等等;回到清华做科研后,开设的也是网络性能管理/应用性能管理相关的课程,所有的科研都是跟运维相关的,在国内工业界的合作伙伴包括百度、阿里、腾讯、滴滴、搜狗、微众银行、华为等。

智能运维现在已呈现一个很清晰的趋势:从基于规则的智能运维自动化逐渐转为基于机器学习。那么,智能运维在中国落地和发展所必须面对的挑战是什么?思路是什么?要解决哪些关键问题?

智能运维

今后几年将有长足发展

裴丹说,智能运维是指在互联网中的大型分布式系统不断处理海量用户体验、性能、稳定性、安全事件,从而达到如下效果:能够准确地复现并诊断过去发生的事件;能够及时准确地检测、诊断当前正在发生的事件,并确定最适合的应对方案;能够相对准确地规划和预测将来可能发生的事件。

由此可以看出,智能运维是人工智能(机器学习)、互联网运维领域知识、工程开发的交叉领域,三者缺一不可。

裴丹介绍:智能运维常用到的机器学习技术包括相关性分析、回归、关联分析、聚类、决策树、随机森林、支持向量机、隐氏马尔科夫、卷积神经网络、LSTM(Long Short Term Memory) 等等。这些算法在各种(开源或闭源的)工具集中都有现成的代码实现。智能运维的一个主要挑战是根据具体需求评判应用哪些机器学习算法,并适配或改造。

基于如上机器学习技术的具体智能运维技术包括:

1.面向历史事件的: 批量根因分析、瓶颈分析、热点分析等;2.面向实时事件的: KPI异常检测、日志异常监测、事件关联关系挖掘、报警聚合、快速止损、故障根因分析、止损建议分析;3.面向未来的:配置管理、容量预测、趋势预测、故障预测、热点预测等。

智能运维呈现怎样的发展趋势?其与APM(应用性能监控),操作系统性能监控,数据库监控,网络监控等技术是怎样的关系?裴丹称,智能运维正在经历由“基于人为指定规则”到“基于机器学习”的转变,我们将来会看到越来越多的科研成果和实际系统采用机器学习算法做为基础工具。目前机器学习在一个领域取得广泛成功有几个要素:可用的开源机器学习系统、实际应用场景、大量数据、大量标注,而智能运维恰好具备这几类要素。所以,他觉得基于机器学习的智能运维在今后几年会取得长足的进展。他强调,这些基于机器学习的智能运维技术是APM(应用性能监控),操作系统性能监控,数据库监控,网络监控等技术的底层基础技术,因此智能运维的发展会大大促使上述领域的发展。

自2016年以来运维行业蓬勃发展,新技术大规模推广,如容器与微服务,配置管理工具,DevOps,SRE这样的概念和思想的落地,还有很多运维方向的公司都拿到了大手笔的融资,怎样看当前运维行业的发展?

裴丹说:首先,上述新概念和思想的落地是运维行业的大好事儿,这标志着运维行业已经逐渐脱离了人工和经验(dark arts),而转向一个真正基于技术的行业。容器和微服务的不断落地,会使得一些过去可行的技术(比如基于人工置顶规则的根因分析)遇到瓶颈,需要新的智能运维技术来适应容器和微服务等底层技术的更新。同时,不少运维方向的公司都拿到大额融资,把大公司的运维系统及技术提供给中小企业使用,这也是一件大好事。更多的企业在应用运维技术的生产实践中,会不断产生新的挑战,相应地会有新的技术和解决方案提出来,会对整个智能运维行业的发展产生强烈的促进作用。

他认为,用发展的眼光看,未来SRE这一职位除了目前强调的互联网运维领域知识、工程开发的结合以外,也会逐渐强调机器学习技术的应用。

裴丹还向笔者介绍了智能运维中,运维工作人员与机器的分工。他说,机器将成为运维人员的高效可靠助手,逐渐替代人力完成基础性和重复性的基层运维工作。对于较为复杂的运维问题,通过不断向运维专家学习,从而向运维人员自动提供决策建议。

他认为,将来的智能运维人员可能主要有三种:经验丰富的运维专家;熟悉运维场景的机器学习专家;智能运维系统开发者。

裴丹曾在美国做过很长时间的运维工作,对于中美运维行业发展的差别,他的看法是,总体来说,美国运维行业在运维理念和智能运维技术的创新比国内要多一些。

首先,美国的运维行业工作历史悠久,AT&T电信网络的运维在几十年前就开始了,并且依赖AT&T的科学家们,发明了很多智能运维算法,发表在计算机网络领域的顶级会议(如ACM SIGCOMM)和期刊(如IEEE/ACM Transactions on Networking)中,并引发了学术界的深度参与,这些算法的核心思想有不少在现代互联网中仍然适用。

互联网兴起后,大型互联网公司在生产实践中不断深挖运维问题的根源,提出或深入实践了微服务、容器、DevOps 等先进理念。国内运维业总体上来说还处于应用已有先进技术的阶段,但是在一些局部的技术点上(比如普适异常检测技术)也走在了世界的前列。

工业界和学术界应密切合作实现技术突破

展望未来几年的运维领域的技术发展,裴丹认为:在国际范围内,越来越多的先进机器学习技术会被应用到运维领域。一些智能运维的关键技术,会逐渐通过工业界和学术界的密切合作被突破,比如异常检测、异常定位、异常事件关联等。更多的预测型的智能运维技术会被提出并实际应用,比如故障预测、热点预测、容量预测等。

对国内的运维人员的发展,裴丹提出了几点建议:除了提升代码开发能力,希望国内运维人员有意识地提升应用机器学习技术的能力,并不断实践。国际上“基于机器学习的智能运维”的实践也只是刚刚兴起,因此,就像中国的人工智能被认为有可能实现对美国人工智能的弯道超车一样,裴丹说他相信国内的运维行业只要足够重视并不断尝试实践,完全有可能在“基于机器学习的智能运维领域”实现对美国运维业的弯道超车。

关于智能运维技术如何落地的问题,裴丹说,在目前这个阶段,智能运维科研想要继续往前推进并取得更好的成果,需要把智能运维里的一些关键算法定义好、分解好。这是智能运维落地的一个关键步骤和手段。

他表示,现在智能运维很热门、很火爆,大家都感兴趣。但智能运维落地的核心挑战是:从工业界的角度,我们有数据、有应用,但是缺乏一些算法和经验;从学术界的角度,我们有不少理论算法,但是缺乏实际的数据以支持科学研究,也不熟悉运维的场景。“尽管我们已经在工业界和学术界的合作方面有了很多实践,但我切身感受到,相对来说,这种一对一的交流效率比较低,且见效慢,特别不符合当前的开源开放的趋势。”

因此,裴丹提出的解决思路是,以科研问题为导向,将我们在智能运维领域需要解决的一系列挑战性的问题,定义成切实可行的科研问题。这样,就有明确的输入和输出。在这种情况下,如果我们的企业能够拥抱开源开放的趋势,把数据开源出来,就能让学术界更多的研究人员参与到研究智能运维有关的算法中来。

从智能运维发展历程看,最早出现的是手工运维;在大量的自动化脚本产生后,就有了自动化的运维;后来又出现了DevOps和智能运维。在运维的过程中,涉及到的步骤可以概括为:产生海量的监测日志,进行分析决策,并通过自动化的脚本进行控制。运维的发展过程,主要是分析决策步骤发生了变化:起初,由人工决策分析;后来,在采集数据的基础上,使用自动化的脚本进行决策分析;最后,用机器学习方法做决策分析。

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

如果AIOps普遍部署之后会是什么样的?

裴丹分析说,从机器的角度来看,基础性、重复性的运维工作现在都交给计算机来做了;同时,机器通过机器学习算法为复杂的问题提供决策的建议,然后向运维专家学习解决复杂问题的思路。从运维专家的角度看,运维专家主要处理运维过程中的难题,同时基于机器建议给出决策和训练机器徒弟。运维工程师将逐渐转型为大数据工程师,主要负责开发数据采集程序以及自动化执行脚本,负责搭建大数据基础架构,同时高效实现基于机器学习的算法。机器学习科学家主要负责AI的落地应用。智能运维领域相对于其它AI应用领域的优势在于,我们不仅有大量的应用数据,而且有实际的应用场景和部署环境。因此,人工智能在计算机视觉、自然语言理解、语音识别之外,又多了一个落地应用——这是一座尚未开采的金矿。

裴丹说,智能运维科研门槛高。

从工业界的角度看,因为智能运维需要三方面的知识:第一,要熟悉应用的行业,比如说互联网、电信或者相对传统的行业,如金融、电力等等;第二,要熟悉运维相关的场景,包括异常检测、故障预测、瓶颈分析、容量预测等;第三,虽然工业界熟悉运维行业和场景,熟悉生产实践中的挑战,也有数据。但是,工业界并不熟悉整个智能运维中最重要的部分——如何把实际问题转化为算法问题(后面会讲到如何把实践中的难题分解成多个算法并逐个解决)。同时,工业界也不太熟悉查阅科研文献,特别是跨行业的文献。因此,智能运维是一个需要三方面领域知识结合的高门槛领域。

所以,裴教授和他的团队正通过自己的一些努力,来降低工业界部署智能运维的门槛。比如,清华的实验室运营了一个微信公众号,叫做“智能运维前沿”。基本上两三周推出一篇公众号文章,介绍世界范围内智能运维的前沿进展。

智能运维算法

需要在实践中更好落地

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

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

在推动降低工业界进入智能运维的门槛的同时,裴丹的团队也在努力推动降低学术界进入智能运维领域的门槛。他还曾应邀在《中国计算机学会通讯》上发表文章,向学术界的同行介绍智能运维中的科研问题。但仅仅宣传是远远不够的,还要实践。裴丹在第一届APMCon会议(由听云、极客邦科技与InfoQ联合主办的全球高水准APM技术盛会)上发表学术演讲,阐述了当时和百度合作的三个案例,包括异常检测、瓶颈分析以及智能熔断。这种公开的宣传带来了很多新的合作。除了与百度的合作,清华实验室相继与滴滴、搜狗、阿里巴巴、腾讯签署了正式的合作协议。他认为这验证了他的一个观点:工业界可以获得算法层面的深度支持,学术界可以获得现实世界的前沿问题和数据,有利于发表论文和申请国家项目。

谈到工业界与学术界在智能运维方面的合作,裴丹表示,现在工业界跟学术界的合作方式,还处于1.0阶段,即一对一的交流。在这个过程中,遇到了诸多挑战:

1.交流合作效率低,见效慢。2.智能运维算法不幸成了特权。3.涉及知识产权,不符合开源大趋势。

在他看来,开源开放的大趋势已经对工业界和学术界产生了巨大的影响。大家耳熟能详的Hadoop、Ecosystem、TensorFlow等,都是开源开放的产物。在算法层面,当前有arXiv共享算法(论文)平台和Github代码共享;在数据层面,ImageNet等数据共享平台对机器学习算法的研究起到了巨大的推动作用;在计算能力层面,各大公司都建立了AI云;在人才层面,我们也可以看到,学术界和工业界的人才流动比原来顺畅多了。

所以,裴丹说,他的基本思路是,希望能够建立智能运维的问题库。“我们尝试把运维的常见问题梳理出来,并存储到一个问题库里。这样的话,对于缺乏智能运维背景知识的科研人员,在问题的输入、输出、数据集齐全的前提下,可以很容易地着手解决问题库中的科研问题。对于做运维实践的工业界的同学们,当遇到实际的问题时,可以查询问题库中的解决方案。”

裴丹的这一思路受到了斯坦福教授李飞飞的影响。李飞飞最近在宣传普世化AI的思路——让所有人都可以使用AI,在她建立的 ImageNet上面有1000多万张图片的分类标注数据。在2012年Hinton教授提出了一种基于CNN的图片分类算法,取得比以往最好结果高好几个百分点的结果, 引起了深度学习的复兴。现在,她同时兼任Google机器学习部门的负责人。她在宣传普世化AI思路时,提到普世化有四个基本点:计算能力、数据、算法、人才。这四个基本点跟裴丹他们要落地智能运维所遇到的挑战是一样的。因为他们也需要用到机器学习和AI的技术来解决智能运维中的挑战性问题。

裴丹说,智能运维本身前景非常光明,因为它具备丰富的数据和应用场景,将极大提高智能运维领域的生产力,也是AI领域尚未充分开采的金库。智能运维需要工业界和学术界的密切合作,但是目前仍只限于一对一相对低效的合作,少数公司和少数教授的特权不符合我们大的开源开放的趋势。我们的解决思路就是以科研问题为导向, 从日常工作中找到相关的问题,然后把这些问题分解定义成切实可行的科研问题, 并汇总成智能运维的科研问题库。同时, 工业界能够提供一些脱敏数据作为评测数据集,这样学术界就可以下载数据,并贡献算法。裴丹的实验室NetMan已经在运营一个“智能运维算法竞赛”的网站,汇总智能运维的科研问题库,提供数据下载,并成功举办了首届 AIOps挑战赛。该届挑战赛由美国eBay公司、搜狗、腾讯、阿里、百度等公司提供了脱敏的运维数据, 吸引了几十支队伍正式参赛,并取得了不错的成绩。

在智能运维的领域,裴教授的团队从去年就开始推动智能运维算法在实践中的落地,他相信只要有更多的学术界和工业界的人士参与进来,一定能推动智能运维算法在实践中更好落地。

责任编辑:张国帅

ccf 智能运维 裴丹_裴丹:智能运维算法需要工业界相关推荐

  1. python运维工程师待遇_会Python的运维工程师能挣多少钱?

    或许你经常听说,一个高级运维必须会Python.一个不会Python的运维拿不了高薪.那么,Python和运维的关系是什么呢?为什么Python更适合做运维?今天达妹就来带你详细看一下. 工作一年以上 ...

  2. 360云台智能看家存储在哪_新品360智能摄像机云台变焦版,惊喜改变可不止一点点...

    360作为安防起家的企业,这几年不断的针对家庭安防发力,今天我也入了这款心里念念已久的360摄像机云台变焦版,如何来形容呢,其实我之前只用过小水滴类产品,相比于小水滴而言,改变真的太大了,不光改变大, ...

  3. python二维向量运算模拟_python二维向量运算_[VB.NET][C#]二维向量的基本运算

    前言 在数学中,几何向量是指具有大小和方向的几何对象. 在编程中,向量有着广泛的应用,其作用在图形编程和游戏物理引擎方面尤为突出. 第一节 构造函数 通过创建一个二维向量的类(或结构体),实现向量的表 ...

  4. python的运维开发课程_老男孩python高级运维开发课程

    L老男孩培训-python培训二期lesson01(11节) 01-第一天内容介绍及课前思想 02-python介绍及发展 03-python 发展 04-python安装 05-python编程风格 ...

  5. python运维工程师招聘_【python自动化运维工程师工资】图灵学院2020年python自动化运维工程师工资待遇-看准网...

    职位描述 招聘要求: 至少满足下面三个招聘方向中的一条. 招聘主要方向: 一.python web高级讲师 职位要求: 1.精通Python,具有python web开发经验,有参与多个完整的项目生命 ...

  6. python自动化运维书籍推荐_《Python 自动化运维:技术与最佳实践》

    第一部分 基础篇 第1章 系统基础信息模块详解 2 1.1 系统性能信息模块psutil 2 1.1.1 获取系统性能信息 3 1.1.2 系统进程管理方法 6 1.2 实用的IP地址处理模块IPy ...

  7. 高级运维工程师证书_一位IT运维工程师的CISSP认证历程,值得借鉴!

    最近看到身边很多人在备考CISSP,作为一个拿证三年多的老司机,忍不住来分享一下考证心得.附证书↓ 先简单介绍一下自己,我是09年计算机相关专业毕业的,毕业之后一直做IT运维相关的事,5年多的时间,期 ...

  8. 智能合约怎么创建合约_可出售智能合约的协议

    智能合约怎么创建合约 by Pablo Ruiz 帕勃罗·鲁伊斯(Pablo Ruiz) 可出售智能合约的协议 (A Protocol for Sellable Smart Contracts) Et ...

  9. 新型智能芯片防伪印章设备_思格特智能印章管理系统成功签约山东问童动力设备公司...

    山东问童动力设备有限公司是一家专业从事柴油发电机组研发.设计.生产.销售维保一体化的生产型企业.公司主要生产.经营陆用柴油机,发电机组,船用柴油发电机组,离合器机组,水泵机组,可以根据用户的不同需求配 ...

最新文章

  1. 《因果科学周刊》第4期:因果赋能推荐系统
  2. javascript中的constructor
  3. python使用什么来表示不同级别的语句块-Python
  4. [网鼎杯 2020 青龙组]bang
  5. leetcode的回溯算法题目用这个模板解题,一网打尽,so easy!!!
  6. python毒酒检测_检测OpenSSL漏洞的脚本
  7. Python自动化运维——DNS处理模块
  8. matlab中uint16(uint8)函数的用法
  9. [网络安全自学篇] 五十一.恶意样本分析之HGZ进程和网络行为动态分析及防御
  10. Javascript设计模式
  11. cannot use a string pattern on a bytes-like object(bytes与str互转)
  12. 自定义控件_水平滑动的View 自定义属性
  13. PHP架构师“精简”进阶路线规划
  14. java jlabel 字体加粗_这样在java里面的标签Jlabel设置字体加粗和下划线
  15. yarn和npm常用基本命令安装和卸载
  16. STM32初学——OLED调试4-1 5-1/5-2
  17. 吸烟者问题(有例题!!!)
  18. ncode2019安装教程_nCode DesignLife|ANSYS 17.0 nCode DesignLife下载 v12.0免费版 附使用教程 - 121下载站...
  19. 2022 全球程序员薪酬报告,字节在榜,上海收入最高!
  20. TYVJ P1234 - bench与奔驰

热门文章

  1. CSS3 变形 过渡 动画
  2. 微软发布Win11 build 22616.1,推出Xbox控制器栏功能
  3. 利用谷歌的联邦学习框架Tensorflow Federated实现FedAvg(详细介绍)
  4. java结构化程序设计的方法有哪些,Java结构化程序设计.doc
  5. linux中Image、zImage、bzImage、uImage、vmlinux和vmlinux的区别
  6. php sphinx使用教程,使用PHP+Sphinx建立高效的站内搜索引擎
  7. upnp协议简介(二)
  8. 解决Hyper-V虚拟机监控程序未运行
  9. 使用ssh 连接linux 并传送文件
  10. 阿里云镜像仓库的使用