K8Studio New Kubernetes Cluster Management IDE Tool
I am always looking for new Kubernetes tools to manage Kubernetes clusters differently or with new capabilities. I saw a tool that caught my attention called K8Studio. By its own description, K8Studio is designed to simplify and enhance the experience of managing Kubernetes clusters.
Table of contents
What is K8Studio?
The K8Studio project is a self-described cross-platform client IDE that allows admins to manage Kubernetes Clusters. It is built with an intuitive interface and features to help novices and experienced Kubernetes users manage Kubernetes clusters in the cloud (You can deploy easily to EKS, GKE, AKS, IBM Cloud or other cloud-native environments) or on their own bare-metal.
For lack of a better way to describe K8Studio, it is a similar type solution to Lens Kubernetes or the OpenLens solution as a Kubernetes IDE desktop client that you can use to interact with your Kubernetes cluster. Lens users will find the experience very similar. It makes it easy to access logs, element descriptions, and bash terminal command line with a single click.
K8Studio features
Note the following features of the K8Studio tool.
- Multi-Cluster View: Provides a summary of multiple clusters, offering insights into deployed applications, pod status, and monitoring information. It reads cluster configurations from the local kube config file and allows adding additional clusters.
- Deployment View: Enables visualization of workloads, network topology, pod statuses, and versions. Users can modify configurations directly through the interface. You can also interact with helm charts to deploy easily new Kubernetes deployments and services.
- Node View: Displays nodes, pod types, container details, network topology, PVCs, PVs, and Storage Classes with live updates from the Kubernetes API.
- Filter and Search: Offers a search bar and filtering options for easy navigation through various elements based on labels, names, and more.
- Toolbox: Contains Kubernetes object types for easy drag-and-drop creation and file generation.
- Quick Editor: A structured editor for YAML files, providing suggestions, validations, and property descriptions.
- YAML Editor: Includes syntax highlighting and keyword auto-completion, with content validation and interface updates.
- Configuration: Facilitates config maps and secrets management, with features like inline base64 encoding and decoding.
- SSH and Logs: Provides SSH access and log reading for selected pods or nodes directly from the built-in terminal.
- Export: Offers multiple export options, including YAML files, cluster configuration, and exporting views for documentation purposes.
Prerequisites for the install
As a brief note on prerequisites. If you are installing the K8Studio tool on Windows especially, you will want to ensure you have kubectl installed as K8Studio uses kubectl in the background to connect to your Kubernetes cluster.
You can do this in Windows using winget:
winget install -e --id Kubernetes.kubectl
Also, if you want to install applications, you will need to have helm installed as well to pull from helm repositories, but it is not a hard requirement to get K8Studio pointed to your Kubernetes cluster.
Installing K8Studio
Right now, the K8Studio release is in alpha status. The installation process of K8Studio is straightforward. You can visit the releases page of the GitHub site, or you can visit k8studio.io to pull the download.
Download and run the .exe file for the K8Studio setup.
After installing K8Studio, you will be presented with the below form. You will need to sign up with your email address and choose a password and confirm it.
Once you create the account, look for an email containing your activation code for the tool.
When K8Studio launches, it will read from your kubeconfig file and the cluster contexts that exist in the kubeconfig file. These are represented by tiles.
After entering your access code, below is a screenshot of the K8Studio tool after pointing it to a Kubernetes cluster in the lab environment.
Impressions with the user interface
The K8Studio is a fairly slick interface, and I like how it is laid out. Even though I had never used it before, it was intuitive to click around and find things in the layout. One thing I like about K8Studio is the very visual nature of the app. When you first launch it, it will display a very visual representation of your cluster resources. At first, I didn’t like how things were a bit hard to see, until I noticed I could zoom in on the various parts of the visual map.
Below, I zoomed into the kube-system map with the default showing the components:
- kube-dns
- coredns
- calico-kube-controllers
- calico-node
- kube-proxy
Managing Multiple Kubernetes Clusters
Like some of the other Kubernetes IDE tools, K8Studio makes it very easy to work with multiple clusters without worrying about manually changing contexts, etc. It will read from your kubeconfig file and present you with the clusters found there. You can add multiple clusters.
Also, you can add Groups which I think is a great idea. You can group your clusters into groups for easy identification of your clusters when you may have dozens or more clusters you are managing. Below, we are creating a new group called Dev Clusters.
Below you can see the new group added to the K8Studio dashboard.
Simplified Access to Kubernetes Resources and Logs
One of the great features of K8Studio is how easy it is to access Kubernetes resources and logs. Viewing logs is crucial for troubleshooting and monitoring the health of Kubernetes clusters. Admins can navigate through resources and access logs to gather relevant information they need to troubleshoot, audit, configure, etc.
K8Studio node view
K8Studio has a unique node view with a comprehensive graphical representation of your Kubernetes nodes. I like the way it makes it easy to see the structure and status of deployed resources and Kubernetes objects on your Kubernetes nodes.
You can single-click on each resource, and it will focus on that resource on your Kubernetes node. You can also view the informational view, logs, YML configuration, and set the refresh rate of the information.
Quick Editor and Bash Terminal
K8Studio has the ability to perform quick edits to configurations and resources within the Kubernetes cluster, making these easy to administer and modify if needed. You have quick access to the bash terminal, ability to delete resources, view logs, save changes, permissions changes, push all changes, etc.
Below, I have launch the bash terminal to one of the pods running in the cluster.
Easy Helm deployments
K8Studio makes it easy to deploy applications in your Kubernetes cluster with Helm. Just click on the Helm menu at the top and you will see the list of available helm charts for installation in your Kubernetes cluster. Click the Deploy button to begin the deployment.
Is it free, how much does it cost?
This is one that I am not really sure of. I didn’t find this information on the website. When you launch the tool, you can click your profile icon in the upper right-hand corner and choose Manage Subscription and it will launch the screen below. It looks as though the tool will be a subscription-based tool, at least eventually.
Also, in the lower right-hand corner there is a Licensed period that displays and makes me think this is a 30-day trial of the tool? However, again the information on that front is lacking. Since this is alpha once again, it may not have been set as of yet.
Wrapping up K8Studio Kubernetes IDE and Management Tool
Overall, I really like the K8Studio tool for interacting with Kubernetes clusters. The tool is very graphically driven and makes working with your resources very intuitive and easy to do from the interface, even if you haven’t used it before. Keep in mind, the tool is in Alpha at this point, and may have some quirks that need to worked out. I didn’t experience any crashes or other issues while using the tool in the lab. However, just keep that in mind.
I love tools like this, and I’m happy to pay for a license, even a subscription for personal use..
Unfortunately, trying to sell it as SaaS will often back fire – Consider, this is an OOB management tool, which by their nature requires elevated privilege. A lot of companies require these tools to be ran in isolated, and locked down environments (at its simplest, a bastion service), and egress is very rightly.controlled.. This runs at odds with the very nature of SaaS products.
Even if the business customer was not quite that banal for OOBM.. there is then the requirement for them to be a credited by a dozen different auditing standards… and then submit to an audit my the business-customers own internal security and governance teams…
KW, thank you for the comment and great insights on the management practices and thinking about auditing and security using these types of tools. Are you currently a Lens user by chance or OpenLens?