Three ChatOps examples demonstrate DevOps efficiency
IT collaboration tools are taking center stage in DevOps shops, where they create an environment of connection -- to applications, to peer knowledge and to automation tools.
The always-connected, device-centered work environment of the future is far from the isolating, solitary experience many once feared. It's positively chatty.
The trend toward interactive collaboration environments has come to IT operations and development teams in the form of ChatOps, an alternative command interface for a diverse set of infrastructure and application administration tasks. It's ironic that, at the moment when AOL is shutting down its iconic AIM service, enterprise collaboration platforms, such as Slack, Atlassian Hipchat and Microsoft Teams, have taken over the workplace with conversational interfaces that encourage information sharing and group discussion.
ChatOps, which is a way of automating tasks via a quasi-intelligent, conversational, natural language interface, can be used to query information and initiate scripts that perform repetitive tasks. It emerged from the confluence of IT collaboration tools, such as Slack, and easily programmed chatbot frameworks, like GitHub's Hubot. While it might seem far-fetched, even risky, to entrust critical IT operations duties to a glorified version of Amazon Alexa, the combination of intelligent, conversational interfaces and back-end collaboration tools offers compelling uses in enterprise IT. These ChatOps examples might convince you to strike up a conversation.
Opportune scenarios for ChatOps and IT collaboration tools
For IT operations and development teams, the uses of chat platforms and automated chatbots fall into three primary categories: knowledge management and sharing, incident management and task automation. The following ChatOps examples show how organizations can use the technologies available effectively, as well as their implications for existing IT workflows, troubleshooting and communication.
Knowledge management
The primary reason organizations adopt IT collaboration tools is to share information via a familiar interface, presented as a news stream. The initial goal is to improve project management, keep teams in sync, assign tasks and update project statuses. The comment stream interface becomes how people discuss problems and ideas for improvement, raise questions and share expertise. The IT collaboration tool easily becomes a knowledge base when the organization saves and categorizes conversations, making them searchable. When IT operations teams use the platform as part of their troubleshooting and incident management process, the accumulated wisdom of colleagues with experience in similar situations makes IT collaboration tools a great means of information collection and dissemination, much like online help forums.
Although search is a core feature of all collaboration software, anyone who's trawled for answers in the comment streams of a product support forum can attest that it's not always the most efficient way to find information on a particular problem. That's where chatbot automation and content organization software come in handy, since they can automate the process via a conversational interface that replaces structured search queries and provides canned, vetted answers.
Guru is one ChatOps example. Guru is a bot for Slack that facilitates the conversion of shared answers into useful knowledge via emoji reactions, such as a like button to tag and save comments. When a user reacts to a posting, Guru prompts them to create a card to capture the information that is stored into a searchable, categorized wiki. The knowledge base in this wiki is accessible from a browser and exposed via a browser extension for use in web-based apps, such as Salesforce, Zendesk and G Suite from Google. Tettra is a similar product that collects and aggregates information from Slack into an organized, searchable wiki.
When IT collaboration tools permeate dev, ops and other parts of the organization, the variety of collected wisdom can be used for more than just troubleshooting. Use ChatOps to:
- onboard new employees by rapidly bringing them up to speed on processes, tips and other information from colleagues;
- document infrastructure, applications and workflows; and
- share customer information for sales and marketing that can augment systems, such as Salesforce, or turn collaboration platforms into a serviceable version of customer relationship management.
Incident management
For IT operations teams, the activity in online chat systems often relates to user or system support calls, or infrastructure problems. In such scenarios, information accumulated during a chat discussion creates a detailed record of incident response: what happened, when and why. Historical information and the real-time interactions of a comment stream combine to make it easy to pull a variety of colleagues into a discussion to address a particular question.
Together, these comments among IT engineers, app developers and front-line support people serve as a system of record, covering the contextual suggestions and actions to solve a problem. Chat interfaces encourage group problem solving and help get new people and their expertise involved with the issue. One successful example came from a university that faced an IT systems outage during finals week. A new person was able to quickly scan the chat log and catch up on the ongoing incident remediation effort. IT collaboration didn't slow anyone down, and the information was quickly and easily obtained.
Furthermore, the university IT team found that ChatOps encourages people to stay focused, engaged and concise, which reduced both the time to resolution and the stress on all involved.
Chatbots automate the process in many ways: They can query for and aggregate relevant data, run diagnostic tests and execute scripted fixes, subsequently providing a transcript of the chat and its actions as documentation.
Task automation
Bots in ChatOps environments go beyond information extraction and categorization into task execution. Indeed, the original intent of GitHub's Hubot was to automate code submittals and deployments. Chatbots replace manually invoking command-line scripts and GUI menus. Consider a ChatOps example where the IT operations engineer asks the bot to set up and configure a Linux test environment for the developers. Micro Focus Maestro is a bot that works with the company's operations orchestration software and either Slack or its open source look-alike, Mattermost. To handle this example task, the Maestro chatbot would ask for required parameters -- CPU, memory and disk space -- then create and deploy the requested VMs.
Bots can also reset passwords, summarize system diagnostics and act as a front end for automated backup or app deployment runbooks, among other uses. Tintri has developed a chatbot to automate provisioning and maintenance of its storage systems, via Slack for text commands and Alexa for voice control. Bank of New York Mellon has developed AI software using Tintri's bot to automatically retrieve usage and performance statistics, create VM snapshots and do other mundane tasks.
These few ChatOps examples prove that collaboration and IM are no longer gimmicks but, instead, mainstream productivity tools for IT operations teams. ChatOps rests on a foundation of real-time IT collaboration tools that everyone in an operation's organization must make part of their daily workflow. Start there, then install a bot framework and decide on some common, routine situations to hand over. The conversational interface will automate back-end scripts and streamline manual or command line-based processes, and the conversation can go back to who has the best gaming system.