What is Krs and what problems does it solve for SRE and DevOps
The Problem Statement
DevOps and DevSecOps teams face a major hurdle: finding the right Kubernetes tools for their needs. Research shows that:
60% of DevOps engineers spend over 10 hours a week searching for optimal tools.
40% have used the wrong tool for the job, wasting time and resources.
Unoptimized Kubernetes clusters can cost companies $10,000+ per year.
Introducing Krs
Krs, Kubernetes Recommender System is here to change the game! This project utilizes GenAI technology to recommend the perfect Kubernetes tools for your unique environment. Say goodbye to endless searches and hello to a streamlined, efficient workflow.
What makes Krs unique?
Krs is a Kubernetes cluster health monitoring and tools recommendation service. The primary goal of KRS is to provide insights into the current state of a Kubernetes cluster, identify potential issues, and suggest relevant tools and resources to enhance the cluster's efficiency and security.
The project is designed to work with a local or remote Kubernetes cluster, and it utilizes various data sources, such as CNCF tools, Kubernetes landscape, and LLM (Language Model) for contextual analysis. KRS aims to provide actionable recommendations based on the cluster's current state and the latest trends in the Kubernetes ecosystem.
How does it work?
The project is built using Python and is designed to be easily installable and configurable. It provides a command-line interface (CLI) for users to interact with the tool. The project is open-source and available on GitHub at https://github.com/kubetoolsca/krs.
To achieve this, KRS follows a multi-step process:
Scans the Kubernetes cluster for resource usage, configuration, and potential issues.
Fetches data from CNCF tools, Kubernetes landscape, and other relevant sources.
Utilizes LLM for contextual analysis and understanding of the cluster's state.
Provides recommendations for improving the cluster's efficiency, security, and resource utilization.
Reduced Time Spent Searching: Krs helps you find the right tools quickly and easily.
Improved Efficiency: Get matched with tools that perfectly align with your needs.
Cost Optimization: Reduce wasted resources and optimize your Kubernetes cluster performance.
We're excited to share Krs with the developer community! We believe this open-source project has the potential to revolutionize the way DevOps and DevSecOps teams approach Kubernetes tooling.
Getting Started
Clone the repository
Install the Krs Tool
Change directory to /krs and run the following command to install krs locally on your system:
Krs CLI
Initialise and load the scanner
Run the following command to initialize the services and loads the scanner.
Scan your cluster
Run the following command to scan the cluster and extract a list of tools that are currently used.
You will see the following results:
Lists all the namespaces
Installing sample Kubernetes Tools
Assuming that you already have a bunch of Kubernetes tools running in your infrastructure. If not, you can leverage samples/install-tools.sh script to install these sample tools.
Use scanner
Kubetools Recommender System
Generates a table of recommended tools from our ranking database and their CNCF project status.
Krs health
Assuming that there is a Nginx Pod under the namespace ns1
The user is prompted to choose a model provider for the health check. The options provided are "OpenAI" and "Huggingface". The selected option determines which LLM model will be used for the health check.
Let's say you choose the option "1", then it will install the necessary libraries.
Let us pick up an example of Pod that throws an error:
Using Hugging Face
Get Involved!
Check out the Krs repository on GitHub: https://github.com/kubetoolsca/krs
Join our Slack community to discuss Krs and all things Kubernetes: https://launchpass.com/kubetoolsio
We welcome your contributions and feedback! Let's work together to build a smarter, more efficient future for Kubernetes!
platform engineer -VCI instructor & PSO consultant @VMware by Broadcom - Competence Lead & Senior ICT Trainer & Consultant @ELIS
1yI'll try this ASAP