百度 曲显平 百度智能化运维演进之路

CodeWarrior

2019/07/08 发布于 编程 分类

GIAC2019 

文字内容
1. 百度智能化运维演进之路 曲显平 百度 智能运维
2. 提纲 • 百度运维技术演进 • 百度AIOps方法论 • 百度AIOps实践 • 未来展望
3. 提纲 • 百度运维技术演进 • 百度AIOps方法论 • 百度AIOps实践 • 未来展望
4. 百度运维技术演进 基础运维平台的历史阶段 • • Dev – 2008~2012,统一+自动化 – 服务树、权限管理、机器管理、数据管理 – 监控系统、部署系统、初始化系统 – 任务管理系统、名字服务… 个性化 基 础 运 维 平 台 通用 DevOps实践 2 PaaS OP 基 础 运 维 平 台 基础运维平台的问题 1 QA 基 础 运 维 平 台 Manager
5. 百度运维技术演进 开放运维平台的历史阶段 • • – 2012~2014,API +可扩展 – 可编码的监控 – 可配置的部署 – 开放的名字服务 开放运维平台的问题 垂直场景重复的轮子 分散的数据和运维知识 Dev QA OP Manager SRE优秀方法实践 PaaS 开 放 运 维 平 台 ChatOps DevOps成型 计算 智能层次 感知 认知
6. 百度运维技术演进 百度智能运维 • – 2014至今,数据+算法àAIOps – 数据建设和智能监控入手(异常检测、根因 分析) – 逐渐覆盖 智能 故障管理/变更管理/容量管理 /服务咨询 三个核心 • – 数据:运维数据仓库&运维知识库 – 工程:运维大数据平台&运维工程研发框架 – 策略:运维策略算法平台&运维大脑 Source:Gartner Report IT Operations Analytics Must Be Placed Within an AIOps Context. Will Cappelli (Research VP) 26 August 2016
7. 提纲 • 百度运维技术演进 • 百度AIOps方法论 • 百度AIOps实践 • 未来展望
8. 百度运维模式 • DevOps • SRE • AIOps Culture Automation Measurement Sharing Engineering 算 法 AI/IA 数 据
9. AIOps方法论 助力业务高速发展,持续提升高质、高效的运维能力 减少自身 dirty work,运营能力提升,为服务增值 复杂 智能辅助决策 增强(augment)人的能力 故障管理: 重大故障(outage) 智能决策和执行,经验可迁移 替代(substitute )人的能力 服务架构和 性能优化 Netflix Winston Google Auxon Facebook FBAR 容量管理 机器管理:维修 网络管理 低频 GitHub ChatOps 资产和服务管理 规范化 流程化 故障管理: 一般故障(disruption) 部署变更:程序 高频 部署变更:数据 客服&咨询 备份管理 监控管理 简单 自动化(automation) 自助化(self-service)
10. AIOps方法论 书同文:一致运维“语言” 车同轨:一致运维“方法” E-System A-PaaS C-MaaS B-IaaS 应用、服务、机房 集群、镜像、机器 D-Tool ... 行同伦:一致运维“模式” S O P • • • 感知,如指标采集、异常检测等 决策,如故障诊断、弹性伸缩策略、流量调度策略 执行,如扩缩容执行、流量切换执行
11. 运维知识库 状态数据 元数据 统一 数据 模型 product app host latency throughput person service instance cpu IDC network bandwidth io mem 事件数据 error anomaly change disk root cause remediation rtt ... ... ... 查询和视图 分类映射 数据 生产 过程 raw 数据 中间数据 清洗消歧 核心数据 质量控制 关联挖掘 服务管理模型和规范 数据 源 择优计算 管理类平台 存储:MetaDB,TSDB,EventDB 监控类平台 反馈干预 权限和配额 操作类平台
12. 智能运维工程思想 运维知识库(OKB) 运维操作抽象层(OPAL) 书同文:统一运维“语言” 车同轨:统一运维“方法” 应用、服务、机房、集群、镜像、机器 ... 统一接口 运维机器人(Guardian) 行同伦:统一运维“模式” SOP/Runbook as ... 适配不同平台的“驱动” APaa S BPaaS CSyste m E DTool … .. 1. 2. 3. 4. Code ... 分场景定义运维模式;思路一致 Code,Not Doc;行为一致 个性化模型、配置、参数、数据 提倡“复用”
13. 智能运维工程思想 Sensors APaaS BIaaS CScript D-Tool ESystem ... Noah Zabbix Puppet • • 运维研发缺少一致的设计理念和模型 重复、低效、难以扩展和复用 t en v E DecisionMaker OPAL Crontab And more... Executors Context & History • • • 基于感知、决策、执行的运维框架体系 提供标准框架和通用研发组件 运维工具自身高可用保障 StateMachine DepedencyFlow
14. 百度运维能力分级 + l v v ar v v 2 5 2 5 p 4 55251 2 5251 a e g kL gv v 2 5 4 3 Oa v kL n s v v v kL v n C C n n A P C N i t T l c + & a T n E u v T A v po E c a x l P
15. 智能运维实现路径 目 标 阶 段 当 前 阶 段 Level 0 Level 1 Level 2 Level 3 Level 4 Level 5 No Automation OP Assistance Partial Automation Conditional Intelligent High Intelligent Full Intelligent 手工上线 手工处理故障 人工服务咨询 WEB化上线 预案脚本 CMDB 自动化上线 自动预案止损 问答机器人 弹性扩缩容 智能流量调度 ChatOps 无人值守变更 智能Oncall 智能服务台 智能运维 Step 1 具体场景可替代 Step 2 业务线和圈定场景 具有显著效果收益 Step 3 Step 4 小拐点 业务可扩展 大拐点 场景可扩展
16. 提纲 • 百度运维技术演进 • 百度AIOps方法论 • 百度AIOps实践 • 未来展望
17. 故障处理过程 故障处理过程分解:故障发现、服务止损、服务恢复、故障总结 根因 触发 服务部署 扩散 发现 响应 故障发生 监控添加 发现阶段 止损 故障发现 止损决策完成 恢复 止损完成 根因诊断完成 止损阶段 止损 决策 Case study 改进 恢复完成 总结阶段 结果 确认 恢复阶段 根因诊断 记录 根因处理 结果确认 故障关闭
18. 智能故障发现 • • • 周期波动的数据 – 典型场景:广告收入、搜索流量等 – 算法思想:同比历史数据 关心突变的数据 – 典型场景:交易订单、流水等 – 算法思想:环比近期数据 关心是否超出了一定波动范围的数据 – 典型场景:pvlost – 算法思想:正常的波动范围 抖动频 繁
19. 智能报警合并 • 智能报警合并 历史报警大数据分析:找到关联报警pattern,实现更精准的报警 • • 最终效果 报警减少90%-99% • A:rule1 C:rule3 A:rule3 {Argus}{notice}{您有3个关联的策略产生22条 报警}{异常策略:A,B,C}更多异常策略请查看: B:rule2 D:rule4 B:rule2 {http://dwz.cn/… }
20. 智能故障诊断 1 时间维度à缩小时间范围 2 网络拓扑模型 缩小空间范围,区分 整体和局部故障 国家 区域/运营商 3 服务管理模型 推导异常集群、实例或 者机器 4 变更关联模型 模块关联模 型 定位程序、配置、数据、 上下游关联服务的异常传 运营活动上线 播链 模块关联关系 产品 产品线 5 运营事件 促销/消息推送/ 摇一摇等 passport redis 6 多维度模型 维度关联层级分析,缩小业 务范围 业务关联关系 浏览模块可用性 浏览接口 IDC 模块 交换机/网段 服务 机器/IP 实例 网络/服务器故障事件 业务/系统指标异常事件 交易模块 运维变更 程序/配置/数据 变更/预案操作 锁座模块可用性 nmq 变更事件 mysql 影院锁座
21. 智能故障自愈 Before AIOps After AIOps 感知 决策 传统监控 人工决策 执行 分散的脚本 • 固定阈值的异常检测 • 局部信息,依赖人工经验 • • 大量误报&漏报 • 决策速度慢,甚至错误决 策,故障扩散 代码质量差,代码的高可 用设计欠缺 • 关键时刻代码不可用 智能监控 自动化程序决策 • 智能异常检测算法,异常 事件统一存储运维知识库 • 收集全局信息,依赖算法 自动决策 • 高的准确率和召回率 • 精准的快速决策,反馈控 制 标准执行框架 • 开发框架&运维托管平台 • 快速的开发效率,高可用 的执行架构
22. 智能故障自愈 • 实践效果 • 止损时效性:<5min • 较人工止损效率提升60%以上 • 真实Case:北京某机房掉电,受影响业务 线最短2min内完成止损 18:37:00 故障开始影响业务 35 30 25 20 人工止损 15 10 5 0 自动止损 业务1 业务2 业务3 业务4 18:38:55 完成流量调度止损,业务可用性恢复
23. Alert fatigue Making On-Call Suck Less
24. 变更管理 DevOps 自动化流水线 Dev 自助(selfservice) 自助处理 依赖解决 效果确认 暂停点决策 上线通告 ... AIOps 逐渐替代 人来决策 风险控制 时间依赖 任务依赖 可用性影响 性能影响 用户体验影响 上下游影响 失败定位处理 ... 效率优化 并发度 预分发 优先级 流程减免 (esp. 回滚、紧急上线)
25. 智能发布检查 衡量上线前后 指标变化 • 实践效果 • 业务线上问题分级拦截比例80%以上 • 单机房优先部署+单机房自动止损 • 真实Case:2018/04/23 某模块上线异常多项指标异常 正常 相同 与过往上线比 较 不同 相同 与同模块未上 线实例比较 不同 故 障
26. 智能服务台 构建运维知识库,具备知识挖掘、自动解析、自动生成等能力  自然语言处理能力 • 意图理解,对会话进行有效的理解 知识积累 歧义性 语言基础 技术 知识理解 文本分析 语义理解 篇章理解 应用技术 语言模型 词法分析 句法分析 实体识别 知识抽取 实体标签 观点抽取 情感分析 文本相似 Query理解 语义改写 多轮理解 摘要生成 阅读理解 分类标签 运维咨询 知识图谱能力 ‚ 文档维护 • 利用运维平台,整合运维知识库,为自动化运维提供操 作基础 • 采用了文本分析技术来聚类相似问题,帮助运维工程师 整理知识 运维知识库 运维知 识 客服知识库 结构化 文本分 析 问题聚 类 丰富经验+强大技术能力 效率提升 系统科学 客服语料
27. 智能服务台 问题解决率 >85% 知识维护成本低 1. 自动解析多种类型数 智能检索效果好 1. 问答结果直接满足 2. 语义检索相关性好 3. 引导/推荐/纠错提升 据 2. 3. 数据自动关联知识树 多源知识统一管理维 易用性 护 4. 4. 百度已有知识复用 高级检索及二次开发 支持 自学习越用越好 全面提升效率 提问效率提升 1. 检索系统自学习 回答效率提升 2. 检索结果反馈功能 知识沉淀复用 3. 扩展问答自动挖掘 降低人力成本 4. 热门知识挖掘和推 荐 结构化 自动化 智能化
28. 提纲 • 百度运维技术演进 • 百度AIOps方法论 • 百度AIOps实践 • 未来展望
29. 未来展望 • 深入业务 • • 迁移技术 • • 服务画像 资源能效优化 拓展场景 • 运维 -> 运营
30. THANKS 欢迎关注msup微信公众账号 关注大会微信公共账号,及时了解大会动态、 日程及每日更新的案例!