写点什么

百度自动化运维的演进(一):聊聊百度自动化运维

  • 2019-09-09
  • 本文字数:1714 字

    阅读完需:约 6 分钟

百度自动化运维的演进(一):聊聊百度自动化运维

百度运维部于 2008 年正式成立,截至目前共打造了三代运维平台,百度的运维技术也经历了 web 化、开放化、智能化三个阶段。《百度自动化运维的演进》系列文章将分上、下两篇介绍百度自动化运维的演进历程,本篇主要介绍百度运维部对运维、自动化运维的理解与百度自动化运维评价标准,下篇则根据时间脉络介绍百度的三代运维平台。


注:本文所讨论的上下文内,特指互联网服务的运维,而非 IT 系统、IDC 等的运维,或者更具体地,指的是应用运维。

什么是运维

运维,从字面来看,可以将运维分为两部分:

1 运

运,一般的理解是运行,将服务运转起来,以满足用户和客户的需求;进一步的含义还有运筹,即统筹安排资源,提供最优解决方案,以达到效益最大化。

2 维

维,一般的理解是维护,维持并监护服务的运行过程,包括应对服务管理请求和事件;进一步的含义还有维系,或者说连接,特指其起到的承上启下和枢纽作用。


百度百科给出了非常明确的定义: 其核心目标是将交付的业务软件和硬件基础设施高效合理的整合,转换为可持续提供高质量服务的产品,同时最大限度降低服务运行的成本,保障服务运行的安全。


在百度运维部,我们对运维的理解,简单概括就是:确保大家高质量、高效率、低成本地使用百度产品。

什么是自动化运维

什么是自动化运维,答案有很多。这里,我尝试从另外一个角度,什么不是自动化,来尝试回答下:

自动化是达成目标的手段

首先,自动化不是运维的最终目标,而是达成目标的手段;通过自动化我们可以提高服务的可用性,可以加速服务的迭代,可以降低服务运行所花销的成本。

自动化是解决方案和工程

其次,自动化不是将运维人员的工作、行为进行简单封装和串联;而是通过总结、提炼、抽象形成的系统化的解决方案和工程(Engineering)。

自动化实现方法是多样的

再次,自动化的实现方法,不是一成不变的:一方面,我们运维的服务、我们支持的产品和用户都在不断变化(这就是互联网啊);另一方面,我们的自动化实施对象也在随技术能力的发展而不断演进(从自动化执行命令、到自动化感知故障、再到自动化决策规划)。

百度自动化运维的实践历程

百度运维部,于 2008 年正式确立,而运维工程师这个职位,出现得更早些(大概在 2004 年~2005 年),从一开始,运维部就在朝着自动化这个方向努力。

百度自动化运维标准

接下来给大家介绍的内容,是结合了我们多年的实践经验,并参考了 SAE(美国汽车工程师协会)针对自动驾驶所定义的分级标准得来的自动化运维分级标准。


我们也将其分成了 L1~L5 共 5 个层级,不同层级间的区别主要体现在如下 4 个方面的职能是人工还是运维系统实现的:


执行能力(Execution)


这很容易理解,将指令发送到目的端(服务器、设备等)执行并获得执行结果。执行能力是否由系统完成,是最基本的自动化要求,将其定义为 L1(工具辅助的自动化) ~ L2(部分自动化)。


感知能力(Perception)


包括感知服务的运行状态,感知服务的变更需求甚至故障事件,也可以称作理解。感知能力由系统完成后,结合一些固定的条件规则来决策并执行,可以达成 L3(有条件的自动化)。


规划能力(Planning)


根据其对待处理的需求、待解决的问题的感知,以及对运维对象的认知(知识),自主做出解决方案(规划)并在调度控制执行过程中,根据目标和运维对象的状态反馈来适时调整执行规划。规划能力由系统完成后,并由系统辅助人来进行知识、经验的沉淀以补充系统的扩展性,可以处理全部人类已知的运维工作,即 L4(高度自动化)。从 AI 角度看,可以认为到了这个层次的自动化运维系统具有了一定的弱人工智能。


主动学习能力(Proactive Learning)


主要指的是不依赖人,系统可以自行总结、提炼、抽象形成知识和经验的能力。至此,全部的运维工作都可以交由自动化运维系统处理了,即 L5(完全自动化)。从 AI 角度看,可以认为到了这个层次,称之为强人工智能了。

小结

从全局视角审视自动化运维的若干层次及其之间的关系,可以得到下面这张表格:



作者介绍:


运小皮,百度资深运维工程师,负责百度智能运维平台的设计和实施。曾负责网页搜索、移动搜索产品运维和服务高可用、持续部署等技术方向。


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


原文链接:


https://mp.weixin.qq.com/s/gFdz6tdnpw2ICUqNCC-DnA


2019-09-09 14:052311

评论

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

Hybrid app本地开发如何调用JSBridge

甜点cc

JavaScript 前端 Hybrid 10月月更

升级全新网络方案,给你低成本、高性能的裸金属体验

华为云开发者联盟

云计算 后端 华为云 云服务器 企业号十月 PK 榜

热门探讨:为何数字化转型的企业,大都“死”在了黎明前夕?

优秀

数字化转型

在线问题反馈模块实战(十七):实现excel模板在线下载功能

bug菌

springboot 项目实战 10月月更

vue-router学习-1

Studying_swz

前端 10月月更

校招面试真题 | 显式等待与隐式等待的区别?与强制等待的方式分别是什么,有什么区别?

霍格沃兹测试开发学社

“程”风破浪的开发者|我的js学习小技巧

言程序

JavaScript 学习方法 “程”风破浪的开发者

在线问题反馈模块实战(十六)​:实现查详情功能

bug菌

springboot 项目实战 10月月更

浅析HTML页面的生命周期

CoderBin

html 前端 10月月更

如何实现图像人脸融合?

夏夜许游

人工智能 AI 融合 图像人脸

面试官:数据库加了唯一索引,就不会有重复数据了吗???

小小怪下士

Java MySQL 程序员

你应该知道的数仓安全:都是同名Schema惹的祸

华为云开发者联盟

数据库 后端 华为云 企业号十月 PK 榜

详解Native Memory Tracking 追踪区域分析

华为云开发者联盟

开发 华为云 企业号十月 PK 榜

八大排序(下)

lovevivi

c 数据结构 10月月更

八大排序 (上)

lovevivi

c 数据结构 10月月更

在线问题反馈模块实战(十八):实现excel台账文件记录批量导入功能

bug菌

springboot 项目实战 10月月更

uniapp H5端精准定位

源字节1号

软件开发 小程序开发

Vue_cli2和Vue_cli3

Studying_swz

前端 10月月更

Vue_Webpack详解

Studying_swz

前端 10月月更

算法 | 详解斐波那契数列问题

甜点cc

JavaScript 算法 10月月更 斐波那契数列

【高并发】深度解析ScheduledThreadPoolExecutor类的源代码

冰河

并发编程 多线程 高并发 协程 异步编程

堆排序详解(含对时间复杂度的分析)

lovevivi

c 数据结构 10月月更

复杂场景数据处理的 OLTP 与 OLAP 融合实践

NebulaGraph

数据库 知识图谱

【网络安全篇】--HTML基础(预计学习时间:30分钟)从此以后不迷糊~

贤鱼很忙

html 前端 10月月更

基于Ernie-3.0 CAIL2019法研杯要素识别多标签分类任务

汀丶人工智能

nlp

一种基于柔性事务的分布式事务解决方案设计探究

京东科技开发者

编程 分布式事务 事务 事务回滚 柔性事务

【网络安全篇】JavaSript基础内容大全

贤鱼很忙

10月月更

记一个“奇葩”需求的实现

甜点cc

JavaScript 前端 Element UI 10月月更

HashMap源码分析(六)

知识浅谈

hashmap 10月月更

技术分享 | 测试开发工程师必读经典好书清单,抽奖赠书送福利!

霍格沃兹测试开发学社

如何实现一个SQL解析器

vivo互联网技术

sql 解析 SQL解析

百度自动化运维的演进(一):聊聊百度自动化运维_软件工程_运小皮_InfoQ精选文章