ChatOps新型运维协作介绍

Posted key_3_feng

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ChatOps新型运维协作介绍相关的知识,希望对你有一定的参考价值。

ChatOps,即“Chat + Ops”,是一种实时聊天驱动型的运维模型,简单来讲就是“用聊天的方式来做运维工作”。通过将机器人植入聊天会话,形成人、机器、数据的自动化、透明化的联动,使运维团队能够高效执行任务和沟通协作。ChatOps是DevOps的一种实践演进方法。

1、概念及背景

ChatOps是以人类最原始、最自然的会话方式来做事情的。就像我们对着智能音箱说“小爱同学,帮我打开电视”,然后电视就被打开了,只不过在ChatOps中,帮我们启动服务器的是虚拟机器人,即一套后台应用程序。对话驱动的协作并不是新生事物,但ChatOps是数字时代的体现:最古老的协作形式与最新技术的结合。这种令人惊讶的简单组合将改变我们的工作方式。

千万别低估了这种工作方式的影响力,事实证明,我们正在从邮件沟通的工作方式,进化成实时聊天软件式的工作协同。一个典型的信号:国外有个企业级IM聊天软件Slack已发展为百亿美金的独角兽。 从表面上看,ChatOps就是一个聊天工具,里面有一个聊天机器人对象,向它发送一条命令,它就把信息转发给后台程序,由该程序匹配我们的意图,再执行具体的操作,最后返回信息。如果你用过手机、汽车的智能助手,或者智能音箱等,应该对此并不陌生。而ChatOps更深层次的作用,是将运维自动化的能力通过“现代化”的方式提供给运维、开发等人员使用。

2、基本架构

ChatOps基本架构包括四个部分:

ChatOps新型运维协作介绍_ChatOps

  • 一个DevOps团队:使用ChatOps的人(运维、开发、测试等人员)。
  • 团队实时聊天(IM)工具:企业微信、钉钉、倍洽、Slack、RocketChat等。
  • 机器人(Bot):一套后台程序。
  • 基础设施:服务器 + 中间件 + 运维工具和平台。

其中,实时聊天(IM)工具介于运维机器人(Bot)和用户(DevOps团队)之间,只负责转发双方的消息,并不对消息进行处理。

机器人(Bot)负责解析用户的消息,分析匹配用户的意图,然后在研发和运维的系统和基础设施上执行相关操作。机器人可以在服务器上执行命令脚本,也可以调用运维工具,调用发布平台、监控平台等的API。

ChatOps的前提是,运维平台和基础设施体系建设已经比较成熟,各种信息和运维能力几乎都可以通过远程调用,比如HTTP、SSH等。只有机器人(Bot)获得了这些基础运维信息和能力,才能真正发挥Ops的作用。

3、主要优点

ChatOps只是运维自动化的一个外壳吗?表面上看,好像是这样。但实际上,它是一种创新的工作方式,当你真正用起来时,会有意想不到的收获。

首先,它拟人化的身份,让枯燥的运维操作立即变得简单和有趣了许多。聊天可能是我们寻求信息的最快路径。和机器人实时对话,可以立即得到反馈,它像是一个贴心和强大的管家,轻松帮你完成日常运维工作,而不需要人为切换各种运维工具,方便、快捷。

其次除了提供汇报、展示执行过程的功能,ChatOps还有两个作用:一方面是增强与同事之间的协作,另一方面是寓教于做、现场教学——去学人家的操作,直接看聊天信息就行了,就像看Linux系统中的历史记录,而这种ChatOps的聚合操作,比历史记录里一条一条枯燥的指令更清晰、更简洁。这样一个例子:首先,检查服务器状况,发现CPU占用率过高,接着检查进程信息,发现Java进程CPU占用高达58%,接着执行内置JVM分析脚本,为Java进程生成完整的报告,然后再重启应用服务器,问题暂时得到解决,接下来@开发人员,将JVM分析报告的链接发给他们去排查。

最后一点是“移动性”,将Ops机器人连上移动版的IM工具,我们就拥有了远程的运维能力。如今智能手机功能越来越强大,地位越来越重要,你可以不带钱包、钥匙、资料、电脑,但是你一定会带上智能手机。如果没有ChatOps这个重要的工具,你可能还要随时随地携带电脑包,一旦有流程或者告警过来,就得立即处理。有了ChatOps之后,你可以在任何地点运维你的产品,只要你的手机还有电和信号,这种体验很棒!

以上是关于ChatOps新型运维协作介绍的主要内容,如果未能解决你的问题,请参考以下文章

想更好的实现DevOps吗?不妨试试ChatOps

机器人运维时代已来临?这是真的......

机器人运维时代已来临?这是真的......

chatops--rocketchat+hubot

优云亮相GOPS2017全球运维大会 “黑科技”获全场最高关注

优云亮相GOPS2017全球运维大会 “黑科技”获全场最高关注