top of page
  • Chris Munford

"AI for Kubernetes; Good or Evil?"

By Chris Munford, Nethopper's Founder/CEO


Good AI vs Evil AI

Ai for K8s; Good or Evil?
AI for Kubernetes; Good or Evil?
Disclaimer: for the “We haven’t achieved AI yet” crowd, please replace All “AI” with “ML” in this article.

Is AI good or evil? Is it the future of humankind or the end of it? If you can’t decide, then you’re in good company. Some of the brightest minds of our time are conflicted by the answer. For example, Steve Wosniak, credited with the invention of the personal computer, has spent some time considering their limits. Wos said in 2015 that AI is “Scary and Very Bad for People,” and then publicly flip flopped in 2018 when he said, ‘Artificial intelligence doesn't scare me at all’.


Elon Musk has very publicly warned about AI, “If AI has a goal and humanity just happens to be in the way, it will destroy humanity as a matter of course without even thinking about it…” However, Elon’s actions are very different from his words, as he is one of the biggest global investors in AI (self driving cars, founding OpenAI), so maybe he should recuse himself on this topic.

As the leader of a tech company trying to produce excellent software, I agree with the pragmatic Jeff Bezos, “I predict that, because of artificial intelligence and its ability to automate certain tasks… the quality of work will go up very significantly.” We may not all agree on the end game for AI, but - in the meantime - surely those companies who harness AI to ‘significantly’ improve quality and productivity are going to prevail.


Let’s start with Good AI

In the words of a great fictional software developer, Neo, who experienced evil AI’s destruction of the world, “I didn't come here to tell you how this is going to end. I came here to tell you how it's going to begin.” The AI revolution has begun by focusing on ‘Good AI’; using AI to benefit humankind, to make us more productive. ‘Good AI’ is used for tasks that are:

  • Repetitive. Humans don’t like to do things over and over and over. We get bored and unsatisfied.

  • Complex (and need to be done quickly and accurately). Humans can do things that are complex, but we can’t do them quickly, and without error. Especially things that involve a lot of data, and finding anomalies.

  • Lack of human expertise or labor. Humans aren’t good at doing things that there aren’t enough skilled humans to do.

Consider OpenAI’s ChatGPT (https://openai.com/blog/chatgpt), for example. ChatGPT, which stands for Chat Generative Pre-trained Transformer, is a large language model-based chatbot enabling users to refine and steer a conversation towards a desired length, format, style, level of detail, and language. ChatGPT allows us all to discover, learn, and produce communication faster, and is one of the most successful applications of AI. By contrast, the task of deciding whether to wage war or not, always seems to end badly, like in Terminator, Wargames, etc. Let’s see how they compare in the AI test:


The Artificial Intelligence Test
The AI Test

ChatGPT measures highly in all three ‘Good AI’ requirements. ChatGPT performs a repetitive task with over 10 million requests per day. If you’ve used ChatGPT, you’ll have no doubt that it performs a complex task, and does it quickly. ChatGPT also does something for which there is sparsely qualified human labor. Sure, there are a few experts that could answer your questions as well or better than ChatGPT, but these experts aren’t available to answer your questions. It’s only been a year, but it appears that ChatGPT is good for humans. Just for a little levity, let’s see how Hollywood film’s favorite AI, Warfare, does on the “The AI Test.” Not so well. Not only does AI driven warfare often lead to the brink of human extinction, but it also scores poorly on the AI test.


It would take too long to describe other examples of “Good AI,” such as computer vision, document processing, automated voice recording, and customer support. Each one scores highly on the “The AI Test” above.


AIOps = AI for IT Operations

Another growing area of ‘good AI’ is AI used to help us manage IT, often called “AIOps.” AIOps is not new. For several years, IT practitioners have been sending their infrastructure and application logs to be stored and processed by AI to analyze their operation, and to find anomalies to help them improve. Datadog (NASDAQ: DDOG) has built a $35B company by doing this well. There are other areas of technology that can also benefit from AI, such as Kubernetes.

Kubernetes is the new kid on the block, likely to replace VMs (Virtual Machines) as the infrastructure foundation for running software applications.

While Kubernetes has dominated the battle for container management, to date it has mostly benefited cutting-edge high tech companies, and is having a hard time going mainstream. Mainstream enterprise often criticizes Kuberentes as ‘too complex’ or ‘lack of K8s-skilled labor. Consider how the task of operating Kubernetes does in the “Good AI” test.


The AI test for K8s
The AI test for Kubernetes

K8SGPT = AI for Kubernetes Operations

Consider the job of a human (DevOps) trying to monitor applications running in Kubernetes. DevOps primary tool is the Kubernetes API, which they often experience as a CLI (kubectl). Using the CLI, they can see how everything, called “objects,” are running.

A single Kubernetes cluster might have 100s or 1000s of objects. Each object is described by a text file (yaml) that could have 5 to 200+ lines of text. Any single typo or error in any of that text, in any object will likely result in a broken application. Broken applications lead to unhappy customers, poor productivity and loss of revenue.

Humans can’t process all that yaml text information, especially as it changes frequently. It’s like reading the matrix. So, in practice, we are ‘reactive.’ i.e. we wait for the application to break, and then send in the K8s experts to check the yaml files, determine the root cause, and make the fix. While humans aren’t good at processing all this text, AI bots are perfectly suited for it. AI represents an opportunity to be ‘proactive’ and detect application failures before our customers do.


Enter K8SGPT. K8SGPT is a tool for scanning your kubernetes clusters, diagnosing and triaging issues in simple English. K8SGPT scans all of the yaml text for all of the objects in Kubernetes, and detects the slightest misconfiguration or anomaly.

K8SGPT gives Kubernetes Superpowers to everyone. K8SGPT is like ChatGPT, but always asks the same question, “Are my applications and Kubernetes configured properly, right now?”

K8SGPT has been trained to learn what a properly configured Kubernetes environment is, using all the objects' yaml text. K8SGPT responds with a list of issues, and how to resolve each one, in plain English. Human operators can then take action and resolve all of the issues.


Nethopper KAOPS now includes K8SGPT

I founded Nethopper KAOPS to make it easier to run apps in Kubernetes. Recently, generative AI has become a game changer to make all kinds of tasks easier. So, we added K8SGPT to the KAOPS platform version 5.0.

When enabled, K8SGPT acts like a copilot, constantly searching for issues in all your clusters, telling you what they are and how to fix them.

Every minute, we collect the configuration of all your Kubernetes clusters, redact the sensitive information, and query the openai.com api. We currently support the public openai api, called our ‘public option.’ This runs very well, is secure, and inexpensive, as it does not require users to run the GPT model on their own infrastructure. For those that wish to run GPT locally, we will also support this ‘local option’ upon request. However, the ‘local option’ will require extra server hardware running locally to perform and return results in a timeline manner. Contact support@nethopper.io for more information.


Summary

“Good AI” helps humans to be more productive, especially when doing complex, repetitive tasks. OpenAI-based K8SGPT can be used very effectively to aid humans to operate software applications running in Kubernetes. Nethopper KAOPS has recently added K8SGPT, making it even easier for DevOps/SRE to deploy, monitor and troubleshoot their applications.





Comments


bottom of page