历时2个月,深访6位大咖,我们完成了这份AIOps指南

  2021年,业界对AIOps的关注和讨论可以说是达到了一个顶峰,许多国内外企业尝试落地AIOps的实践层出不穷。毋庸置疑,AIOps已是IT运维的大势所趋。可是想要坐上这趟飞驰的时代列车,必须掌握哪些要领?

  为帮助大家解决心中疑虑,捋清技术风向及思路,我们精心准备了一次专访,采访了阿里-柳明、新浪微博-彭冬、奇虎360-籍鑫璞、携程-徐新龙、新炬网络-宋辉、平安科技-汪洋等6位AIOps领域的先行探索者。

  本系列文章将会汇集他们的研究心得与实践经验,解答目前业界对AIOps普遍存在的认知误区及疑惑难点,助力国内AIOps的建设和落地。本文为上篇,从大环境着眼,详析AIOps的现实路径。

  目录大纲

  认真读完本文,你可以了解到:

  AIOps在国内的真实发展现状;

  AIOps未来的应用主要集中于哪些方面?将实现怎样的技术突破?

  AIOps是否适用于所有企业?为什么?

  同属运维领域,自动化运维、DevOps以及AIOps之间的关系是怎样的?

  下一步AIOps的发展将会走向何方?会对哪些领域产生影响?

  Q1:今年AIOps这么火,但实际上它目前在国内究竟发展到了哪一步?

  A

  柳明(阿里)

  我认为绝大部分公司目前AIOps还处于探索阶段,小部分公司处于系统性建设基础的阶段。很多吹得神乎其神的AIOps落地的公司或组织,我觉得很少能在大规模场景下经得起推敲。

  彭冬(新浪微博)

  A

  很高兴在AI的助推下,AIOps能够迅速出现在更多人的视野,我们从各种技术峰会就可以看到,AIOps的专题逐渐在增多。

  就目前而言,国内实施AIOps的企业并不多,互联网企业由于天然的优势,在智能运维方面会早一些,但传统企业及中小企业几乎为零起步,大部分企业还处于原始人工运维的阶段。

  随着互联网的发展及开源框架的兴起,很多企业逐渐意识到借助开源工具能够大幅度提高运维效率,这也大大缩短了企业实施DevOps的周期,为进一步实施AIOps打下了基础。因此,从节奏和趋势来讲,AIOps落地会比想象更快。

  A

  籍鑫璞(奇虎360)

  2021年可以说是AIOps的元年,从今年起陆续有企业在这方面开始投入人力的研究,包括BAT、一些二线的互联网公司,也包括一些小的创业公司。但是总的来说,大家都处在开始阶段,远没有达到AIOps的终极目标——运维大脑这个阶段,AIOps还有很长的路要走。

  徐新龙(携程)

  A

  从行业整体水平看,目前还是处于场景探索和效果验证的阶段,在故障检测、故障根源定位、容量预测及规划、智能问答等方面已经有非常好的实践。

  A

  宋辉(新炬网络)

  AIOps当前还处于初步探索的阶段。在这方面国内互联网公司走得相对靠前一点,最近一些比较大型的传统企业也在开始尝试。大家目前实践和关注的内容基本也都还处于初级阶段,更多的是一种对AIOps的思考以及在现有运维能力上一些点的提升和突破,整个面的解决方案和能力尚未成形。

  当然AIOps作为未来的运维发展方向,大家都是非常认可的。今后随着越来越多人的参与,大家能更多地形成一些合力,相信经过时间的增长和经验的积累,国内AIOps的发展也将变得越来越成熟。

  汪洋(平安科技)

  A

  实际上AIOps并不是从今年才开始流行,随着近些年人工智能的发展,大家开始相信通过AI可以做更多的事情,同样AI也被应用在运维领域,于是出现了AIOps。从最初的人工运维到自动化运维再到AIOps是一个很自然的发展过程。

  总而言之,AIOps在运维领域的应用前景非常广泛。然而,虽然我们对AIOps已经谈了一段时间,但从我个人来看,仅处于发展的初级阶段,大家都还在摸索,落地的案例和算法都还不算多。很多情况下,使用的都还是传统的统计分析方法,只是被包装了一个AIOps的名字而已。但同时这也是任何事物发展过程中的一个必经阶段。

  Q2:为什么说AIOps是运维发展的必然方向?它在未来的应用主要集中于哪些方面?将实现怎样的技术突破?

  之前很多运维决策都是靠人的经验,也就是所谓的PE角色线上解决运维问题。首先他这样的专家经验不是系统能力,只能是有多少这样的人才能解决多少这样的运维问题,不具备规模化复制的能力。之后大家意识到这样的问题,开始把这样的经验沉淀到系统,变成系统能力,也就是规则系统。

  但这样规则系统的能力不具备泛化能力,也就是说系统很难对稍微不一样的输入做出正确性的判断。所以利用大规模数据挖掘、机器学习和人工智能技术对纷繁复杂的运维大数据进行实时分析和分类及预测,为系统维护提供更具泛化能力的有效决策的方案,是解决当下运维困境的唯一选择。

  在未来我们可以利用运维产生的大数据数据、AI预测及分类算法的能力让我们在容量规划、弹性调度、故障检查、智能诊断、问题自愈等方面取得突破。

  AIOps是历史发展的必然趋势,是运维技术发展的一个重要节点,不因人的意志而转移。运维从人工到二手工具,从自动化到智能化是互联网发展及企业业务发展共同选择的结果。

  最近马化腾向合作伙伴发表了公开信,提到很重要的一点是,移动互联网的主战场正在从上半场的消费互联网向下半场的产业互联网方向发展。产业互联网的基础是大数据、人工智能等互联网技术,企业需要稳定发展,需要解决规模性和精细化的问题,而AIOps就很好地解决了这样的问题。

  在披上AI华丽的外衣后,无论AIOps显得多么高大上,其本质上还是运维技术,还是要解决好运维中所面临的问题。因此AIOps的实施首先要看运维基础设施的成熟度。

  运维基础设施包括:网络、CI/CD设施、自动化平台、大数据基础平台、机器学习平台等等。

  在实践时,AIOps用的模型的准确率非常依赖数据的准确性,决策执行则依赖自动化能力。此外,AIOps的实施需要AI技术的支撑。当然,很多算法层面的东西已经工程化,比如我们用LR做故障分类时,都不需要太理解LR算法本身,调用Python库就可以,但这并不代表我们就可以不深入研究算法原理。

  国内外一些企业也开源了一些故障检测、异常分析、趋势预测等框架,这都降低了门槛。但要想提升这些算法的准确率,甚至是发现一些新的算法来更好地解决业务问题,还需要大量的理论基础支撑和资源投入。

  随着互联网的软硬件呈现爆发式增长,新的架构层出不穷,运维人员需要做到7*24小时的职守来保证系统的可靠性和稳定性。这种空前的压力,如果有一种“机器大脑”来减少甚至代替运维人员去做一些事情,将极大地减少他们的工作量,提高运维效率。如何得到这种“机器大脑”呢?

  很多运维场景都可以总结成一些规则化的东西,可以经过提炼总结生成人工经验库。除了人工经验以外,还可以通过AI算法对历史数据进行分析,得到一些由机器生成的规则。如果能将AI算法+人工经验应用到OPS中,代替一部分人工决策,将推动运维从普通的自动化阶段向智能化阶段迈进。

  AIOps未来集中在两个大方面,一是成本,二是效率。成本方面需要从节约成本、提高资源利用率为出发点,而效率方面就需要提高效率为根本宗旨,做到及时发现问题,快速定位问题,最终解决问题。AIOps需要大量的实践和探索,需要运维人员、大数据工程师以及算法工程师一起努力,才能实现技术的突破。

  规模效应和时间维度上的积累会导致运维数据(日志、监控数据、应用信息等)体量异常庞大,传统基于经验规则方式的运维已经不能很好地胜任,需要借助大数据+人工智能的手段,用“机器学习”替代“规则”。从这个意义上讲,AIOps无疑是解决此类问题最合适的方案。

  从本质上讲,AIOps的出发点和立足点主要还是提升网站可用性、降低企业运维成本、提升效率等应用场景,未来的应用也主要是体现在这些方面。通过机器学习的方式,AIOps将攻克自动化运维无法解决的一些“痛点”问题,致力于构建一种基于数据化运维的生态环境。

  技术上的突破主要还是体现在算法和算力方面:针对特定的应用场景,构建数据模型,算法需要不断迭代提升准确率和覆盖率;面对未来海量的运维数据,实时计算和处理能力将会是一个很大的考验。另外,提升运维数据的质量也是非常重要的,尽管数据体量非常庞大,但有效和有用的数据所占据的比例却非常稀少。实践表明,算法效果的上限很大程度上受制于数据质量的好坏。

  A

  宋辉(新炬网络)

  早期的运维工作大部分是通过人力完成的,随着IT规模的增长及信息化的进展,我们通过自动化将一些重复劳动的效率进行提高。但到了现在以及可以预见的未来,IT系统架构的复杂度越来越高,规模越来越大,同时伴随人力成本不断提高,渐渐地对于一些大型企业或重型信息化企业来讲,运维就不一定是简单依靠人力能解决问题了。因此引入和发展AI能力,对于运维来讲确实是必然趋势。

  从目前的技术能力来看,对于AIOps的应用主要集中在异常检测及根因分析两个方面,而且在一些头部公司已取得了比较成功的应用。通过两个应用场景的突破,可以解决海量指标的实时异常分析和异常场景下快速根因定位,大大提升问题分析处理的效率。

  对于未来AIOps技术上的突破有很多可以值得期待的,现在异常检测及根因分析已经取得了很好的效果,还有大家在致力于研究的告警关联分析、告警传播关系、多指标关联分析、根源分析等,将来有希望能迎来大家所期待的无人值守的那一天。

  Q3:AIOps是否适用于所有企业?为什么?

  我觉得不能一概而论。满足机器、IDC、业务具有一定规模,并且系统和业务运维在规模下遇到运维痛点的企业是比较适合推行AIOps的。原因在于,第一,这样的企业具有规模化的运维数据;第二,这样的企业有动力去推动AIOps落地。为什么一定强调这两点呢?因为AIOps是运维思维的完全颠覆,可能会对现有的运维基础设施带来很大冲击,虽然不是一切推倒重来,但是在一个没遇到瓶颈而只是凑热点,并没有动力去推动AIOps落地的公司来说,很难长时间投非常多资源去落地这个事情。

  理论上,AIOps适合所有的企业,先行者是互联网企业,受益者是所有企业。因为大家都面临同样的问题,比如业务复杂性的提升、机器数量的增加、迭代周期的缩短等等。

  2021年,天猫双11成交额达2135亿,每秒大概成交额为247万,可以想象网络抖动1秒或是某台服务器故障无法及时摘除会有多大的影响。

  AIOps解决的是智能发现和智能决策的问题,只有让运维的过程自动化甚至智能化,才有可能解决规模化的难题,规模化伴随着任何一家企业成长的全过程。AIOps研究的范围涉及到企业成本控制、研发效率和质量保障的方方面面,因此也就跟企业发展息息相关。

  我觉得AIOps并不适用于所有企业。所有概念的提出,都以解决问题为根本出发点。如果企业规模不是很大,场景并不是太复杂,用普通的运维手段,少数的人就可以搞定的话,没必要去花精力去研究AIOps。只有服务器数量、线上业务到了一定量级以后,才需要去考虑AIOps。

  运维几乎是所有企业必设的岗位,无论传统企业,亦或者互联网企业无不如此。目前AIOps实践比较活跃和积极的企业主要还是大中型的互联网企业,因为规模效应,这些企业积累的数据体量和传统的企业相比有量级上的差异,很多小问题在数据量被放大后就会变得尤为突出和严峻,基于传统运维的经验规则这时已经不能很好的保障网站可用性、减低和优化运营成本、提高持续交付和持续集成效率等职能,所以说很大程度上“量”决定了企业适不适合实践和引入AIOps。

  但从运维岗位的划分上看,职能大体都是相似的,同时运维数据在性质上差异也不大。从这个意义上说,AIOps是适合于所有企业的,只是中大型的企业在数据体量庞大之后“痛点”过早的暴露出来而已。

  从AIOps给企业带来的好处来看,答案是肯定的。但从另一个方面想,AIOps很大程度上取决于数据的质量及样本的丰富性。也就是说,如果样本很少,数据本身带有倾向性,质量不高,那么AIOps的准确性和效果就会大打折扣。

  从这点来看,我认为AIOps更适合大的企业,更适合云计算。中小企业想要享受AIOps带来的效益,可以考虑将系统部署在公有云上。公有云更加标准化和规范化,也拥有大量的数据,这些数据训练出来的模型准确性应该更高。举例来说,为什么Oracle的Autonomous Database只在其公有云上提供服务,原因也在于此。

  Q4:同属运维领域,自动化运维、DevOps以及AIOps之间的关系是怎样的?

  自动化运维:利用规则、经验或者简单数据分析来自动化执行,可以认为是智能化运维的初级阶段——DataOps。

  DevOps:开发运维一体化,解决的是开发迭代效率问题,是为运维效率低效提供的工具或平台化的能力

  AIOps:智能化运维,是利用大规模数据挖掘、机器学习和人工智能技术对纷繁复杂的运维大数据进行实时分析分类及预测,为系统维护提供更具泛化能力的有效决策的方案。

  所以我对运维发展阶段的看法是:人肉运维→DevOps→DataOps(自动化运维)→AIOps。所以自动化运维、DevOps、AIOps的关系更多是运维发展所处不同阶段。

  自动化运维、DevOps和AIOps是运维发展不同阶段的产物:

  DevOps注重开发在运维领域的角色,其目的也是更好地实现自动化运维,DevOps想通过在运维技术的基础上注入开发能力,加速运维自动化的进程。

  自动化运维与DevOps都没有明确包含智能化的概念,而AIOps则明确了机器学习、人工智能赋能运维的目标,将自动化提升到智能化的更高地层次。尽管如此,AIOps的基石还是自动化,广义来讲,AIOps应该是包含自动化基础设施的智能化运维技术。

  解释这个问题,就不得不从运维的发展历程说起了。企业发展最早期,规模小和技术落后,基本都是人肉运维,通过手工编写特定的shell脚本,就可以完成特点运维目标;

  随着企业规模的快速扩大,人力就成为瓶颈,运维效率已经难以适应业务的增长需求,自动化运维因此应运而生。通过预定义的规则脚本,执行重复性的日常运维工作,一来减少人为因素可能导致的失误;二来极大地提高了运维效率,减少人力成本。自动化运维时代出现了很多的运维工具,这些工具替代了原来某种需要人力手工完成的运维场景,同时对运维人员也提出了具备一定开发能力的要求。

  自动化运维时代产生的工具如雨后春笋,但这些运维工具如豆腐块般零碎,有时甚至功能重叠,系统的使用门槛普遍比较高,工具的用户主要还是运维人员自身。DevOps的出现主要强调从价值交付的全局视角出发,端到端打通软件生命周期,强调横向的融合和打通,实现一站式的持续交付和持续集成。在这期间整合了很多功能相似的工具组合成一个运维平台,从产品设计的角度出发,减低用户的使用难度和费力度,同时将这些运维平台开放给更多的研发人员使用,提供一站式的交付申请和自助平台。

  AIOps是继自动化运维和DevOps实践后的更高阶的运维实现,主张由机器学习算法自动地从海量运维数据中不断学习,提炼和总结规则。在自动化运维的基础上,增加了一个基于机器学习的大脑,对运维数据自动分析、决策,指挥自动化脚本去执行大脑的决策,从而达到运维系统的整体目标。

  DevOps更多是指开发运维群体之间的一种办公合作模式,它不是一个部门、团队、工具的称呼,而是一种思维方式和开发运维工作理念,强调通过部门或组织之间更好的协同从而促进更加高效率、高质量地完成业务目标,所以DevOps更多的是一种文化。

  而自动化运维和AIOps是一种具体的运维能力或工具。通过自动化运维和AIOps可以让工具在运维中产生更大的价值,从而更好地推动DevOps的落地效果。

  前面提到从人工运维到自动化运维,再过渡到AIOps是一个自然发生的过程。自动化运维只是将人工运维的步骤通过代码实现自动化执行,来降低运维成本和风险,但并不具备自学习能力,所有的规则和动作都是写死的,并不会随着状态的变化而做出适应性改变。

  而AIOps通过将人工智能算法代入运维,持续对数据进行分析,并且不断通过自学习来进行演化,能够对自己进行修正,从而可以不断地适应外界的变化。

  DevOps更多的是一种文化,是从敏捷开发到快速交付和敏捷运维的延伸。DevOps和AIOps并不冲突,二者可以相辅相成,相得益彰,共同提升企业的开发和运维效率。

  Q5:您认为AIOps下一步发展将会走向何方?会对哪些领域产生影响?

  目前我们更多的是在谈AIOps的一个个具体的点,解决的是具体服务的运维问题,很少从整体上去横向考虑整个机房和全局在线服务的成本、效率、稳定性相关,所以我认为未来的AIOps应该在局部优化到全局优化进行演进,而随着各行业推进AIOps,相信未来企业在IT方面的效率、成本、稳定性有非常大的提升,从而能够让企业IT机房、线上服务系统完成从人肉到无人值守的自我学习、自我提升,自愈的进化。

  未来各行各业的企业注意力更聚焦,会更有资源和精力聚焦在如何提升服务水平和自身服务创新上。提供传统运维工具产品和平台的企业将消失,真正能够在原有运维系统平台之上赋予智能化运维能力的公司将会脱颖而出,并且成为时代的宠儿。

  AIOps经过一年的发展,已经在一些单点的应用方面取得比较好的成果,接下来是结合具体的场景,在某些场景将这些单点成果串联起来,从发现问题、分析问题到最后解决问题,真正提高效率。

  AIOps可能会对整个运维领域、AI领域产生一些影响,但是这都是后来的事情,AIOps还是需要脚踏实地,一步一个脚印地走下去。

  运维的终极目标是无人值守的运维,彻底释放出人力资源。

  如果把AIOps的实践内容比作手、眼和脑三个部分的联动,从行业现状看,目前比较成熟和通用实践的主要在于眼和脑,例如指标监控和智能告警分析;但大脑和手的联动从目前的实践场景和内容看并不是很普遍和通用,所以接下来AIOps主流的方向应该是朝着智能决策和自动执行方向发展,只有当系统可以自动发现问题、分析问题、并自动解决问题时,才有望实现运维无人值守的美好愿景。相信通过行业各方力量的不断贡献和推进,AIOps实现运维无人值守的目标终会到来。

  AIOps的实践是对人工智能技术应用场景的重要丰富,其实践的经验来自各行各业无数运维人智慧的结晶,技术始终是为保障业务而服务的,技术的不断强大和发展反向作用于业务,从这个意义上讲,AIOps的成功,将会影响到各个领域。

  AIOps的目标就是要尽可能地降低运维中人力的参与,提升运维的自动化、自管理能力,甚至达到无人值守的程度。

  就目前阶段来说,对于AIOps的定义是在学历问题定位和分析这个层面,主要是在利用海量的数据,通过机器学习相关算法,快速发现异常点及利用相关数据的关系找到问题根因。

  相信下一步,AIOps将会往更广义的方向发展,除了问题分析定位,包括组件关系的自动梳理画像、自动化的弹性容量管理、智能运营分析统计能力、智能化的资源交付、智能机器人管理等。

  如果真的走到这一步并取得突破性进展,将会对整个企业的IT基础架构、研发体系、组织架构等产生深远的影响。

  随着IT技术的持续进步,人工智能渐趋完善,AIOps也会不断前进。而且我认为AIOps的发展是有其第一推动力的,系统运维的规模越来越大,复杂度也趋于提升,大家都在谈建设生态圈,也意味着系统之间的依赖性越来越强,传统的人工运维甚至自动化运维无法解决,必须依赖AIOps。

  这些在云计算上体现得尤其明显,因此我认为云计算和AIOps结合是必然的趋势。

  云平台给AIOps提供了肥沃的土壤,可以让AIOps快速成长,例如标准化、规范化,海量的运维数据;反过来,AIOps也可以让云平台的优势更加明显,例如系统的可用性、稳定性,资源的合理充分利用,降低企业的运维成本。

  在AIOps的协助下,未来的系统将会趋于自治化,这和自动驾驶技术的发展一个道理。从这点来看,AIOps带来的影响是深远的,IT技术的各个细分领域都会从AIOps中获益,包括数据库、存储、网络、计算等。我想不止依赖于这些组件的应用系统稳定性得以提高,还可以让我们不断对产品的功能和性能不断完善,从产品侧、从源头来改进。

  至此,本次专访暂告一段落,如果大家对AIOps还有其他疑问,不妨在本文微信订阅号(dbaplus)评论区留言,我们会邀请专家进行解答~

  至于更多对AIOps的系统性答疑,请耐心等候下一篇专访的发布~

上一篇:Apple Music 高管:比起算法,我们更爱用人推荐音乐


下一篇:37 岁学编程,发现第一个 Bug,创造商业编程语言