En esta publicación, describimos los posibles beneficios de un enfoque de ChatOps y enumeramos más de 12 marcos, bots y herramientas de ChatOps prefabricados que los equipos pueden utilizar para desarrollar su propia interfaz de usuario conversacional en su flujo de trabajo de desarrollo de software.
¿Qué es “Chatops”?
Muchos equipos ya usan una sala de chat como Slack o Hipchat para compartir información, colaborar y construir bases de conocimiento en torno a proyectos particulares. Naturalmente, estas plataformas han construido miles de extensiones que utilizan conectores de API para brindar funcionalidad adicional a los espacios de trabajo de chat. Desde asistentes de programación, consejos de inversión, informes de ingresos, libros de contabilidad de productividad del equipo, noticias, emojis y puntajes de cricket, miles de bots se pueden integrar en salas de chat para publicar actualizaciones automáticas o activar la funcionalidad cuando se le solicite.
A medida que la colaboración en equipo pasa del correo electrónico al chat, al mismo tiempo, DevOps intenta automatizar las pruebas y la implementación de software. Por lo tanto , ChatOps , acuñado por Github , es una filosofía para llevar el trabajo de monitoreo y control de la infraestructura y las operaciones desde la interfaz de línea de comandos a la ventana de chat, a menudo con la ayuda de un útil bot conversacional basado en inteligencia artificial que puede activar tareas y enviar informes de error desde un simple comando en inglés. Jesse Newland de GitHub simplemente define ChatOps como:
"Poner herramientas directamente en el medio de la conversación"
En el espíritu del procesamiento del lenguaje natural, muchos chatbots responden, adquieren un nombre y, a veces, incluso una personalidad humana ; pero no estamos hablando de chatbots como Cleverbot o ELIZA a los que puedes enviar mensajes instantáneos por diversión, sino de una interfaz de usuario útil y conversacional que activa los procesos de DevOps. Sorprendentemente, solo hay algunos de ellos.
Enfoque fundamental de ChatOps
Más de 12 bots de ChatOps esperan tu comando
Veamos qué hay en el ámbito de los bots de ChatOps. Hay algunos marcos populares y bots prefabricados para elegir, como Hubot (CoffeeScript), Lita (Ruby) y Err (Python). Los proyectos alternativos, los scripts, los marcos y las bibliotecas que privilegian diferentes idiomas también podrían ser útiles para algunos. Algunos bots están diseñados para interactuar con una plataforma de chat en particular, como Slack , Hipchat o Flowdock , pero muchos son independientes del cliente de chat. A continuación se muestran algunos marcos de bots y bots construidos listos para instalar. La mayoría de ellos son compatibles con múltiples instancias de chat y admiten muchos complementos para herramientas populares de integración continua .
1: Hubot CoffeeScipt / Node.js
" Un robot de mejoramiento de la vida personalizable "
hubot heroku status - Returns the current Heroku status for app operations and tools
hubot heroku status issues - Returns a list of recent issues (default limit is 5)
hubot heroku status issue - Returns a single issue by ID number
También es fácil generar su propio chatbot utilizando el marco de Hubot con Yeoman .
2: Lita Rubí
" Un robot compañero para la sala de chat de su empresa "
3: Cog agnóstico
" Cree nuevos comandos de bot en cualquier idioma " / " plataforma ChatOps de próxima generación "
"Cog lleva el poder de la línea de comandos al lugar donde colaboras con tu equipo todo el tiempo: tu ventana de chat"
Cog en acción - Tomado de la documentación de Cog
Operable también publicó algunas excelentes prácticas recomendadas de ChatOps , esencialmente una guía de estilo para la formación de comandos, la composición de canalizaciones y el diseño de interfaces de comandos en estilos de lenguaje natural. Consulte la documentación de Cog para obtener más información.
4: Errbot Python
" Una biblioteca Pythonic para crear chatbots "
5: JavaScript de Nestor
" El bot programable de su equipo de Slack "
Bot Nestor en acción
6: Chato.ps agnóstico
" Integra cientos de servicios en el chat de tu equipo "
Independiente del lenguaje y la plataforma de chat, Chato.ps se enmarca como un búfer verdaderamente agnóstico entre todas las plataformas y herramientas de chat. Ya sea que esté usando Campfire, Slack, IRC o HipChat para chatear, Chato.ps le permite implementar aplicaciones en Heroku con un solo mensaje o recibir informes de incidentes. Como no existe una iteración de código abierto de Chato.ps, un problema potencial es el bloqueo del proveedor.
7: ChatOps de HP
Hacer que la gestión de servicios empresariales sea más ChatOps-y
Recientemente se anunció el flujo de trabajo ChatOps propuesto por HP. Es menos un marco personalizable, sino más una prueba de concepto de cómo una empresa podría administrar incidentes de una manera infundida por chat.
En la última conferencia Discover de HPE, revelaron algunas de sus prácticas internas de ChatOps que ahora son de código abierto. Una vista de alto nivel de la arquitectura de “SM ChatOps” implica conectar HPE Service Manager con Hubot y Slack. Según la cobertura de The New Stack :
"ChatOps de HPE: es en realidad una implementación de código abierto de las herramientas de automatización y gestión de incidentes existentes de la empresa, integradas con Slack, la herramienta de mensajería que finalmente parece haber inclinado la balanza en la batalla del mercado por las herramientas de chat en el lugar de trabajo".
El diseño ChatOps de HPE está diseñado para interactuar con la gestión de servicios de HP: los estados de los incidentes se comunican a través de Hubot. Tomado del blog de la comunidad de HPE .
8: Jarvis de CA Technologies Java
Bot de Flowdock ChatOps para la JVM
Construido por CA Technologies , Jarvis es otra alternativa de código abierto a Hubot, diseñada específicamente para trabajar con mensajes de compilación para aprovechar al máximo Flowdock de CA , una plataforma de chat y colaboración. Jarvis funciona en la JVM, por lo que los complementos se pueden crear en Groovy , Java y Clojure , con soporte para otros lenguajes JVM como Kotlin . La desventaja es la extensibilidad: Jarvis solo se comporta con Flowdock.
9: Lazlo
" Un marco de automatización de chatops basado en eventos y con secuencias de comandos lua para Slack in Go "
Lazlo es un agente de eventos para el lanzamiento de complementos, esencialmente una plataforma de chatbot alternativa que privilegia el lenguaje de programación Go . Para escribir automatización para Lazlo, crea scripts de Lua . Con una pequeña cantidad de contribuyentes, el proyecto tiene un estilo de código abierto , quizás no para los desarrolladores débiles.
10: Multivac
" Marco de bots de ChatOps extensible para Slack "
11: StackStorm
" Herramienta de automatización creada con amor por DevOps y ChatOps "
12: VictorOps
Seguimiento de incidentes y alertas automáticas para equipos de guardia
Más herramientas para ChatOps y construcción de bots
- Cloudbot ; un bot Python IRC simple, rápido, expandible y de código abierto
- Eggdrop ; un popular bot IRC de código abierto, diseñado para brindar flexibilidad y facilidad de uso
- Bot ChatOps de ElasticSearch JARVIS
- Comandos de barra con DeployBot
- Will ; un simple bot de python hipchat
- Botkit ; un marco para construir Slackbots
- Pandorabots ; una API RESTful para integrar chatbots con inteligencia artificial en aplicaciones
- API.ai ; ayuda a crear Slackbots conversacionales
- Gupshup : herramientas para construir e implementar bots en cualquier canal
- MobileMonkey : crea bots conversacionales para Facebook Messenger.
- ¿Piensas en algo más? ¡Comenta abajo!
Análisis: ¿Por qué adoptar DevOps habilitado para mensajería instantánea?
La adquisición del chatbot está generalizada e influye en todo, desde el diseño de API , las fachadas de las empresas públicas hasta la nueva plataforma de desarrollo de Facebook , que permite a las empresas crear bots de interfaz de usuario conversacionales dentro de su aplicación Messenger. HP dijo recientemente que encuentran las salas de chat, o ChatOps, " fundamentales para el éxito de DevOps ".
Algunos argumentan que el mantenimiento del sistema infundido por chat no es nada nuevo; muchos han estado implementando esto utilizando IRC (Internet Relay Chat) desde los años 90. Sin embargo, el reciente movimiento hacia métodos de ChatOps más fáciles de usar es triple:
- Ayuda a automatizar tareas ; Al identificar y reemplazar acciones repetibles con comandos de bot, los equipos pueden ahorrar tiempo. GitHub, por ejemplo, usa ChatOps internamente para operar el sitio web y la infraestructura, como administración de alertas, actualizaciones de estado, administración de red, mantenimiento de MySQL y más;
- ChatOps funciona en un foro empresarial más visible , proporcionando un registro que todos los miembros del equipo pueden ver. Esto ayuda a los equipos distribuidos a colaborar en tiempo real, creando una cultura y un contexto de empresa más transparentes para incorporar nuevos miembros;
- Por último, agregar un poco de personalidad a un bot puede ayudar a crear una cultura interna en una empresa.
Por supuesto, ya puede agregar muchas herramientas operativas a Slack con complementos como el monitoreo de incidentes de Pagerduty o Jira y Confluence para el seguimiento de errores, por lo que para algunos un bot puede ser excesivo. Algunos pueden ser reacios a adoptar ChatOps debido a razones de seguridad . Para negar esto, Cog incluye mecanismos de acceso y los desarrolladores han creado middleware para interactuar con Hubot. También se han desarrollado productos como Demisto para ayudar a proteger el contenido en los canales de Slack.
"La forma en que trabajamos está fuertemente influenciada por el chat"- Mark Imbriaco, CEO de Operable
El desarrollo impulsado por la conversación es muy diferente de los entornos comerciales tradicionales. Al final del día, simplemente está exponiendo las API de las herramientas internas que usa, y un bot es solo una interfaz para ellas. El beneficio final de crear un bot usando estos marcos es que le da a su equipo la personalización y le permite trabajar con cualquier cliente de chat. Dejando a un lado las diferentes estrategias de ChatOps / bot, cualquier sistema que permita a un equipo trabajar de manera eficiente y también responder rápidamente ante los desastres de TI triunfará. Incluso si no está en ChatOps, asegúrese de que sus API tengan las habilidades necesarias para competir en el mundo en evolución habilitado por voz y bot .
Recursos adicionales:
- ChatOps para tontos por Jason Hand de VictorOps
- Charla de Mark Imbraccio sobre ChatOps: Realidad aumentada para operaciones
- Tutorial: Cómo instalar Lita Chatbot para IRC en Ubuntu
- Introducción a ChatOps guía paso a paso
- Serie de 3 partes sobre aventuras con Errbot
- Errores y consejos de ChatOps
- Hilo de Reddit ChatOps
- 8 razones por las que ChatOps no funciona en su empresa
0 Comentarios
Dejanos tu comentario para seguir mejorando!