Robots chatting

How to use chatbots and automation to optimize your data center

Continuous improvement of digital services, including round-the-clock availability and reliability, is essential to satisfy always-connected consumers.

In making the needed digital transformation, IT organizations are adopting new processes and technologies, such as virtualized infrastructure, configuration management, containerization, microservices, and functions as a service (i.e., serverless computing). It can be difficult to adapt. Within data centers, communication tools must support the smooth operation of these new technologies.

As part of the DevOps movement, ChatOps is quickly becoming the preferred method for managing much of an IT operations team’s deployment pipeline and operational stack. It can also bridge the gap between IT teams, including the data center.

The growth of persistent group chat tools such as HipChat and Slack demonstrates an overall shift toward tools that encourage collaboration over siloed, back-channel conversations. By establishing a collaborative and unified interface for teams to view and discuss relevant information, as well as take action, ChatOps has become what many consider to be the best way of managing IT.

The rise of chatbots

Development teams that have adopted ChatOps have found that they can optimize their work and shorten the time and effort it takes to get feedback. Teams and team members can use it to check code into a repository, document issues, respond to pull requests, and perform dozens of other tasks.

Now, operations teams are looking at methods to perform tasks in similar ways. Thanks to virtualized infrastructure and APIs, much of their work can now be performed in the same chat interface used by developers, building a bridge between IT teams.

But as a team’s ChatOps efforts become more advanced, it may find that third-party chat tool integrations do not provide all the functions or customization they need. When that happens, a chatbot can help the team fully realize the capabilities of ChatOps, and allow it to manage the interactions with tools and services in the way that works best for it.

What chatbots can do

Chatbots are essentially scripts, invoked when certain conditions are triggered, that produce text messages meaningful to teams in a persistent ChatOps session.

As an example, by leveraging the API capabilities of cloud providers, teams can create new instances that let them obtain additional compute, memory, or network resources. By passing commands and variables to a chatbot, scripts can be executed that manipulate infrastructure as needed. Spinning up new Docker containers and orchestrating them with Kubernetes is as easy as typing a few specific words in Slack.

The process of deploying applications entails several steps that can be automated as well. As part of the organization’s journey to digital transformation, code can be integrated into shared repositories, verified by an automated build, and trigger automated testing—a fast, repeatable, and safe way to get new features out to end users.

Once chatbots have been incorporated, teams can leverage ChatOps to monitor and respond to ongoing changes to applications and infrastructure. Changes may involve balancing storage clusters, responding to incidents, increasing resources to meet a spike in demand, or mitigating DDoS attacks. Want to check the load-balancing situation of HAProxy? Just ask a teammate.

Chatbots and the cloud

Chatbot scripts currently exist for a number of cloud providers such as AWS. Some capabilities include:

  • Creating or deleting an autoscaling group
  • Displaying all autoscaling groups and policies
  • Updating autoscaling groups and policies
  • Creating Amazon Machine Images (AMIs)
  • Displaying running EC2 instances
  • Running or terminating an EC2 instance

The result is that IT organizations can simplify or automate many repetitive operations work, teams can create better visibility into what’s going on in the deployment pipeline, engineers are empowered to deploy and manage production with much higher fidelity and confidence, and leadership gains better visibility into the state of systems and the work being done.

Dissolving traditional silos

When engineers are aware of the same information and empowered to act in the most effective way to meet business objectives, traditional silos begin to dissolve. This opens the door to building a reliable service that is constantly and quickly improving and exactly what every company faced with digital transformation is trying to accomplish.

Topics: IT Ops