收藏 分销(赏)

企业级AIOps智能运维实施建议白皮书.pdf

上传人:Stan****Shan 文档编号:1287639 上传时间:2024-04-22 格式:PDF 页数:41 大小:1.80MB 下载积分:25 金币
下载 相关 举报
企业级AIOps智能运维实施建议白皮书.pdf_第1页
第1页 / 共41页
企业级AIOps智能运维实施建议白皮书.pdf_第2页
第2页 / 共41页


点击查看更多>>
资源描述
企业级 AIOps 实施建议白皮书 企业级 AIOps 实施建议白皮书 企业级 AIOps 实施建议白皮书 2 copyrightGREATOPS 高效运维社区 目录 背景介绍 4 组织单位 4 编写成员 5 发起人 5 顾问 5 编审成员 5 本版本核心编写成员 6 1、整体介绍 8 2、AIOps 目标 10 3、AIOps 能力框架 11 4、AIOps 平台能力体系 14 5、AIOps 团队角色 17 5.1 运维工程师 17 5.2 运维开发工程师 17 5.3 运维 AI 工程师 17 6、AIOps 常见应用场景 19 6.1 效率提升方向 21 6.1.1 智能变更 22 6.1.2 智能问答 22 6.1.3 智能决策 23 6.1.4 容量预测 23 6.2 质量保障方向 24 6.2.1 异常检测 24 6.2.2 故障诊断 25 6.2.3 故障预测 25 6.2.4 故障自愈 26 6.3 成本管理方向 26 6.3.1 成本优化 26 企业级 AIOps 实施建议白皮书 3 copyrightGREATOPS 高效运维社区 6.3.2 资源优化 27 6.3.3 容量规划 28 6.3.4 性能优化 28 7、AIOps 实施及关键技术 29 7.1 数据采集 29 7.2 数据处理 30 7.3 数据存储 30 7.4 离线和在线计算 30 7.5 面向 AIOps 的算法技术 30 说明:31 附录:案例 33 案例 1:海量时间序列异常检测的技术方案 33 1、案例陈述 33 2、海量时间序列异常检测的常见问题与解决方案 33 3、总结 34 案例 2:金融场景下的根源告警分析 35 1、案例概述 35 2、根源告警分析处理流程 35 3、根源告警分析处理方法 37 4、总结 39 案例 3:单机房故障自愈压缩 40 1、案例概述 40 2、单机房故障止损流程 40 3、单机房故障自愈的常见问题和解决方案 41 4、单机房故障自愈的架构 43 5、总结 44 企业级 AIOps 实施建议白皮书 4copyrightGREATOPS 高效运维社区 背景介绍 背景介绍 AIOps 即智能运维,其目标是,基于已有的运维数据(日志、监控信息、应用信息等),通 过机器学习的方式来进一步解决自动化运维所未能解决的问题,提高系统的预判能力、稳定性、降低 IT 成本,并提高企业的产品竞争力。Gartner 在 2016 年时便提出了 AIOps 的概念,并预测到 2020 年,AIOps 的采用率将会 达到 50%。AIOps 目前在国内外领先的互联网企业开始被逐渐应用,也是近年来国内外被普遍看 好的新技术。为了让国内众多互联网中小企业、特别是传统企业可以共享、复用国内外顶尖互联网的 AIOps 技术和能力,并能够更快捷的进行 AIOps 相关产品选型,因此开展国内外第一个 AIOps 白皮书及相关标准制定工作。AIOps 标准将分成两大类,分别适用于企业内部的 AIOps 能力建设与评估、及企业购置相关 AIOps 产品的认证评估,使得 AI 真正落地应用于运维,造福于企业。此白皮书由高效运维社区牵头,为 AIOps 标准工作组成员及所属企业的相关经验汇总。企业级 AIOps 实施建议白皮书 8copyrightGREATOPS 高效运维社区 1、整体介绍 1、整体介绍 AIOps,即 Artificial Intelligence for IT Operations,智能运维,将人工智能应用于运维领域,基于已有的运维数据(日志、监控信息、应用信息等),通过机器学习的方式来进一步解决自动化运维没办法解决的问题。早期的运维工作大部分是由运维人员手工完成的,这被称为手工运维或人肉运维。这种落后的生产方式,在互联网业务快速扩张、人力成本高企的时代,难以维系。自动化运维因此应运而生。其基于用可被自动触发的、预定义规则的脚本,来执行常见的、重复性的运维工作,从而减少人力成本,提高运维效率。总的来说,自动化运维可以认为是一种基于行业领域知识和运维场景领域知识的专家系统。随着整个互联网业务急剧膨胀,以及服务类型的复杂多样,“基于人为指定规则”的专家系统逐渐变得力不从心。自动化运维的不足,日益凸显。DevOps 的出现,部分解决了上述问题。其强调从价值交付的全局视角,端到端打通软件生命周期,建立基于微服务的单件流式的流水线。但 DevOps 更强调横向融合及打通,较低阶段的 DevOps 无力改变“基于认为指定规则”的既定事实。AIOps 是 DevOps 在运维(技术运营)侧的高阶实现,两者并不冲突。此部分可具体参考研发运营一体化能力成熟度模型。AIOps 不依赖于人为指定规则,主张由机器学习算法自动地从海量运维数据(包括事件本身以及运维人员的人工处理日志)中不断地学习,不断地提炼并总结规则。AIOps 在自动化运维的基础上,增加了一个基于机器学习的大脑,指挥监测系统采集大脑决策所需的数据,做出分析、决策,并指挥自动化脚本去执行大脑的决策,从而达到运维系统的整体目标。AIOps 基于自动化运维,将 AI 和运维很好的结合起来,其需要三方面的知识:1)行业领域知识:应用的行业,如互联网、金融、电信、物流、能源电力、工业制造和智慧城市等,并熟悉生产实践中的难题;2)运维场景领域知识:如指标监控、异常检测、故障发现、故障止损、成本优化、容量规划和性能优化等;3)机器学习:把实际问题转化为算法问题,常用算法包括如聚类、决策树、卷积神经网络等。企业级 AIOps 实施建议白皮书 9 copyrightGREATOPS 高效运维社区 AIOps 和 DevOps 两者并不冲突,企业级 DevOps 涵括包括运维在内的整个软件生命周期,AIOps 是 企业级 DevOps 在运维(技术运营)侧的高阶实现。AIOps 是运维的发展必然,是自动化运维的下一个发展阶段。Gartner 相关报告预测 AIOps 的全球部署率将从 2017 年的 10%增加到 2020 年的 50%。其应用行业,除了互联网以外,还包括高性能计算、电信、金融、电力网络、物联网、医疗网络和设备、航空航天、军用设备及网络等领域。本白皮书综合国内领先的互联网公司、金融企业及 AIOps 解决方案提供方的相关经验,给出了一种企业级 AIOps 的 AIOps 理论方法和生产实践,希望能帮助贵司快速、成功实施 AIOps。本白皮书聚焦 AI 应用到 Ops 领域,不涉及自动化运维相关内容。企业级 AIOps 实施建议白皮书 10 copyrightGREATOPS 高效运维社区 2、AIOps 目标 2、AIOps 目标 AIOps,通俗的讲,是对规则的 AI 化,即将人工总结运维规则的过程变为自动学习的过程。具体而言,是对我们平时运维工作中长时间积累形成的自动化运维和监控等能力,将其规则配置部分,进行自学习的“去规则化”改造,最终达到终极目标:“有 AI 调度中枢管理的,质量、成本、效率三者兼顾的无人值守运维,力争所运营系统的综合收益最大化”。AIOps 的目标是,利用大数据、机器学习和其他分析技术,通过预防预测、个性化和动态分析,直接和间接增强 IT 业务的相关技术能力,实现所维护产品或服务的更高质量、合理成本及高效支撑。企业级 AIOps 实施建议白皮书 11 copyrightGREATOPS 高效运维社区 3、AIOps 能力框架 3、AIOps 能力框架 AIOps的建设可以先由无到局部单点探索、再到单点能力完善,形成解决某个局部问题的运维 AI“学件”,再由多个具有 AI 能力的单运维能力点组合成一个智能运维流程。AIOps 能力框架基于如下 AIOps 能力分级。AIOps 能力分级可具体可描述为 5 级(图-2):1)开始尝试应用 AI 能力,还无较成熟单点应用 2)具备单场景的 AI 运维能力,可以初步形成供内部使用的学件 3)有由多个单场景 AI 运维模块串联起来的流程化 AI 运维能力,可以对外提供可靠的运维 AI 学件 4)主要运维场景均已实现流程化免干预AI运维能力,可以对外提供可靠的AIOps服务。5)有核心中枢 AI,可以在成本、质量、效率间从容调整,达到业务不同生命周期对三个方面不同的指标要求,可实现多目标下的最优或按需最优。图 3-1 AIOps 能力分级 学件,亦称 AI 运维组件,类似程序中的 API 或公共库,但 API 及公共库不含具体业务数据,只是某种算法,而 AI 运维组件(或称学件),则是在类似 API 的基础上,兼具对某个运维场景智能化解决的“记忆”能力,将处理这个场景的智能规则保存在了这个组件中。这个智能规则是在一定量的数据下学习而来的,且具有“可重用”,“可演进”,“可了解”的特性,既可共享由专家利用数据训练的算法,又可保护数据和隐私。企业级 AIOps 实施建议白皮书 12 copyrightGREATOPS 高效运维社区“学件”(Learnware)一词由南京大学周志华老师原创,学件(Learnware)=模型(model)+规 约(specification),具 有 可 重 用、可 演 进、可 了 解 的 特 性。很多人可能在自己的应用中已经建立了类似的模型,他们也很愿意找到一个地方把这些模型分享出去。这样一来,一个新用户想要应用,也许不用自己去建立一个,而是先到“学件”市场上找一找有没有合适的,拿来直接或修改后使用。学件基于专家基础上建立,所以比较容易得到专家级的结果,又因为共享出来的是模型,所以避免了数据泄露和隐私泄露的问题。基于上述 AIOps 能力分级,对应的 AIOps 能力框架如下。图 3-2 AIOps 能力框架 相关关键运维场景的 AIOps 演进如下。企业级 AIOps 实施建议白皮书 13 copyrightGREATOPS 高效运维社区 2 图 3-3 关键运维场景的 AIOps 演讲 2 “可重用”的特性使得能够获取大量不同的样本;“可演进”的特性使得可以适应环境的变化;“可了解”的特性使得能有效地了解模型的能力。企业级 AIOps 实施建议白皮书 14 copyrightGREATOPS 高效运维社区 4、AIOps 平台能力体系 4、AIOps 平台能力体系 AIOps 工作平台能力体系主要功能是为 AIOps 的实际场景建设落地而提供功能的工具或者产品平台,其主要目的是降低 AIOps 的开发人员成本,提升开发效率,规范工作交付质量。AIOps平台功能与一般的机器学习(或者数据挖掘)平台极为类似,此类产品国外的比如Google 的 AutoML(https:/ 4-1 AIOps 平台功能模块 企业级 AIOps 实施建议白皮书 15 copyrightGREATOPS 高效运维社区 图 4-2 AI 建模服务能力 如上图 4-1、图 4-2,具体的工具或者产品应具备以下功能或模块:1)交互式建模功能:该功能支持用户在平台上交互式的进行模型的开发调试,通过简单的方法配置完成模型的构建。2)算法库:用户可以在算法库中找到常见常用的算法直接使用,算法按照用途分类,以供用户方便的使用。3)样本库:样本库用于管理用户的样本数据,供用户建模时使用,支持样本的增删改查等基本操作。4)数据准备:该功能支持用户对数据进行相关的预处理操作,包括关联、合并、分支路由、过滤等。5)灵活的计算逻辑表达:在基本常用的节点功能之外,用户还需要自由的表达一些计算逻辑,该需求主要是通过让用户写代码或表达式来支持。6)可扩展的底层框架支持:平台本身要能够灵活的支持和兼容多种算法框架引擎,如Spark、TensorFlow 等,以满足不同的场景以及用户的需求。7)数据分析探索:该功能是让用户能够方便快捷地了解认识自己的数据,用户只有基于对数据充分的认识与理解,才能很好的完成模型的构建。企业级 AIOps 实施建议白皮书 16 copyrightGREATOPS 高效运维社区 8)模型评估:对模型的效果进行评估的功能,用户需要依据评估的结论对模型进行调整。9)参数以及算法搜索:该功能能够自动快速的帮助用户搜索算法的参数,对比不同的算法,帮助用户选择合适的算法以及参数,辅助用户建模。10)场景模型:平台针对特定场景沉淀的解决方案,这些场景都是通用常见的,用户可以借鉴参考相关的解决方案以快速的解决实际问题 11)实验报告:模型除了部署运行,相关挖掘出来的结论也要能够形成报告,以供用户导出或动态发布使用。12)模型的版本管理:模型可能有对个不同的版本,线上运行的模型实例可能分属各个不同的版本,版本管理支持模型不同版本构建发布以及模型实例版本切换升级等。13)模型部署应用:模型构建完成后需要发布应用,模型部署应用功能支持模型的实例化,以及相关计算任务的运行调度管理。14)数据质量保障:全链路的数据监控,能够完整的掌控数据的整个生命周期,具备对丢失的数据执行回传补录的能力,保障数据的可用性。企业级 AIOps 实施建议白皮书 17 copyrightGREATOPS 高效运维社区 5、AIOps 团队角色 5、AIOps 团队角色 图 5-1 AIOps 团队角色及和外部的协同关系 AIOps团队内部人员根据职能可分为三类团队,分别为运维工程师团队、运维开发工程师团队和运维 AI 工程师团队,他们在 AIOps 相关工作中分别扮演不同的角色,三者缺一不可。5.1 运维工程师 5.1 运维工程师 能从业务的技术运营中,提炼出智能化的需求点。在开发实施前能够考虑好需求方案,规范数据格式。前期可以通过仿真手法探索和验证方案可行性,起草合适的算法方案。5.2 运维开发工程师 5.2 运维开发工程师 负责进行平台相关功能和模块的开发,以降低用户使用门槛,提升用户使用效率,并且将运维数据工程师交付的数据通过友好的方式展现给用户。根据企业 AIOps 程度和能力的不同,运维开发工程师中的运维自动化平台开发和运维数据平台开发的权重不同。5.3 运维 AI 工程师 5.3 运维 AI 工程师 企业级 AIOps 实施建议白皮书 18 copyrightGREATOPS 高效运维社区 针对来自于运维工程师和算法方案进行理解和梳理,完成最终落地方案的输出工作;在工程落地上能够考虑好健壮性、鲁棒性、敏捷性等,合理拆分任务,保障成果落地,以提升最终业务运营质量。企业级 AIOps 实施建议白皮书 19 copyrightGREATOPS 高效运维社区 6、AIOps 常见应用场景 6、AIOps 常见应用场景 AIOps 围绕质量保障、成本管理和效率提升的基本运维场景,逐步构建智能化运维场景。在质量保障方面,保障现网稳定运行细分为异常检测、故障诊断、故障预测、故障自愈等基本场景;在成本管理方面,细分为指标监控,异常检测,资源优化,容量规划,性能优化等基本场景;在效率方面,分为智能预测,智能变更、智能问答,智能决策等基本场景(注:三者之间不是完全独立的,是相互影响的,场景的划分侧重于主影响维度)。无论是效率提升,质量监控,还是成本优化,都离不开最基础的数据采集,它是整个 AIOp 的基石。AIOps 提高运维生产力的一种方式就是把质量处理流程中的人力部分尽可能的都替换成机器来做。在机器的分析过程中,系统运行过程中的每一个部件都需要数据支持。无论是海量数据采集、还是数据提取方面都离不开大数据技术。从数据采集的层面来看,运维数据的采集往往是实时的,数据采集端需要具备一定分析能力,综合考虑用户流量、隐私,服务器压力等多个因素,尽可能的降低无效数据的采集,增加有价值信息的上报。从数据提取的层面来看,运维的数据是多样化的,历史数据,流数据,日志数据、网络数据、算法数据、文本和 NLP 文档数据,以及 APP 数据、浏览器数据、业务系统运营指标数据等,从这些海量的数据中提取出正真有价值的指标化数据并可视化是进一步分析决策的前提条件。而成本优化和效率的提升同样离不开数据的支撑。例如,开始实施成本优化的 AIOPS前,需要尽可能多的收集目前的服务器,网络设备,应用服务,数据库等的性能信息,应用日志信息,tracing 信息,以便对成本优化的效果进行评估。例如,在搭建智能客服机器人的时候,就需要提供充足的问题库和相应的答案才能够建立好一个较优的模型。图 6-1 AIOps 常见应用场景枚举 以下为各个方向应用场景的能力描述。企业级 AIOps 实施建议白皮书 20 copyrightGREATOPS 高效运维社区 效率提升方向 质量保障方向 成本管理方向 第一阶段(尝试应用)在这个阶段,尝试在变更,问答,决策,预测领域使用人工智能的能力,但是并没有形成有效的单点应用,这个阶段可以聚焦于数据采集和可视化 在这个阶段,没有成熟的单点应用,主要是手动运维、自动化运维和智能运维的尝试阶段,这个阶段可以聚焦于数据采集和可视化 在这个阶段,运维的成本管理方向还在尝试引入人工智能,但是并没有成熟的单点应用,这个阶段可以聚焦于数据采集和可视化 第二阶段(单点应用)在这个阶段,在一些小的场景下,人工智能已经可以逐步发挥自己的能力,包括智能变更,智能问答,智能决策,智能预测 在这个阶段,在一些单点应用的场景下,人工智能已经开始逐步发挥自己的能力,包括指标监控,磁盘,网络异常检测等 在这个阶段,在一些小的场景下,人工智能已经开始逐步发挥自己的能力,包括成本报表方向,资源优化,容量规划,性能优化等方向 第三阶段(串联应用)在这个阶段,人工智能已经将单点应用中的一些模块串联起来,可以结合多个情况进行下一步的分析和操作 在这个阶段,人工智能已经将第二阶段(单点应用)中的一些模块串联在一起,可以综合多个情况进行下一步的分析和操作,包括多维下钻分析寻找故障根因等方向 在这个阶段,人工智能已经将单点应用中的一些模块串联在一起,可以根据成本、资源、容量、性能的实际状况进行下一步的分析和操作 第四阶段(能力完备)在这个阶段,人工智能能力完备,已经可以基于实际场景实现性能优化,然后进行预测,变更,问答,决策等操作 在这个阶段,人工智能已经基于故障的实际场景实现故障定位,然后进行故障自愈等操作。比如根据版本质量分析在这个阶段,人工智能的能力已经完备,能够实现基于成本和资源的实际场景实现成本的自主优化,然后进行智能改进的操作 企业级 AIOps 实施建议白皮书 21 copyrightGREATOPS 高效运维社区 推断是否需要版本回退,CDN 自动调度等 第五阶段(终极 AIOps)在这个阶段,人工参与的成分已经很少,性能优化等整个流程由智能大脑统一控制,并由自动化和智能化自主实施 在这个阶段,人工参与的部分已经很少,从故障发现到诊断到自愈整个流程由智能大脑统一控制,并由自动化和智能化自主实施 在这个阶段,人工参与的成分已经很少,从成本报表方向,资源优化,容量规划,性能优化性等整个流程由智能大脑统一控制,由自动化自主实施 表 6-1 常见应用场景的分类分级能力概述 6.1 效率提升方向 6.1 效率提升方向 运维效率的提升是运维系统的主要目标之一,自动化运维带来的核心价值之一就是效率提升,而 AIOps 会推动运维效率提升到一个新的高度。其本质的原因是自动化运维依然是人+自动化工具的模式,人工决策与实施依然是主要驱动力,但人会受到自身生理极限以及认知局限的限制,无法持续地面向大规模、高复杂性的系统提供高质量的运维效率。而 AIOps 系统通过深度洞察能力为运维提供持续的,高质量的效率运转。图 6-2 举例(大规模、高复杂性的系统运维,超越人+工具模式的承载力)企业级 AIOps 实施建议白皮书 22 copyrightGREATOPS 高效运维社区 图 6-3 效率提升方向的常见应用场景 质量保障是运维的基本场景之一,随着业务的发展,运维系统也在不断的演进,其规模复杂度、变更频率非常大,技术更新也非常的快,与此同时,软件的规模、调用关系、变更频率也在逐渐增大。在这样背景下,需要 AIOps 提供精准的业务质量感知、支撑用户体验优化、全面提升质量保障效率。6.1.1 智能变更 6.1.1 智能变更 变更是运维中的一种常见场景,DevOps 通过串联变更的各个环节形成流水线提升了效率,而 AIOps 不仅为变更流水线的各个环节引入了“系统决策”,也能更加持续地,精确地提供高效的变更质量管理。智能变更的系统决策来源于运维人员的运维经验,这些经验通过机器学习,知识图谱等手段转化成系统可学习和实施的数据模型。AIOps 的智能变更可以应对以下场景:1)频繁变更,高速发布的场景:运维人员会由于生理极限以及认知的局限难以应付这样的场景。例如,每天从 1 到 10 次变更时,运维人员通过自动化运维系统尚可应对,如果由 10 次升级到 100 次,甚至更多,就难以高效的,准确的应对了。AIOps 可以根据每次变更的目标,状态,上下文在变更过程中及时做出系统决策,帮助加速变更过程以及规避变更可能带来的问题。2)大规模并行变更:随着微服务架构的普及,实际上服务节点会成倍增长,原有几个或几十个节点,可能变成几千甚至上万的规模。人工驱动工具的模式不但受制于人的精力而被迫“串行化”,也制约了变更过程的监察以及变更结果验证的准确性。AIOps则可以并行驱动更大规模的变更过程,而且变更监察以及结果验证都会被更准确的完成。6.1.2 智能问答 6.1.2 智能问答 企业级 AIOps 实施建议白皮书 23 copyrightGREATOPS 高效运维社区 运维的目标是为了支持稳定,可靠的业务运行,而业务与业务之间既可能有相似性,又可能有差异性。但由于知识背景和对业务的认知差异,往往出现以下情况:1)不同的业务人员或开发人员往往会询问运维人员一些相似的问题,运维人员的答案也是非常类似的,但人力被重复消耗。2)面对同一个问题,运维人员的回答可能会出现差异(例如表达方式,措辞等),缺乏标准化,可能造成误解。AIOps智能问答系统通过机器学习,自然语言处理等技术来学习运维人员的回复文本,构建标准问答知识库,从而在遇到类似问题的时候给出标准的,统一的回复。这样,不仅可以有效地节省运维人员的人力成本,还能够使得提问得到更加及时的回复。6.1.3 智能决策 6.1.3 智能决策 许多运维管理工作都需要各种各样的决策,包括扩容,缩容,制定权重,调度,重启等内容。那么可能面临如下问题:1)运维人员可以根据自己的业务经验制定相应的决策。但是,不同的业务有着各自的特点,不同的运维人员也有着自己的业务经验。如何将运维人员的这些经验有效地传承是个问题。2)人的认知局限性,运维场景的复杂性可能导致最有经验的运维人员遗漏掉某些“不起眼”的“重要细节”,显然,准确的决策还依赖足够充足的细节。AIOps智能决策一方面可以将运维人员的决策过程数据化,构建决策支持知识库,从而实现经验积累;另一方面,由于系统掌握了从全局到细节的数据,再结合决策支持知识库,可以为更加准确的决策提供最有力的支撑。6.1.4 容量预测 6.1.4 容量预测 运维工作不仅仅包含对当下的决策和处理,往往还需要根据业务的诉求对未来做出合理的规划,包括扩容的预测,缩容的预测等。由于对未来的规划时常存在不确定性,那么规划过程往往需要大量的数据来支持,还需要大量的推演来确定。而人工预测的方式,一方面需要投入大量人力,另一方面运维人员的能力可能存在差异,使得推演的结果品质不尽一致。AIOps智能预测借助大数据和机器学习能力,结合运维人员的有效评估经验,甚至业务发展模式以及政策等,对目标场景实现高效的推演过程,最终使预测结果趋近合理范围。这样一企业级 AIOps 实施建议白皮书 24 copyrightGREATOPS 高效运维社区 来,不但是人力得以节省,关键在于由于预测效率的提升,使得过去难以重复,耗时耗力的人工预测过程,变得可以应需而变,不断修正预测结果,最终使业务诉求获得最佳预测收益。6.2 质量保障方向 6.2 质量保障方向 质量保障是运维的基本场景之一,随着业务的发展,运维系统也在不断的演进,其规模复杂度、变更频率非常大,技术更新也非常的快,与此同时,软件的规模、调用关系、变更频率也在逐渐增大。在这样背景下,需要 AIOps 提供精准的业务质量感知、支撑用户体验优化、全面提升质量保障效率。图 6-4 质量保障方向常见应用场景 6.2.1 异常检测 6.2.1 异常检测 运维系统中常见的两大类监控数据源是:指标和文本。前者通常是时序数据,即包含指标采集时间和对应指标的值;后者通常是半结构化文本格式,如程序日志、Tracing等。随着系统规模的变大、复杂度的提高、监控覆盖的完善,监控数据量越来越大,运维人员无法从海量监控数据中发现质量问题。智能化的异常检测就是要通过 AI 算法,自动、实时、准确地从监控数据中发现异常,为后续的诊断、自愈提供基础。异常检测的常见任务包括对数据源的异常检测,保证数据质量,以及对指标和文本的异常检测。数据源异常检测数据源异常检测:数据源会因为一些不可避免的原因存在一些异常数据,这些异常数据占比虽然很低,但是往往会引起整个指标统计值的波动,使得统计结果偏离真实的用户体验。AIOps需要自动、实时的动态设置阈值,去除数据源中的异常数据干扰,并能够区分系统真正发生异常时候的故障数据和数据源本身的异常数据,这种判断依赖于一些外部信息。指标异常检测:指标异常检测:包括单指标异常检测及多指标异常检测。其中,单指标异常检测:时间序列指标的异常检测是发现问题的核心环节,传统的静态阈值检测为主的方式,阈值太高,漏告警多,质量隐患难以发现,阈值太低,告警太多引发告警风暴,干扰业务运维人员的判断。AIOps通过机器学习算法结合人工标注结果,实现自动学习阈值、自动调参,提高告警的精度和企业级 AIOps 实施建议白皮书 25 copyrightGREATOPS 高效运维社区 召回率,大幅度降低人工配置成本。其中,多指标异常检测:运维过程中有些指标孤立来看可能并没有异常,但是综合多个指标来看,可能就是异常的。有些单指标表现是异常的,但是综合多个指标来看可能又是正常的。AIOps需要能够综合多个指标综合评判系统指标异常,提高告警的准确性。文本异常检测:文本异常检测:文本日志常是在特点条件下触发生成的,并遵循一定的模板,即半结构化文本。传统的日志检测有两种方式:1、根据日志级别(如 Info、Warning、Critical)进行报警,但由于其设定不准确,或不满足实际需要,导致准确性差;2、通过设置规则,匹配日志中特定字符串进行报警,但该方法依赖依赖人工经验,且只能检测已知和确定模式的异常。AIOps需要通过自然语言处理、聚类、频繁模式挖掘等手段,自动识别日志出现的反常模式;结合人工反馈和标注,不断进行优化、完善。6.2.2 故障诊断 6.2.2 故障诊断 异常检测实现了运维人员对数据的感知,有了数据之后,智能分析可以进一步解放运维人力,提高运维效率,故障诊断是智能分析的核心部分,主要包括基于人工故障库的故障诊断和基于数据挖掘的故障诊断。基于人工故障库的故障诊断基于人工故障库的故障诊断:日常运维过程中,运维人员积累了大量的人工经验,运维过程中的大部分故障都是重复的、人工能够识别的异常。重复问题的定位浪费了大量的人力,而且人工确认过程往往是比较滞后的。AIOps把人工专家经验固化下来,对常见问题实现分钟级内自动诊断,运维人员收到的告警信息中,就需要包括故障定位的结果信息。基于数据挖掘的故障诊断:基于数据挖掘的故障诊断:人工经验可能存在偏差,人工认为的原因可能并不是问题的根因,当有些故障首次发生没有人工经验可以借鉴的时候,故障根因也难以定位。尤其随着微服务的发展,业务的组网变得更加复杂,模块多带来的消息路由多、依赖多,问题的定界定位分析更为困难,人工故障决策效率挑战巨大。对于已知故障,AIOps 能够综合故障数据和人工经验自动提取故障特征,生成故障特征库,自动匹配,自动定位故障;对于未知故障,AIOps需要根据故障特征推演出可能的故障原因,并在人工确认后加入的故障特征库。6.2.3 故障预测 6.2.3 故障预测 故障的出现一般不是突然的,就比如网络故障来说,往往从丢包开始到网络不可用是有一个演变的过程,依据海恩法则:每一起严重事故的背后,必然有 29 次轻微事故和 300 起未遂先兆以及 1000 起事故隐患,开展主动健康度检查,针对重要特性数据进行预测算法学习,提前企业级 AIOps 实施建议白皮书 26 copyrightGREATOPS 高效运维社区 诊断故障,避免服务受损;常见场景:磁盘故障预测、网络故障预测(根据交换机日志的交换机故障预测),内存泄露预测等等。6.2.4 故障自愈 6.2.4 故障自愈 智能分析实现了故障的诊断和预测,智能执行根据智能分析的结果实现故障自愈。传统的故障自愈的决策主要靠人的经验,人的经验能够覆盖的故障范围是有限的,而且人工无法保证 7*24 随时可以立即决策与处理。AIOps 能够提供完善的自动化平台,在故障智能分析之后,自动决策,实现自愈,常见场景:版本升级回退,DNS 自动切换,CDN 智能调度,智能流量调度等。故障自愈是根据故障诊断的结果的输出(问题定位和根因分析),进而进行影响评估,决定“解决故障”或“恢复系统”的过程。影响评估是对故障之后所产生的影响范围(系统应用层面,业务执行层面,成本损失层面等等)输出评估结果,并根据这个评估来决定要采用什么解决手段,甚至生成解决手段的执行计划。6.3 成本管理方向 6.3 成本管理方向 每个公司的经营都离不开成本管理,成本管理包括成本核算,成本分析,成本决策,成本控制。本文不对财务上的成本管理做过多的阐述,主要从 AIOps 方向上在成本分析和决策中能发挥的作用来举例说明。AIOps 通过智能化的资源优化,容量管理,性能优化实现 IT 成本的态势感知、支撑成本规划与优化、提升成本管理效率。图 6-5 成本管理方向的常见应用场景 6.3.1 成本优化 6.3.1 成本优化 在成本优化方向,需要采取高可用的设计,提供更加合理的服务,包括接入层,业务层,存储层等。在接入层需要提供合理的健康检查机制,更加智能的负载均衡算法,限定流量等工作。在业务层不仅需要去除 DB 的强依赖,使用合理的降级,还要进行合理的压测,监控以企业级 AIOps 实施建议白皮书 27 copyrightGREATOPS 高效运维社区 及动态的负载均衡。在存储层需要做的事情是容灾等关键工作。这样的话,可以使得内部数据的质量得到大量提升,外部数据的优先接入和动态选择。对于设备采集的周期控制这个问题来说,过晚的设备采购可能会影响到业务的正常上线或扩展,而过早的采购也可能造成成本的浪费。于是,AIOps 需要建立合理的模型并建立更好的规划,并据此计算更准确的设备采购计划,也能对成本进行更好的控制。6.3.2 资源优化 6.3.2 资源优化 公司的运营成本优化项目一直是公司成本预算的关键一步。优化问题包括设备的优化,带宽,码率的优化等等。只有进行了合理的资源优化,才能够使得公司的成本得到有效的控制。不同的服务的资源消耗类型是不一样的,包括计算密集型,包括存储密集型等等,而对于同一个服务在不同的时间点资源消耗也是不一样的。对于一个企业来说,识别不同服务的资源消耗类型,识别每个服务的资源瓶颈,实现不同服务间的资源复用是降低成本的重要环节。根据资源应用的性能指标,可以大致分类成以下类别:1)计算密集型:CPU 使用率较高,常见于需要大量计算资源的搜索,推荐,数学计算等场景中;2)内存密集型:占用的内存使用率较高,如缓存服务;3)IO 密集型:网络 IO 繁忙或者磁盘 IO 操作繁忙,常见于爬虫,消息管道,分布式存储等服务中。大型互联网公司里动辄上千上万的应用数,很容易有应用因为业务变化已经访问量不断缩减甚至已经下线,但是线上还占用着大量的资源,通过对应用的性能指标分析,筛选出各项性能指标都很低的应用,就可以识别出这些“被遗忘”的应用,就可以跟业务负责人进行核对进行缩容或者下线。目前大部分公司都已经使用了虚拟化或者 docker 技术,同一个物理机上的不同虚拟机或容器已经进行了很好的细粒度资源分配和隔离,所以对于同一台物理机可以进行混合部署不同类型的应用,如计算密集型应用,存储密集型应用,IO 密集型应用混部在同一台物理机上,以提高更大的资源利用率,甚至一定量的“超卖”(通过共享部分资源,实现分配的总的资源数超过物理机的资源数)。对于一些灵活的计算任务,如 Spark,Storm 等计算类任务,还可以使用按时分配的策略,如白天运行在部分服务器上,而且夜间需要运行大批量计算的报表等任务时,利用业务应用夜间资源使用率低的特点,把部分任务分配到业务应用所在的服务器上运行,充分利用这些业务应用的服务器的计算资源,提高整体利用率。企业级 AIOps 实施建议白皮书 28 copyrightGREATOPS 高效运维社区 AIOps 通过密度管理、特性管理、碎片管理、木桶管理等方法,优化企业不同服务器的配比,发现并优化资源中的短板,提供不同服务的混合部署建议,最终实现智能化降成本方案分析服务。6.3.3 容量规划 6.3.3 容量规划 对于一个企业来说,容量的需求和业务的发展紧密相关。为了保障产品的正常运营,就需要对容量进行合理的预估。如果容量预留过多,则会造成资源浪费;反之,如果容量预留过少,则容易引发现网故障。而传统的基于业务运维人员人工经验容量预测手段不是十分有效,甚至大多数是“拍脑袋”的结果。不准确的容量预估也使得运维缩容和扩容显得被动。通常来说,大型的互联网公司都会有规模庞大的服务器集群,业务规模增加,新业务上线,过保机器替换都会导致有大量新采购的机器需要上线并扩容到集群中,对于一些特殊场景,如电商网站的大促活动,社交类网站的热点新闻事件等,容量规划更是一件必不可少的考验。活动之后资源往往又需要进行回收缩容操作,以节省运行的成本。以往的容量规划往往是靠人工经验来操作,现今 AIOps 将根据业务目标的需求,结合服务数据,整合运维人员的业务经验,建立精准容量规划模型,从而精确预测各个业务的容量,让其使用率达到最优。6.3.4 性能优化 6.3.4 性能优化 性能的调优一直是运维的重要一环。如果性能优化得当,则会减少实际的运算量,减少内存方面的滥用,提升服务器的性能。运维人员在其中并不能保证及时发现所有潜在的性能问题,很多时候也不知道什么的系统配置才是最优的系统配置,什么时候的权重配比才能够达到最佳的效果。AIOps 能够根据现网的实际情况,进行智能地调整配置,智能发现性能优化策略,提供智能化的优化服务。企业级 AIOps 实施建议白皮书 29 copyrightGREATOPS 高效运维社区 7、AIOps 实施及关键技术 7、AIOps 实施及关键技术 为了实现成本管理、效率提升、质量保障的场景,根据 Gartner 的定义,AIOps 产品或平台应包含下图所示的要素:1)数据源:大量并且种类繁多的 IT 基础设施 2)大数据平台:用于处理历史和实时的数据 3)计算与分析:通过已有的 IT 数据产生新的数据,例如数据清洗、去除噪声等 4)算法:用于计算和分析,以产生 IT 运维场景所需要的结果 5)机器学习:这里一般指无监督学习,可根据基于算法的分析结果来产生新的算法 图 7-1 AIOps 产品或平台要素图 说明3 7.1 数据采集 7.1 数据采集 数据采集负责将智能运维所需要的数据接入至 AIOps 平台,所接入的运维数据类型一般包括(但不限于)日志数据,性能指标数据,网络抓包数据,用户行为数据,告警数据,配置管理数据,运维流程类数据等。数据采集方式可分为无代理采集以及有代理采集两种。其中无代理采集为服务端采集,支持 SNMP,数据库 JDBC,TCP/UDP 监听,SYSLOG,Web Service,消息队列采集等主流采集方式。有代理采集则用于本地文件或目录采集,容器编排环境采集,以及脚本采集等。说明3 本图来源 https:/ 企业级 AIOps 实施建议白皮书
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 行业资料 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服