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.

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 kubernetes ide
K8studio kubernetes ide

 

K8Studio features

Note the following features of the K8Studio tool.

  1. 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.
  2. 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.
  3. Node View: Displays nodes, pod types, container details, network topology, PVCs, PVs, and Storage Classes with live updates from the Kubernetes API.
  4. Filter and Search: Offers a search bar and filtering options for easy navigation through various elements based on labels, names, and more.
  5. Toolbox: Contains Kubernetes object types for easy drag-and-drop creation and file generation.
  6. Quick Editor: A structured editor for YAML files, providing suggestions, validations, and property descriptions.
  7. YAML Editor: Includes syntax highlighting and keyword auto-completion, with content validation and interface updates.
  8. Configuration: Facilitates config maps and secrets management, with features like inline base64 encoding and decoding.
  9. SSH and Logs: Provides SSH access and log reading for selected pods or nodes directly from the built-in terminal.
  10. 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.

Beginning the installation of k8studio
Beginning the installation of k8studio

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.

Creating a k8studio account
Creating a k8studio account

Once you create the account, look for an email containing your activation code for the tool.

Enter your activation code for k8studio
Enter your activation code for k8studio

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.

Viewing multiple kubernetes clusters with k8studio
Viewing multiple kubernetes clusters with k8studio

 

After entering your access code, below is a screenshot of the K8Studio tool after pointing it to a Kubernetes cluster in the lab environment.

The deployment view in k8studio
The deployment view in k8studio

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
A closer look in the deployment view of the kube system
A closer look in the deployment view of the kube system

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.

Adding another cluster connection
Adding another cluster connection

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.

Creating a new group in k8studio
Creating a new group in k8studio

 

Below you can see the new group added to the K8Studio dashboard.

Viewing the new group in k8studio
Viewing the new group in k8studio

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.

Viewing resource logs
Viewing resource logs

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.

The node view in k8studio
The node view in k8studio

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.

Viewing node resources
Viewing node resources

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.

Quick editor and bash shell
Quick editor and bash shell

Below, I have launch the bash terminal to one of the pods running in the cluster.

Viewing the shell of a kubernetes pod
Viewing the shell of a kubernetes pod

 

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.

Deploying resources with helm
Deploying resources with helm

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.

Post a Comment

0 Comments