PCon全球产品创新大会即将开幕,抢占最后的交流席位! 了解详情
写点什么

故障自愈机器人,保你安心好睡眠

  • 2019 年 9 月 09 日
  • 本文字数:1545 字

    阅读完需:约 5 分钟

故障自愈机器人,保你安心好睡眠

在大型互联网公司中,单机房故障因为其故障时间长、影响范围大,一直是互联网公司运维人员的心头之痛。在传统的运维方式中,由于故障感知判断、流量调度决策的复杂性,通常需要人工止损,但人工处理的时效性会影响服务的恢复速度,同时人的不可靠性也可能导致问题扩大。


为了解决这类问题,我们针对百度内外部网络环境建设了基于智能流量调度的单机房故障自愈能力。结合外网运营商链路监测、内网链路质量监测与业务指标监控构建了全方位故障发现能力,基于百度统一前端(BFE)与百度名字服务(BNS)实现了智能流量调度与自动止损能力。同时,基于实时容量与实时流量调度自动止损策略与管控风险,实现了任意单机房故障时业务均可快速自愈的效果。当前此解决方案已覆盖搜索、广告、信息流、贴吧、地图等众多核心产品的单机房故障自愈场景。


单机房故障频发影响业务可用性

回顾近 2 年来各大互联网公司被披露的故障事件,单机房故障层出不穷。例如:


  • 2015 年 6 月某公司云服务香港 IDC 节点电力故障崩溃 12 小时

  • 2016 年 5 月某公司杭州电信接入故障,服务中断小时级别

  • 2017 年 1 月某业务天津机房故障,数小时无法提供服务

  • 2017 年 6 月北京某处机房掉电,多家互联网公司受影响


单机房故障频繁影响业务的可用性并且会给公司带来直接或间接的损失。直接损失包括访问流量丢失、商业收入下降、用户体验受损、打破服务等级协议(SLA)造成的商业赔付等,间接损失包括用户信任度下降、给竞品占领市场机会等。


单机房故障诱因众多不可避免

单机房故障诱因众多,详细复盘若干单机房故障发现故障诱因大致可以分为四类:


  • 基础设施故障:物理机房故障、网络链路拥塞、流量转发基础设施故障等

  • 程序缺陷:程序隐藏 bug、程序性能严重退化等

  • 变更故障:测试不充分的程序、配置、数据变更,人工临时介入的误操作等

  • 依赖服务故障:第三方服务故障例如通用的认证服务、支付服务、存储服务、计算服务故障等


单机房故障止损可靠性与效率急需提升

人工处理场景下,运维人员通常选择 7*24 小时值班,接收大量的报警,随时准备在紧急情况下进行响应、决策、操作一系列故障止损动作,尽量挽回服务损失,降低故障影响。


但上述解决方案会面临如下问题:


  • 响应可能不够迅速:例如夜间报警

  • 决策可能不够精确:例如新手 OP 经验欠缺,误决策

  • 操作可能出现失误:例如止损命令错误输入



“机器人”处理场景下,单机房故障自愈程序可独立完成故障感知、决策、执行的完整故障处理过程,并及时向运维人员同步故障处理状态。运维人员的职责由处理转向管理,最终运维人员在低压力值班中保证服务稳定运行。



单机房故障自愈解决方案概述

百度 AIOps 框架中,单机房故障自愈解决方案构建在运维知识库、运维开发框架、运维策略框架三个核心能力之上。具体过程为自愈程序搜集分散的运维对象状态数据,自动感知异常后进行决策,得出基于动态编排规划的止损操作,并通过标准化运维操作接口执行。该解决方案策略和架构解耦,并且托管到高可用的自动化运维平台之上,实现了业务在任意单个机房故障情况下皆可自愈的效果。


截至目前该方案已覆盖百度大多数核心产品,止损效率较人工处理提升 60%以上。典型案例:


在 8 月 28 日某产品在单机房故障发生后 1min55s 完成止损。如下图所示,18:37:00 某模块可用性开始出现下跌,单机房故障自愈程序在 18:38:55 完成流量调度,可用性恢复。



18:37:00 可用性开始出现下跌



18:38:55 完成流量调度,可用性恢复


在后续文章中我们会继续介绍单机房故障自愈的更多详细内容,敬请期待!


作者介绍:


运小辰,百度高级研发工程师,负责百度运维智能故障自愈方案相关设计研发工作,致力于降低单机房故障自愈风险、提高故障自愈效率,为业务可用性保驾护航。


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


原文链接:


https://mp.weixin.qq.com/s/0T95vutCWLfwpgBJexoWHg


2019 年 9 月 09 日 23:381213

评论

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

神策 Android 全埋点插件介绍

神策技术社区

程序员 数据采集 埋点 行为数据

Docker

彭阿三

终于读完谷歌高级架构师分享的Kubernetes源码剖析文档

公众号_愿天堂没有BUG

Java 编程 程序员 架构 面试

上线半天下载量破100W!美团内部微服务进阶笔记,超详细

Java 架构 面试 微服务 美团

神策分析 Android SDK 网络模块解析

神策技术社区

程序员 代码 信息 神策数据

学完阿里P8推荐的实时流计算系统设计与实现PDF,终入淘宝

公众号_愿天堂没有BUG

Java 编程 程序员 架构 面试

币安智能链智能合约DAPP开发|智能合约DAPP源码搭建

量化系统19942438797

dapp 币安智能链

人类高质量 Java 学习路线【一条龙版】

程序员鱼皮

Java 数据库 后端 求职 编程学习

Github高分爆赞,一天遭狂转 10w+ 次!20万字的Java面试手册来了

Java~~~

Java 架构 面试 JVM 架构师

ShardingSphere 知识库更新 | 官方样例集助你快速上手

SphereEx

数据库 开源

引领异构时代,英特尔发布重大架构创新

科技新消息

结合scipy.linalg在Python中使用线性系统

华为云开发者社区

Python 矩阵 Numpy 线性系统 向量

gopher成长之路(三):出差小记

非晓为骁

个人成长 蜕变

币安智能链智能合约DAPP开发

Geek_23f0c3

智能合约 DAPP智能合约交易系统开发 DAPP系统开发 币安智能链

阿里大牛耗时三年整理出来的4588页Java面试诛仙手册,已全面开源

Java~~~

Java 架构 面试 JVM 架构师

阿里P8耗时一个月肝出这份26W字Java面试手册,在Github标星30K+

Java~~~

Java spring 架构 面试 JVM

百度推出 “汽车机器人”,AI体验官金晨直呼“太豪横了”

百度开发者中心

产品 最佳实践 企业动态 Apollo 无人车

神策分析 iOS SDK 代码埋点解析

神策技术社区

程序员 数据采集 埋点

多种云资源管理用什么软件好?你知道吗?

行云管家

云计算 云服务 云资源

ToB迎来上市潮,谁是下一个IPO黑马?

ToB行业头条

IPO

解决参数依赖,接口之间传递数据——apipost

Proud lion

大前端 后端 Postman 开发工具 接口文档

安装ApiPost-接口工具 发送HTTP请求

CodeNongXiaoW

大前端 测试 后端 接口测试 接口管理工具

JVM调优(一)

彭阿三

python接口测试unittest使用详解

与风逐梦

Python 软件测试 接口测试

Redis主从握手流程,你真的了解了吗?

博文视点Broadview

AI 场景的存储优化之路(二)

焱融科技

人工智能 云计算 AI 高性能 分布式存储

imtoken钱包搭建,区块链去中心化钱包搭建

13823153121

【ShardingSphere技术专题】「ShardingJDBC」SpringBoot之整合ShardingJDBC实现分库分表(JavaConfig方式)

浩宇天尚

ShardingJDBC ShardingSphere ShardingSphere-Proxy 8月日更

全链路压测实践

超凡生

谷歌高级架构师十年心血终成Kubernetes微服务实战文档

公众号_愿天堂没有BUG

Java 编程 程序员 架构 面试

MySQL 系列教程之(九)MySQL 必修:事务

若尘

MySQL 数据库 8月日更

故障自愈机器人,保你安心好睡眠_运维_运小辰_InfoQ精选文章