ChatOps 的理念由 DevOps 延伸而来,又结合AI(人工智能)落地,可以说是人工智能和新型工作理念结合的产物。它也是一种新型智能工作方式,帮助团队利用 ChatBot 机器人使成员和各项辅助工具连接在一起,以沟通驱动的方式完成工作。同时解决人与人、人与工具、工具与工具之间的信息孤岛问题,从而有更高的工作效率和更好的协作体验。

一、运维的几个阶段

1. 人工运维

概念:人工运维是指通过人工手动执行各种运维任务,如服务器配置、日志分析、故障排除等。

挑战:人工操作容易出错,效率低下,且无法快速响应突发事件。

2. 自动化运维

概念:自动化运维通过编写脚本和使用工具来自动执行运维任务,减少人工干预。

优势:提高效率,减少人为错误,能够快速重复执行任务。

工具:Ansible、Puppet、Chef等。  

3. AIOps(智能运维)

概念:AIOps利用机器学习和大数据分析技术,自动检测、分析和解决运维问题。AI+Ops基于大数据及算法(Algorithmic IT Operations)的 IT运维概念,AIOps中的AI,其实是 Algorithmic IT的缩写,意味着利用机器学习算法对线上运行的真实数据和日志等作出故障预判,从而执行相应的运维操作。

优势:能够处理海量数据,提前预测故障,自动化决策和响应。

应用:AIOps 的主要应用场景有异常告警、告警收敛、故障分析、趋势预测、异常检测、根因分析等。  

4. ChatOps(通过聊天的方式去运维)

概念:ChatOps通过将运维工具集成到聊天平台(如咚咚、微信)中,让运维同学通过聊天界面执行运维任务。ChatOps 主要由四个部分组成:自动化的理念、一个沟通承载平台、一系列连接人与工具的机器人,以及一些后台工具和服务(基础设施)。

ChatOps_IT

优势:将运维自动化的能力通过聊天的方式提供给运维、开发等人员使用,使运维同学具有可以随时随地使用手机远程运维的能力。ChatOps 更像是开发运维“知识库”,通晓网络上的研发运维知识和经验,通过语义理解和上下文推断,能够自动识别问题、预判结果和解决问题,大大减少人为错误和重复劳动。

  • GitHub 团队内部实现的 ChatOps, 与一个叫作 Hubot 的机器人框架密切相关,Hubot 提供很多聊天机器人所需要的基础设施,借助 Hubot 框架能比较方便地和自己编写的功能或自己的系统对接。目前,Hubot 已经发展出了较好的生态圈,有很多开源插件可以借用。除Hubot 外,还有一些比较成熟的机器人框架,如 LITA(2022停止更新)、ErrBot 等。

二、