写点什么

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

  • 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:052185

评论

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

关注直播 走近滴滴夜莺K8S监控组件

滴滴云

k8s 滴滴技术 监控告警 滴滴夜莺

内存数据库解析与主流产品对比(二)

星环科技

数据库

译文《全新首发JDK 16全部新特性》

潘大壮

Java jdk JVM

同事有话说:ThreadPoolExecutor是怎么回收线程的

Java 程序员 面试

产品利益相关者分析

LT_product_elearning

图解分析:Kafka 生产者客户端工作原理

李尚智

kafka 中间件 消息队列 消息中间件

Alibaba最新产物手册宝典:分布式核心原理解析,简直是Java程序员福音!

996小迁

Java 架构 面试 分布式

从零开始学习Git

ITCamel

git

一文告诉你Java日期时间API到底有多烂

YourBatman

LocalDateTime Date JSR310 Calendar

kotlin下载!我们究竟还要学习哪些Android知识?Android岗

欢喜学安卓

android 程序员 面试 移动开发

一文读懂HTTP协议的昨天,今天与明天

后台技术汇

28天写作

nacos 配置中心自动化运维之namespace坑

Sky彬

nacos

听说隔壁班的程序员给女友做了个智能风扇

智能物联实验室

物联网

免费ETL批量调度,任务调度,作业调度自动化运维工具Taskctl Web

敏捷调度TASKCTL

大数据 kettle 海豚调度 自动化部署 ETL

内存数据库解析与主流产品对比(一)

星环科技

数据库 大数据

Redis核心剖析:为什么这么“快”的秘密

Java架构师迁哥

毫不留情地揭开负载均衡的真面目~

田维常

负载均衡

2021分享三面阿里:Java面试核心手册+Java电子书+技术笔记+学习视频

比伯

Java 编程 架构 面试 程序人生

厌倦了EXCEL想玩点新花样?教你利用Python做数据筛选(下)

智分析

Python

互斥锁 vs 自旋锁

行者AI

互斥

【Skeleton】按钮

德育处主任

CSS 大前端 CSS小技巧 28天写作 纯CSS

PostgreSQL使用clickhousedb_fdw访问ClickHouse

PostgreSQLChina

数据库 postgresql 开源 软件

阿里P8大牛亲自教你!实战讲述Flutter跨平台框架应用,安卓系列学习进阶视频

欢喜学安卓

android 程序员 面试 移动开发

软件测试在不同应用场景中,我们该如何进行测试呢?

程序员阿沐

编程 程序员 软件测试 教程 测试环境

LeetCode题解:389. 找不同,位运算,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

一文读懂Java动态代理

潘大壮

Java jdk 动态代理

面试官:一年跳槽三次,你是怎么做到的?

程序员阿沐

程序员 面试 软件测试 测试工程师

自动化测试现状趋势解读,附带近年自动化测试常用工具

程序员阿沐

程序员 软件测试 自动化测试 测试工程师

JDK源码深度学习!阿里P9架构师终于总结出了这份“源码级”的笔记了

Java架构追梦

Java 源码 架构 jdk 面试

一周信创舆情观察(1.18~1.24)

统小信uos

滴滴开源Logi-KafkaManager 一站式Kafka监控与管控平台

滴滴云

kafak 滴滴开源 监控告警 运维平台

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