我在与客户交流 AIOps 的时候,他们时常觉得 AIOps 不够成熟,以至于无法实施各种分析。

也有人认为:AIOps 的各项能力是线性发展的,他们必须事先评估和补足当前在“处理大量的事件和警报,以及统一化分散监控”方面的能力成熟度,才能考虑切入 AIOps。

我非常理解他们的关注点,毕竟数十年来,分析师和供应商灌输了僵化的 ITIL 思想和严格的流程,使大家都不愿为那些长期存在的问题,找到替代的解决方案。

诚然,AIOps 并未直接受到 ITIL 的约束,并能够被分步骤地予以实施和改进,但是业界至今仍缺乏实际的行动指导。

本文通过早、中、后期九个步骤来给出 AIOps 所必要的最佳实践。

AIOps的快速回顾

Gartner 判断的 IT 新兴市场趋势为:传统的 IT 流程与工具已不再适合处理那些由现代数字业务所带来的挑战。这不但与数据的传输速度、种类、以及体量有关,还与从线下的历史分析转为线上的实时分析有关。

Gartner 对于这种趋势所给出的答案是:AIOps。它整合了 IT 服务管理(ITSM)、IT 运营管理(ITOM)和数据层面上的 IT 自动化

AIOps 使得数据能够驻留在支持实时应用分析和深度历史查询的大数据平台之中。这些分析可以由那些支持对数据流进行无人值守式处理的机器学习来实现。

因此 AIOps 的基本思想是:传统的 IT 工具仍然发挥效用,例如服务管理仍然处理各种请求和事件;而性能管理仍然监视各种指标、事件和日志。

但是它们的数据被关联、并通过机器学习的分析,从而实现更好、更快的决策和任务过程的自动化。

最终状态

AIOps 的最终状态是:要保证数据能够顺畅地从多个数据源流入一个大的数据平台中。

该平台能够对来自其他来源和类型的数据予以吸收、分析和后期处理;通过机器学习来管理和修改分析算法。

它能够自动触发工作流,其输出结果会作为二次数据源被再次反馈到系统之中,使得系统实现自适应,并且通过响应各种数据卷、数据类型和数据源的变化,进而自动调整和按需通知相应的管理员。

基于上述概念,我将首先提出一个必要且可行的“路线图”,然后详细阐述在 AIOps 实施过程中可采用的具体步骤,以构建出一套 AIOps 的最佳实践。

该 AIOps 路线图共分为 9 步,他们分别是:

●  识别当前用例
 ●  就系统记录达成一致
 ●  确定成功的标准、并着手跟踪它们
 ●  评估当前和未来状态的数据模型
 ●  分析现有工作流
 ●  开始自动化实施
 ●  开发新的分析工作流
 ●  使组织适应新的技能集

●  定制各种分析技术

早期阶段

识别当前用例

鉴于各种变数情况,您最好先从自己所熟悉的方面开始。对于大多数用户来说,他们当前的各种用例方案无法应对那些新技术的发展。因此,您可以列举出自己当前正在处理、或准备解决的用例列表。

如下给出的切入点可方便您发现当前的“目标”状态:

●  列出如何实现各种预期的结果
 ●  评估特定用例的优先级
 ●  突出当前能力、工具、技能或过程中与目标所存在的差距

同时,这也是制定一个成功 AIOps 战略的良好开端。通过强调这种“开启”方式,我们会发现许多新的用例。

各种新的预期结果也会涌现出来,而它们的优先级将随着您的业务和技术的变化而相应地调整。可见新的 AIOps 方法会给我们带来各种新的可能性与挑战。

所以说,重要的是要在一开始就能找到从当前您所处的位置前往目标的桥梁。只有找到了您面临的问题和需要改变的地方,才能选择正确的道路去实现,反之则注定失败。

评估数据的自由度

AIOps 的首要基本元素是:来自不同工具的数据流能够自由地汇聚到大数据存储区中。

因此,您必须评估自己IT系统中获取到的各类数据的易用性和频率。我们理想的最优模型为:实时地发送数据流。

然而,目前很少有 IT 监控或服务台(service desk)工具能够支持向外流出数据。当然,它们迭代出的最新版本应该能以 REST API 方式提供编程上的交互与支持。

但是,如果使用的是基于诸如 Oracle 或 SQL 之类的传统关系数据库,由于它们在最初设计时并非为了支持数据的连续流出,那么即使具有可编程接口,也会对生产系统的性能产生巨大的影响,因此,我们可以断言它们并不能支持数据流。

可见,在制定 AIOps 策略的早期,重要的步骤之一就是要明确自己系统对于数据流的支持能力,并为如下问题给出相应的答案:

●  我如何能从当前的 IT 工具中获取数据?
 ●  我能得到什么样的数据?
 ●  我能够通过编程的方式来实现吗?
 ●  我获取这些数据的频率是怎样的?

通过发现这些约束条件,您可以考虑去更改当前的数据整合策略(例如,将批处理上传模式转化为流式),甚至考虑将现有的IT工具替换为那些支持实时数据流的软件。

就系统记录达成一致

AIOps 的第二个基本要素是:组织的协同和沟通。我建议 IT 运营和 IT 服务管理人员协作审查各种数据的需求,同时就各自的角色和责任达成共识。在此,我们主要着眼于基于共享数据上的协同决策。

这里所说的数据并不是那些已经流入 AIOps 大数据存储区,以待分析的数据。而是 IT 人员可以从自己环境中获悉的、用于采取行动和做出决断、并最终能够跟踪效果的那些数据。因此,整个团队需要针对数据达成如下共识:

●  为了突破系统当前限制所需要的最小数据集
 ●  数据所在的位置
 ●  团队所能共享的联合视图与访问权限

根据传统的 ITIL 模型,在许多成熟的组织中,满足上述条件的系统是他们的服务台。各种服务请求、事件和变更性的数据都被存放于此。

但是当 DevOps 团队开始使用 Jira(译者注:一种项目与事务跟踪的工具),来记录缺陷和功能性的改进时,该模型会受到了一定的挑战。

因为在使用 APM(译者注:一种监控和管理应用软件性能和可用性的工具)时,IT 运营与安全团队是无法通过各种本地或远程事件,来捕获或识别多种威胁的。

因此准备实施 AIOps 就意味着:您需要在应用程序、服务或业务的价值链中确定所有有效的结果性指标,并制定出一个方案来汇集这些数据。

您可以在大数据平台上构建各种“仪表板”,来筛选出具有特定用途的大数据集,即:对不同数据源产生不同的视图。

当然,您可以从“在当前环境中选择数据子集,并将其反馈(如 Jira 工单和 APM 事件等)到已建成的记录系统中”开始。

制定成功标准并开始跟踪它们

任何成功的业务与 IT 管理都起源于了解各种关键性能指标(KPI)和度量标准。因此,具有可操作性的方面包括:

●  了解对哪些方面进行测量
 ●  实现一致且完备的措施
 ●  定期报告或提供性能衡量的可视化
 ●  能够对责任方问责

一般大多数 IT 工具都自带有几种衡量工具和模板,它们往往能够为您提供各种参数。而我们都知道:数量是无法真正反映背后因果关系的。

如果我们只是简单地将它们放到报表上的话,并不能给企业带来业务上的提升。

中期阶段

评估当前和未来状态下的数据模型

数据模型评估是一个关键方面,但很少有人真正理解或愿意这么做。本质上说,您必须为即将上马的 AIOps 方案厘清各个数据源的数据模型,以保证这些模型能够被 AIOps 的用例所识别,进而评估出不同模型间的直接交互和预期结果。

我们之所以说它具有一定的挑战性,是因为大多数 IT 工具的数据模型对于用户都是不可见的。

很少有组织、甚至包括一些数据分析人员或专家,能真正知道大数据平台(使用的是 NoSQL)与传统数据库(使用的是 SQL)的不同之处。

AIOps 实际上是在一个大数据存储库中关联了来自不同 IT(和非 IT)源的数据,使得它们能够互联互通,从而实现分析和趋势判断。

AIOps 系统可以处理许多种共享的数据结构(如下所示),而不需要额外地进行二次开发或改进:

●  时间戳: 各种事件、日志和度量中带有时间点特征的数据,可以被聚集在一起用于关联事件,并按照时序进行因果分析。
 ●  属性: 某个事件、日志或度量所关联的信息键值对(key:value), 如“状态”、“源”、“提交者”等,可用于在不同数据集之间创建关系模型。
 ●  历史性:时间序列或事件活动的过往数据,可用来预测将来的表现或门限值,如饱和度(saturation)和退化度(degradation)。
 ●  效应:一天、一周、一个月等时序数据所呈现的趋势或规律性,可用于关联多个数据集、或预测可伸缩性的资源需求。
 ●  应用程序、服务和业务模型:如果您能够定期进行发现与配置管理上的实践,就可以用它们来通知 AIOps 平台各种资产的分组、关联、依存关系、以及做到数据的去重。

总之,通过构建良好的时序数据,AIOps 能够运用各种运营监控与管理工具来关联、分析和预测各种时序数据,进而实现:

●  将 IT 和非 IT 类数据相集合,例如:用户数量+性能表现、延迟时间+转换率;
 ●  并能增加数据的“粒度”,例如:从 5 分钟的频率上到 1 分钟;
 ●  对数据流进行应用级的分析,例如:做到“实时”或对特定历史时间段的查询。

人工捕获的事件往往是非结构化的;而大多数设备获取的 IT 事件 blob(译者注:binary large object,二进制大对象)也只能达到半结构化。

它们都存在着:格式不一致、不够完整、大量重复等特点。因此,AIOps 应当对这些 IT 事件属性提供范式转换,为进一步分析做好准备。

分析现有工作流

至此,我想您对 AIOps 方案的分析已经准备就绪了。此处的分析并非来自于 IT 工具,而是您定期或不定期进行的,旨在改进流程、降低成本和提高性能的离线式手动分析。

您可以通过手动分析 AIOps 方案,以不断迭代的方式解决自动化过程中出现的问题,进而减少花费在分析上的手动工作量,并提高分析的频率和范围。

可见,AIOps 的目的就是:减少您在手动上花费的时间和精力,通过提高速度与频率,以实现对数据集的自动化实时分析。

开始实施自动化

诚然,每个人都知道自动化的价值,但是不同团队对此有着不同的理解。随着 DevOps 所带来的持续集成与交付(CI/CD),IT 运营的自动化道路也发生了相应的影响。

●  IT 运营(IT Ops):着眼于自动化任务和协调各项步骤。其中包括:实现服务台的工作自动化、自动给服务器打补丁、通过监控工具来自动修正系统错误。难点在于横跨各种工具间的步骤配合与相互联动。
 ●  DevOps:着眼于自动化自己的开发任务和业务流程,以消除瀑布式开发所带来的分段式审查过程、隔离式测试、行为合规、以及运营与上线联动等所造成的瓶颈与滞后。

可见,DevOps 的应用团队旨在通过开创新的服务(如云端应用),加快集成与交付的速度与频率。

而IT运营团队,则需要“自动化所有”,他们需要协调的不只是 CI/CD,而是整个“链条”。

如果他们不知道服务何时从测试转移到了生产环境,不知道谁手中的源代码会对产生环境造成何种影响,不知道如何识别与度量业务开发人员积压的工作,那么就无法真正有效地去管理好自己的自动化环境。

因此,IT 运营需要跟上 DevOps 团队的速度和敏捷性,综合运用工具来发现信息、共享信息,并通过与 DevOps 的沟通来“刷出自己的存在感”。

后期阶段

开发新的分析工作流

通过中期阶段对于现有工作流的分析,您应当能够自动化并扩展了自己的 AIOps 方案,同时实现了如下方面:

  • ●  评估现有工作流的价值

  • ●  修改和改进现有工作流

  • ●  基于现有差距开发新的工作流

一旦在 AIOps 平台中实现了对现有流程的自动化,我们就可以进一步评估:正在分析的信息是否真正有用?其趋势判断的结果是否可行?以及如需更改的影响会有多大?

我们可以利用现有工作流的分析结果形成“正反馈”,从而开发出新的分析工作流。

使组织适应新的技能集

在角色上,IT 运营人员将从一般“从业者”转换为“审计者”。他们应当跳出固守了十多年的对于设备完全掌控的观念,将目光投到业务数据的分析上。

虽然不需要具有数据科学方面深度的机器分析水平,但是他们确实需要了解系统是如何处理数据、以及是否能够实现业务的目标。这也是 AIOps 将给 IT 运营人员带来的最大变化。

纵然整个市场目前尚未完全成熟,但是各个企业仍值得去培养具有 AIOps 能力的人才。假以时日,他们必将为组织带来结构化的科学转变,并让组织从中受益。

定制各种分析技术

最后在运用 AIOps 进行 IT 运营方面,组织还需要开发出一些数据科学方面的实践。通过数据科学家、开发者与分析师的协作,他们会开发出能在大数据集上运行的算法,并在代码上使用 Python 或 R 语言来实现各种数据科学的模型。

当然,IT 运营人员不必了解过多有关数学和编程方面的知识,他们只需要能够管理一个具有半智能、半自治能力的系统架构。

他们应当能够根据 AIOps 供应商所提供的多个备选分析系统,选择最适合于自己环境的组合。

在日常运营中,AIOps 平台也将能够提供实时的、定制的回归分析,以辅助做出各种决策。

原文发布时间为:2018-09-13

本文作者:陈峻编译

本文来自云栖社区合作伙伴“高效运维”,了解相关信息可以关注“高效运维”。

AIOps 落地难?仅需9步构建一套 AIOps 的最佳实践相关推荐

  1. [Java实战][仅需1步]企业微信群机器人[0基础接入]

    [仅需1步]企业微信群机器人[0基础接入][java] 背景 介绍 使用 测试 项目 背景 公司需要把日常的服务器错误抛到企业微信群中,我正好记录下使用企业微信群机器人- 介绍 企业微信群机器人 应用 ...

  2. 仅需一步将人脸检测算法从30FPS提升到120FPS

    仅需一步将人脸检测算法从30FPS提升到120FPS 算法加速瓶颈 可行性验证 模型手术 推理速度及实验结果 下一步计划 算法加速瓶颈   目前,各种卷积神经网络算法在Tensorrt的加速下,inf ...

  3. 仅需6步,教你轻易撕掉app开发框架的神秘面纱(1):确定框架方案

    遇到的问题   做游戏的时候用的是cocos2dx+lua,游戏开发自有它的一套框架机制.而现在公司主要项目要做android和iOS应用.本文主要介绍如何搭建简单易用的App框架. 如何解决   对 ...

  4. php 商城套餐搭配功能,速卖通商品搭配套餐功能已上线!设置速卖通搭配套餐仅需三步...

    据雨果网获悉,速卖通商品搭配套餐功能已于 10 月 19 日上线.商品搭配套餐的主要功能及作用,主要是帮助速卖通的卖家,通过自行选择商品,设置不同商品间搭配优惠促销价格,提高商品推广内容的丰富性及专业 ...

  5. excel处理几十万行数据_神奇吗?仅需4步,轻松在Excel处理300万行数据

    原标题:神奇吗?仅需4步,轻松在Excel处理300万行数据 这场软件PK,是时候分出胜负了,今天就是大结局.有必杀技在手,Excel已经看到了胜利的曙光. 在99%的人眼中,Excel能处理的最大数 ...

  6. python爬虫excel数据_最简单的爬数据方法:Excel爬取数据,仅需6步

    原标题:最简单的爬数据方法:Excel爬取数据,仅需6步 在看到这篇文章的时候,大家是不是都还停留在对python爬虫的迷恋中,今天就来教大家怎样使用微软的Excel爬取一个网页的后台数据,注:此方法 ...

  7. ..NET程序破解仅需三步

    近期开发公司商城,为了简化开发用了V5Shop网店程序.本来预计一个月完工,哪知道出现一堆问题大大增加了我的工作量(早知道还不如全部自己写了). 破V5Shop真不地道,说是免费的,结果程序一大堆问题 ...

  8. 仅需三步学会使用低代码ThingJS与森数据DIX数据对接

    森数据DIX拥有强大的数据处理能力,内置主流集成插件,分钟级集成IT运维场景和IoT管理场景数据,提升效率.针对非主流系统,支持在线JS脚本编辑,提供灵活.规范的接口,满足低代码个性化需求,轻松实现物 ...

  9. 怎样才能跳过实名认证_和平精英qq怎么跳过实名认证!老司机告诉你仅需5步

    qq怎么跳过实名认证玩家是否知晓,虽然来说跳过实名认证对于手游来说并没有什么帮助,但是这个方式方法玩家还是需要知道的,这样能够帮助玩家轻松的做到某些事情,而这里就是样式玩家如何进行和平精英实名认证怎么 ...

最新文章

  1. 2、jeecg 笔记之 t:dictSelect 或 t:dgCol 自定义字典
  2. NI Measurement Studio 打包问题的解决(原创)
  3. 深度学习之线性回归模型
  4. 服务器根没有web文件系统,Web服务器
  5. cie规定的标准光源_什么是标准光源?
  6. vue实现点击高亮效果_vue结合Echarts实现点击高亮效果的示例
  7. Atitit 院系和专业规划 大学里的院系,院一般指的都是学院,比如管理学院、法学院这种,系指的就是院里面的专业,比如中文系、哲学系这种。 中文系、哲学系 土木工程 目录 1. 经济管理学院 2
  8. macOS苹果电脑下载m3u8、ts视频
  9. 聚焦堆栈重建光场-SART实现(附代码)
  10. 英文摘要写作要点及指导
  11. hello world你知多少------300种编程语言中的hello world程序汇
  12. [PhotoShop]用ps制作遮罩图层
  13. 从哲学的视角看待项目生命周期——构建不一样的世界
  14. php怎么使用sendcloud,PHP开发之SendCloud发送邮件知几何
  15. Java使用465端口发送邮件(绕过25端口限制)
  16. WTGNet-PlC协议转换网关
  17. F5负载均衡综合实例详解
  18. Kafka处理服务器发来的消息并与数据库交互——具体流程
  19. 游戏盾的原理和功能是什么?
  20. JDBC如何破坏双亲委派机制

热门文章

  1. Python练习:平方值格式化
  2. python提取高频词_seo与python大数据结合给文本分词并提取高频词
  3. feign直接走熔断_SpringCloud微服务(03):Hystrix组件,实现服务熔断
  4. 3d 室内地图_微软科研人员欲通过3D点云混淆技术保护AR定位隐私
  5. ios 模拟器沙盒_iOS模拟器的路径-打开沙盒路径
  6. 跨网段远程调试vs_使用 VS 2019 跨平台编写和调试 Linux C/C++程序
  7. jspdf 分页_使用html2canvas跟jspdf导出导出PDF文件
  8. html中tab页怎么写,html如何实现tab页面切换
  9. Python编程基础11:字典
  10. Python学习笔记:字符串提取和清洗