【AICon】AI 基础设施、LLM运维、大模型训练与推理,一场会议,全方位涵盖! >>> 了解详情
写点什么

【重磅】百度智能运维工程架构

  • 2019-09-10
  • 本文字数:3231 字

    阅读完需:约 11 分钟

【重磅】百度智能运维工程架构

为什么要做智能运维

百度云智能运维团队在运维工具和平台研发方向历史悠久,支撑了全百度数十万规模的服务器上的运维服务,所提供的服务包括服务管理、资源定位、监控、部署、分布式任务调度等等。最近几年,团队着力于发展智能化运维能力以及 AIOps 产品化建设。


众所周知,百度除了搜索业务之外,还有很多其他的业务线,有像地图、百科、知道、网盘这样的老牌业务,也有诸如像教育、医疗这样的新兴业务,每个业务在规模上、服务架构上都有很大差异。业务本身对稳定性的要求很高,需要保持 99.995%的高可用,同时在业务上云的背景下,虚拟化、混合云等都给我们带来了新的挑战。



图 1 百度运维发展历程


百度运维经历了从脚本 &工具、基础运维平台、开放可定制运维平台到我们现在的智能运维平台,这样四个阶段的转变。过去运维的核心目标是提升效果,比如持续交付的速度、服务稳定性、运营成本等。经过这么多年的建设,整个运维行业已经非常成熟,而我们所支撑业务规模仍在不断增长,越来越多的运维场景和问题无法用传统方法来解决,而运维效率也难以继续支撑业务规模的快速扩张,所以我们更加关注怎么样解放运维自身的效率,以及解决传统运维方法(人工、自动化)所解决不了的问题。


这就好比从马车到汽车是为了提升运输效率,而到汽车已经接近饱和的时候,我们又希望用自动驾驶把驾驶员从开车这项体力劳动中解放出来,不仅可以增加运行效率,同时也可以减少交通事故率,这也是我们对智能运维的诉求。

发展:AIOps,从理念到落地

2016 年 Gartner 报告中提出了 AIOps 概念,也就是 Algorithmic IT Operations;基于算法的 IT 运维,主要指用大数据、机器学习驱动自动化、服务台、监控这些场景下的能力提升。


我们从 2014 年开始做智能运维方面的探索,最开始也是集中在监控指标分析、报警分析、故障根因分析、性能和成本分析这些方面,到 2016 年我们已经完成将 AI 应用于完整的运维平台研发的论证。在我们语义下的 AIOps,目标是将人的知识和运维经验与大数据、机器学习技术相结合,开发成一系列的智能策略,融入到运维系统中。用这样的智能运维系统去完成运维任务,是我们所认为的 AIOps,也就是 Artificial Intelligence IT Operations。有意思的是,2017 年之后的 Gartner 报告也将 AIOps 的概念改成了 Artificial Intelligence IT Operations。



图 2 AIOps 整体架构


我们认为 AIOps 中有三部分不可或缺,一个是运维开发框架,这个是我们后续智能运维研发的骨架,第二个是运维知识库,这是让骨架能与我们真实线上环境关联起来的关键因素,起到了血肉的作用,让骨架能动起来。而最后一个则是运维策略库,这是运维的大脑,控制着运维平台的行为。


使用运维开发框架实现的运维程序,我们称其为运维机器人。运维机器人可以在多种不同的运维场景下提供多样的运维能力,服务不同类型的业务和用户。

框架:新的运维开发模式


图 3:运维开发框架


运维开发框架基于这样一个抽象,就是如果我们把线上环境看做一个黑盒服务,那么我们对它的操作无非读写两类,所谓的写也就是操作控制流,是那种要对线上状态做一些改变的操作,我们常说的部署、执行命令,都属于这一类;另一类是读,指的是数据流,也就是要从线上获取状态数据,并进行一些聚合统计之类的处理,我们常说的指标汇聚、异常检测、报警都在这个里面。通过运维知识库,可以在这两种操作的基础上,封装出多种不同的运维机器人,对业务提供高效率、高质量以及高可用方面的能力。


根据操作流和数据流的不同,我们把框架分成了两部分,最基础的是运维执行框架,在这之上,加上分布式计算组件的支持,我们还建设了用于运维大数据计算的计算框架。

1 工程化

运维开发框架给开发者提供一系列的开发套件,除了包含了一系列的基础能力,还包含了一个标准的运维工程研发流程。


在过去,运维研发采用简单的开发-使用方式,缺少必要的测试维护。而现在,在代码开发阶段,可以通过执行框架,用统一的操作接口库提升研发效率。在测试阶段,开发套件提供了单测和仿真系统,简化测试环境搭建。在上线后的阶段,通过状态服务和托管系统,可满足在各灾难场景下的运维机器人的自维护。

2 组件化

运维开发框架通过三种不同的组件功能组合成运维机器人。分别是感知器、决策器和执行器。这三种组件针对各自使用场景,提供了多种架构能力。



图 4 运维开发框架的组件


  • 感知器运维机器人的眼睛和耳朵感,就像人有两个眼睛和两个耳朵一样。运维机器人也可以挂载多个感知器来获取不同事件源的消息,比如监控的指标数据或者是报警事件,变更事件这些,甚至可以是一个定时器。这些消息可以以推拉两种方式被感知器获取到。这些消息也可以做一定的聚合,达到阈值再触发后续处理。

  • 决策器是运维机器人的大脑,所以为了保证决策的唯一,机器人有且只能有一个决策器。决策器也是使用者主要要扩展实现的部分。除了常见的逻辑判断规则之外,未来我们还会加入决策树等模型,让运维机器人自主控制决策路径。

  • 执行器是运维机器人的手脚,所以同样的,执行器可以并行的执行多个不同的任务。执行器将运维长流程抽象成状态机和工作流两种模式。这样框架就可以记住当前的执行状态,如果运维机器人发生了故障迁移,还可以按照已经执行的状态让长流程断点续起。

知识库:运维的知识图谱

知识库是智能运维架构中非常重要的一部分:所有要处理的数据都来自知识库,以及所有处理后的数据也都会再进入到知识库中。知识库由三部分组成,分别是元数据、状态数据和事件数据。持续的数据建设,是智能运维建设的关键。



图 5:运维知识库概览


考虑到未来需要对接不同的内部云平台和公有云平台,所以我们的运维数据也需要从底层的多种不同的运维平台中抽取,清洗和做数据的整合。并以尽可能高的时效性提供给平台用户使用。因此我们知识库建设遵照这四个能力指标进行,分别是全、准、新、稳。


由于知识库涉及的存储的内容篇幅太大,并且是相对独立的一块工作,所以这里就不再展开了。

实践:运维机器人

单机房故障自愈是 2017 年我们完成的重点项目,目标是将单机房范围的故障自愈水平普遍提升到 L4 级(整个处理过程,包括决策过程基本无人介入)。当然,另一部分原因是过去一两年发生的几次业界重大线上事故,我们希望可以防微杜渐,进一步提升 MTTR 水平。


相比较原有的单机房故障处理方式,在感知、决策、执行三个方面,L4 级的单机房故障自愈系统效果显著:


1.感知方面,智能异常检测算法替代过去大量误报漏报的阈值检测方法;


2.决策方面,具备全局信息、自动决策的算法组件替代了过去“老中医会诊”的人工决策模式;


3.执行方面,状态机等执行长流程组件的加入,让执行过程可定位、可复用。


目前 L4 级的单机房故障自愈,已经覆盖百度大多数核心业务线,止损效率可做到分钟级,最快秒级止损,较人工止损效率提升 60%-99%。



图 6:单机房自愈效果


图 6 所示,在过去的一次 case 中,北京某处机房掉电,受影响业务线 2min 内即完成止损,对比之前的故障处理方式,止损效率提升非常显著。

总结

随着 AIOps 逐渐走向成熟和产品化,必将有越来越多的运维场景被 AIOps 所变革,而我们,百度云智能运维团队,也希望秉承着这个方向,为行业贡献更多的创新理念、技术和产品,欢迎大家一起加入探讨。


最后,用一句话来总结下工程架构对于智能运维的意义:


框架在手,AI 我有:智能时代,框架会越来越重要,从机器学习框架 TensorFlow 到自动驾驶框架 Apollo,概莫能外。


作者介绍:


运小艺,百度云智能运维架构研发负责人,2010 年加入百度,先后负责百度链接库、百度志愿计算、百度统一资源管理的研发,经历过千亿级网页链接的洗礼,也调度过数十万量级的服务器,热衷于直面架构技术挑战,在分布式计算、分布式资源和任务调度方面经验丰富。2015 年转向运维方向,作为智能运维架构方向的技术负责人,致力于为百度智能运维平台和产品提供高性能、高可用、可扩展的系统架构和基础设施。


本文转载自公众号 AIOps 智能运维(ID:AI_Ops)。


原文链接:


https://mp.weixin.qq.com/s/aVOX97Q6k1W6EyH5PI1XkA


公众号推荐:

跳进 AI 的奇妙世界,一起探索未来工作的新风貌!想要深入了解 AI 如何成为产业创新的新引擎?好奇哪些城市正成为 AI 人才的新磁场?《中国生成式 AI 开发者洞察 2024》由 InfoQ 研究中心精心打造,为你深度解锁生成式 AI 领域的最新开发者动态。无论你是资深研发者,还是对生成式 AI 充满好奇的新手,这份报告都是你不可错过的知识宝典。欢迎大家扫码关注「AI前线」公众号,回复「开发者洞察」领取。

2019-09-10 14:492178

评论

发布
暂无评论
发现更多内容

探索云原生技术发展与应用实践,赋能企业数字化转型 | 2023开放原子全球开源峰会云原生分论坛即将启幕

开放原子开源基金会

开源 云原生

波司登云原生微服务治理探索

阿里巴巴云原生

阿里云 微服务 云原生

对线面试官-线程池(二)

派大星

Java 面试题

英特尔持续耕耘锐炫显卡:累计21次驱动更新,支持XeSS游戏达50+

E科讯

【mac/win】navicat安装破解教程 Navicat 16 中文下载

魔仙苹果mac堡

Navicat Premium破解版 Navicat Premium16 navicat数据库 好用的数据库软件

百度商业AI技术创新大赛火热进行中,携手专家大咖一起创新为更好!

百度Geek说

人工智能 AIGC 企业号 5 月 PK 榜

中核集团财务共享迈上新台阶

用友BIP

财务共享

Flink CEP 在抖音电商的业务实践|电商行业实践专栏上线

Apache Flink

大数据 flink 实时计算

从Google、创业再到字节跳动,我在开源领域的实践与思考

开源雨林

创业 字节跳动 开源治理

凝心聚力,共创未来 | 2023 开放原子全球开源峰会 OpenCloudOS 社区年会即将启幕

开放原子开源基金会

开源 云原生技术 OpenCloudOS 社区

【活动回顾】Databend 数据库表达式框架设计与实现 @GOTC

Databend

云原生数据库厂商拓数派加入龙蜥社区,打造多样化的数据底座

OpenAnolis小助手

开源 操作系统 龙蜥社区 CLA 拓数派

速来!TDengine 六周年线上生日趴,“送”周边大礼包啦

爱倒腾的程序员

时序数据库 ​TDengine taosdata

一分钟跑出 AI 图像的生成平台

CODING DevOps

AI Cloud Studio 云端IDE

如何选择一款低代码平台?需要关注哪些细节?

这我可不懂

低代码 低代码平台 JNPF

看数智平台如何助力企业实现产业互联

用友BIP

数智平台

常用的表格检测识别方法——表格结构识别方法 (下)

合合技术团队

人工智能 深度学习 文字识别 表格检测

XMind2023思维导图软件 完美永久激活版 支持M1/M2

魔仙苹果mac堡

XMind下载 XMind思维导图 XMind2023新功能 XMind永久激活版

火山引擎DataLeap的Catalog系统搜索实践 (二):整体架构

字节跳动数据平台

元数据 catalog DataLeap 文档检索

创建编辑音频Audition 2022(AU2022)中文破解安装

魔仙苹果mac堡

AU2022破解安装教程 Audition 2022下载 Audition 2022中文版 Adobe AU

抖音超火的文本生成图像的软件AI Photo for mac直装版

魔仙苹果mac堡

AI Photo下载 AI Photo破解版 文本到图像生成器 超火的抖音软件推荐

海量数据运维要给力,GaussDB(for Cassandra)来助力

华为云开发者联盟

数据库 后端 华为云 华为云开发者联盟 企业号 6 月 PK 榜

Desktop Goose for Mac(抖音桌面宠物鹅) v0.22激活版

魔仙苹果mac堡

mac软件下载 抖音桌面宠物鹅 桌面宠物软件推荐 Desktop Goose mac破解版

支持神经滤镜Photoshop 2023 (ps 2023)Mac v24.5/24.6b中文激活

真大的脸盆

Mac Mac 软件 ps神经滤镜 photoshop神经滤镜

累计下载破 10 万,阿里云 ACR 制品中心 5 月最受欢迎镜像排行榜

阿里巴巴云原生

阿里云 阿里云云原生 容器镜像服务

Arm NN 成功适配 openEuler Embedded,提供高性能神经网络推理能力

openEuler

Linux 操作系统 openEuler risc-v embedded

索信达“数据资产管理解决方案”全解析

索信达控股

SeaTunnel毕业!首个国人主导的数据集成项目成为Apache顶级项目

Apache SeaTunnel

大数据 开源 数据集成 国产开源 Apache SeaTunnel

共建、共享开源EDA共性技术框架 | 2023开放原子全球开源峰会开源EDA分论坛即将启幕

开放原子开源基金会

开源 EDA 开放原子

软件测试/测试开发丨Web自动化测试常见控件交互方法

测试人

软件测试/测试开发丨Selenium Web浏览器控制

测试人

程序员 软件测试 自动化测试 测试开发

【重磅】百度智能运维工程架构_软件工程_运小艺_InfoQ精选文章