@ContrailBot – Bot as a Service (BaaS)


As computers become smarter, many new technologies have emerged. One technology which has taken a significant leap in the past few years is Artificial Intelligence & many new services have been built around this.

In this blog, we’ll look at one such service which is getting attention off late, called ChatOps (Chat Operations). ChatOps constitute a “ChatBot” or simply “Bot”, which are asynchronous conversational interfaces that help users to interact with applications. There are many bots out there, which can help you book flight tickets, order food, etc. “Bot as a Service (BaaS)” & “Artificial-Intelligence as a Service (AIaaS)” are the new buzzwords.

Taking it one step further, I introduce you to a bot which I call the “Contrail-Bot”. The bot interacts with the OpenContrail SDN controller & has a complete overview of the cloud (OpenContrail + OpenStack) infrastructure. By interfacing with OpenContrail, the bot offers the cloud-admin an interactive tool to build & manage the OpenStack infrastructure. The cloud-admin strikes a conversation by making requests to the Contrail-Bot & the bot will in turn translate these requests into a language that the OpenContrail SDN controller understands (Python/REST/CLI). The response from the controller is translated back & presented to the cloud-admin in a human readable format.

contrail-chatbot-blog-image1

I started developing the Contrail-Bot with a couple of objectives in mind,

  • I should be able to know if my cloud-services are all healthy & are running fine

contrail-chatbot-blog-image2

  • I should be able to execute all Linux commands on the target nodes (Power-User mode)

contrail-chatbot-blog-image3

  • I should be able to reimage & provision servers quickly with the OS & build of my choice (Contrail-Server-Manager integration)

contrail-chatbot-blog-image4

  • I should be able to monitor my cloud & minimize downtime (Get real-time text/call alerts)

contrail-chatbot-blog-image5

contrail-chatbot-blog-image6

As the Contrail-Bot evolves, I plan to introduce AI, which will allow the bot to learn continuously from user requests & take intelligent decisions (Eg. running diagnostic tests, healing the network, etc.) in the event of a failure.

Let the bot revolution begin!