热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

揭秘人工智能下的搜狗智能运维实践

搜狗以搜索和输入法为主,技术实现背后有大量的人工智能技术做支撑。搜狗运维在这样一家以人工智能技术为主的公司中,将面临哪些挑战?本文将与大家分享人工智能在运维中的实际应用,


搜狗以搜索和输入法为主,技术实现背后有大量的人工智能技术做支撑。搜狗运维在这样一家以人工智能技术为主的公司中,将面临哪些挑战?本文将与大家分享人工智能在运维中的实际应用,以及搜狗在智能运维方面的实践。

一、运维工程师遭遇的三大痛点

再讲智能运维之前,我们先来看看,运维工程师常见的三大痛点:操心成本、智商不够、烦人成本

1.1、操心成本

所谓操心成本与相声《扔靴子》所表达的主题相似——你并不知道“第二双靴子什么时候扔下来”,同样你并不知道故障什么时候来临,所以你一直提心吊胆,惶惶不安

7×24运维,半夜经常会有收到警报的情况,运维团队负责多个模块、机器、服务、业务等等,如何保障它们的可靠性?并且每个业务都有自己的指标,响应时间、请求量、磁盘容量、网络IO等等,这些指标都可能发生异常。

目前业界一些通用的监控手段,有时会铺天盖地报警,但这些报警不一定能反应真实的情况,真是让人操碎了心

1.2、智商不够

当运维过程中遇到比较复杂的故障需要处理的时候,不能很快的找到出现故障的根源,很好地进行故障定位,感觉智商不够用。

1.3、烦人成本

在搜狗内部有一条明文规定,如果运维工程师不做运维开发,不予升职。所以搜狗的运维经理除了履行保障线上可靠性职责的同时还要做自动化研发。因为职责在身,线上一旦出现问题,无论大小,运维人员是首先被问询的,所以运维人员最容易被打扰。

可做研发大家都知道,是需要整块时间才能够保证效率且减少出错。这样一来,上班时间基本上不会有大块时间来做研发,这样的状况真的很烦人。

二、面对痛点 用“智能”来化解

针对这三大做运维最基本的痛点,搜狗运维选择用“智能”来化解:

  • 针对操心成本,是智能熔断

  • 针对智商不够用的情况,是智能故障定位

  • 针对烦人成本,是智能问答机器人“维秘”

2.1、智能熔断的思路

作为运维人员所要面临的问题,往往是一张以时间为横轴的时序图,纵轴是响应时间、CPU占有率、网络IO、磁盘IO等一系列指标,这样的指标每个节点或机器都有一二十个。如果有上万台机器,上万个节点,那么就会有一百万张时序图,工程师需要对每张图做智能监控, 当发生异常,随时上报。

在股票、医学领域,基于时间轴的数据监控已被广泛应用。股市利用数据监控预测股票涨跌,医学可以利用数据监控预测疾病的发生时间,这些特点与运维有高度的相似性。

运维领域也是以时间轴为纬度分析,目前有很多监控和分析的工具,最简单如设定一个固定的阈值或者周同比,但这些工具还不够智能。

智能熔断系统。目前,搜狗运维正在研发智能熔断系统,是为应对操心成本而生,针对故障的根本原因进行分析和故障预测。

故障的原因有二

1、代码变更或上线,这类的故障非常多,而且大多都是人为造成的 ,现在基本上可以实现智能上线平台做自动上线,完全自主。

2、就是机房、网络和硬件等。

当面对自主上线的情况,如何保证平台的稳定?

下图是智能熔断的实现原理,搜狗引入熔断机制,当某些指标有发生上线动作、发生异动的时候,系统自动判断并做熔断,比如做停止或者回滚操作。并和一些其他的智能设备相结合,如手机上可操作熔断、停止及回滚等功能。这个系统能解决大部分问题,如环境、代码、人为误操作等等。

还有一个问题,就是一些研发人员水平不高,写出的代码在上线的瞬间,指标出现异常,但重启一段时间就好了。同时研发人员表示,当前没有精力去处理,暂时忽略。面对这种情况,就要引入更深的人工智能话题,要对异常进行判断,是已忽视的正常异常,还是需要处理的异常,这里就涉及到对故障点分类的问题。

2.2、智能故障定位

搜狗搜索引擎的架构非常复杂,如下图只是架构的冰山一角。在如此复杂的前后连接关系的情况下,当故障发生时,如何快速故障定位、如何减少用时、如何判断报警的根本原因呢?

搜狗的做法是把问题抽离成一个规则的模板,即一个规则的集合,然后基于特定业务架构图去分析,最终定位故障具体原因。

大致的算法是每一个探针的请求都带一个ID,这个ID在各个模块都是打通的。运维工程师分析这个请求的ID在每个模块里面的具体表现,根据这些规则模板看它是否命中设定规则模板,然后定位系统,再根据这些规则模板的命中情况做一个决策,将故障定位。甚至可以定位它是属于哪个模块的哪个节点,这样就可以快速的去处理这个故障。

如下图,右上角是各种模板命中的情况,根据命中情况做最终的判断。

如果熔断系统是人工智能的话,故障定位就是人肉智能,可以看到核心功能都是由人肉智能编纂出来的。每当出现一类问题,就编入知识库和故障分析模块,避免下一个同样的故障发生。

但实际情况是,大家在操作某一个模块时, 不一定会去看之前存在的问题和解决方案。搜狗的做法是把这些问题与知识固化到系统里,让机器人发挥作用,如上图的最终结果展示,包括Web端和手机端,都可对接一些故障问题。

2.3、智能问答机器人“维秘”

这是一个问答系统,已在搜狗内部开始内测,也是为了解决运维的第三个痛点——烦人成本。运维工程师每天需要解答各种各样的问题,需要花费大量的琐碎时间,而这个工作完全可以交由智能机器人来解决。

智能问答机器人“维秘”

维密运维机器人,构建在搜狗内部的即时通讯工具中,类似微信公众号,可实现直接提问与回答。

它可以实现三项功能

1、智能查单,在搜狗内部运维系统有很多工单,当咨询人员输入工单号,就能查到工单进行到哪一步了,类似于搜索快递单号,你输入快递单号就能显示快递状态。

2、智能找人,咨询人员提问后,可能并没有命中知识库(上文中提到的知识库已由运维工程师提前编辑和整理),机器人没法回答,但机器人可以判断这个问题是属于哪个领域,然后推荐此领域的专家,如问到硬盘的问题,则会推荐一位硬件领域专家解答问题。而咨询人员与专家的对话又将得以保存,并作为机器进一步学习的资料。

3、是最为常见的智能问答,咨询人员提出问题,机器人直接根据知识库来进行解答。

在研究的过程中,如何低成本用人工智能武装运维,是值得思考的问题。个人建议运维工程师挖掘真正痛点,深入思考产生好想法、并用好实习生和用好 AI 云。

未来,搜狗运维的研究方式将扩展到基于决策树的故障根因定位、基于监控大数据和架构图的故障根因定位、故障处理过程的机器决策以及故障预测等。

张博,现任搜狗运维保障部总监,负责搜狗所有业务线的运维保障及运维自动化开发,搜狗内部云平台的研发和运维,搜狗AI开放平台的建设。2006年加入搜狗,11年来一直在搜狗做运维相关业务;在业务可靠性保障、运维团队管理、自动化运维、云产品研发和运维、人工智能在运维领域的应用等方面都有所专长。

本文转载自公众号「51CTO技术栈」

更多相关文章阅读

基于 Docker 持续交付平台建设的实践

如何实现多维智能监控?--AI运维的实践探索

阿里万亿交易量级下的秒级监控

IT 运维的救赎——顺丰运维的理想践行

运维工程师除了穷,还有另一个共同点

DevOps 标准体系发布及权威解读

阅后即焚,Python 运维开发99速成

京东大规模数据中心网络运维监控之眼

IT 从业者必备的20个效率工具,亲测有效

腾讯赵建春:AI浪潮下的高效运维思考及实践

AI运维、爱标准 | GOPS2017上海站精彩实录【附PPT】

Jenkins创始人带您探访国内首届Jenkins用户大会(附PPT)


怎么证明你是 ansible 高手,并升职加薪?


参与「Ansible 的自动化管理」课程你将收获如下:


 1、全面透彻的掌握 Ansible

2、获得 Ansible 官方认证证书

 3、优先获得大厂推荐就业机会


Ansible 官方认证证书


与众多 Ansible 使用者共同交流请扫描下方二维码



超过一百人请添加小助手微信进群:13261885689;13021086339

本课程基于红帽® 企业 Linux® 7。


参与报名及课程详情、请点击阅读原文链接


推荐阅读
  • 当前物联网领域十大核心技术解析:涵盖哪些关键技术?
    经过近十年的技术革新,物联网已悄然渗透到日常生活中,对社会产生了深远影响。本文将详细解析当前物联网领域的十大核心关键技术,包括但不限于:1. 军事物联网技术,该技术通过先进的感知设备实现战场环境的实时监测与数据传输,提升作战效能和决策效率。其他关键技术还包括传感器网络、边缘计算、大数据分析等,这些技术共同推动了物联网的快速发展和广泛应用。 ... [详细]
  • 当前,众多初创企业对全栈工程师的需求日益增长,但市场中却存在大量所谓的“伪全栈工程师”,尤其是那些仅掌握了Node.js技能的前端开发人员。本文旨在深入探讨全栈工程师在现代技术生态中的真实角色与价值,澄清对这一角色的误解,并强调真正的全栈工程师应具备全面的技术栈和综合解决问题的能力。 ... [详细]
  • 开发笔记:前端之前端初识
    开发笔记:前端之前端初识 ... [详细]
  • 自动驾驶中的9种传感器融合算法
    来源丨AI修炼之路在自动驾驶汽车中,传感器融合是融合来自多个传感器数据的过程。该步骤在机器人技术中是强制性的,因为它提供了更高的可靠性、冗余性以及最终的 ... [详细]
  • 2020年9月15日,Oracle正式发布了最新的JDK 15版本。本次更新带来了许多新特性,包括隐藏类、EdDSA签名算法、模式匹配、记录类、封闭类和文本块等。 ... [详细]
  • OpenAI首席执行官Sam Altman展望:人工智能的未来发展方向与挑战
    OpenAI首席执行官Sam Altman展望:人工智能的未来发展方向与挑战 ... [详细]
  • 能够感知你情绪状态的智能机器人即将问世 | 科技前沿观察
    本周科技前沿报道了多项重要进展,包括美国多所高校在机器人技术和自动驾驶领域的最新研究成果,以及硅谷大型企业在智能硬件和深度学习技术上的突破性进展。特别值得一提的是,一款能够感知用户情绪状态的智能机器人即将问世,为未来的人机交互带来了全新的可能性。 ... [详细]
  • Hibernate全自动全映射ORM框架,旨在消除sql,是一个持久层的ORM框架1)、基础概念DAO(DataAccessorOb ... [详细]
  • 本文探讨了异步编程的发展历程,从最初的AJAX异步回调到现代的Promise、Generator+Co以及Async/Await等技术。文章详细分析了Promise的工作原理及其源码实现,帮助开发者更好地理解和使用这一重要工具。 ... [详细]
  • 本文探讨了Python类型注解使用率低下的原因,主要归结于历史背景和投资回报率(ROI)的考量。文章不仅分析了类型注解的实际效用,还回顾了Python类型注解的发展历程。 ... [详细]
  • Ubuntu系统下的GIF动画录制解决方案
    在撰写文章或教程时,GIF动态图能够有效地传达信息。对于Windows用户而言,ScreenToGif是一款非常实用的工具。而在Ubuntu系统中,用户同样拥有多种选择来创建GIF动画,本文将重点介绍两款录屏工具——Byzanz和Peek。 ... [详细]
  • 如何正确安装Python:详细步骤与常见问题解答
    本文详细介绍了如何正确安装Python,包括环境准备、下载与安装过程、路径配置等关键步骤,并针对初学者常见的安装问题提供了详细的解答和解决方案,帮助读者顺利搭建Python开发环境。 ... [详细]
  • 从用户转型为开发者:一场思维升级的旅程 | 专访 StarRocks Committer 周威
    从用户转变为开发者,不仅是一次角色的转换,更是一场深刻的思维升级之旅。本次专访中,StarRocks Committer 周威分享了他如何在这一过程中逐步提升技术能力与思维方式,为开源社区贡献自己的力量。 ... [详细]
  • 点云技术初探(三):PCL基础知识与学习路径指南本文首先介绍了点云库(PCL)的基本概念,PCL是一个在前人点云研究成果基础上发展而来的大型跨平台开源C++编程库,旨在为点云数据处理提供全面的支持。文章详细阐述了PCL的核心功能及其在三维数据处理、特征提取、分割与配准等方面的应用,并为初学者提供了系统的学习路径和资源推荐,帮助读者快速掌握PCL的使用方法。 ... [详细]
  • 全新发布的自我修复与自我更新的Linux版本,专为云计算环境设计! ... [详细]
author-avatar
狮子胯下
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有