Tools to manage Kubernetes resources

Posted on Jul 29, 2022

There are quite a lot of tools to view and manage your Kubernetes resources. I tried some of them and want to give you a small insight into what I think is the best way to view, update, delete and check resources of your Kubernetes cluster.

kubectl

With kubectl you’ll get a tool directly by the makers of Kubernetes.

I think that you don’t need to use it mandatory all the time, as the other tools I’ll present you here will make your workflows faster. But I think that knowing how to use kubectl will give you more flexibility: You’ll always know which commands you’re firing and what they do. Your knowledge in regards of a Kubernetes cluster will be enhanced and last but not least: When you update your Kubernetes cluster and kubectl, you can be sure, that you’ll be always up-to-date and can use the latest features.

The other tools can’t guarantee that they are implementing the full feature set of the Kubernetes API.

Add-on: Krew

What some developers don’t know is that there are also kubectl plugins which will make your life far easier.

With krew you can manage the local installations of your plugins. Nearly 200 plugins are distributed by krew. After their installation you can use them with a kubectl <PLUGIN_NAME> ... command.

k9s

An image of k9s

k9s is also a tool which runs in the CLI and provides a more structured view into your cluster. The advantage in regards of kubectl is that you can navigate much faster through your cluster and check the logs of your Pods and so on. Also you’ll get a live update of your cluster. With kubectl you need to fire your command again and again to get an updated view.

But in my case when I tried to investigate issues in the cluster itself with resources like PersistentVolumes or RBAC-based issues, I found it far more easier to use kubectl. Sure, you need to stick the information between the different CLI commands together, but the flexibility of kubectl is unbeatable.

However, if you need a fast access and live-overview of your cluster, this tool is really helpful (and that’s what I’m using it for).

Kubernetes Dashboard

The official Kubernetes dashboard gives you a web-based access to your Kubernetes cluster.

You can manage your resources via code or UI-elements, show logs and check the health status!

The Kubernetes dashboard is a very useful tool. But it needs someone to set-up and maintain the dashboard and access control. But for users who are not working with code / CLI, this is a pretty good tool to have insight into the running services!

The problem is that sometimes you will feel limited. In a huge cluster you need a lot of clicks to show or get done what you want. Sometimes the load time is also not as good as through the CLI.

Kubernetes Lens IDE

Kubernetes Lens IDE is the one and only Desktop UI for Kubernetes in this list. It has a free and paid version. Lens also allows managing and switching between different contexts with just one click. This is a big plus!

What I didn’t like so much is the included CLI which pops up when you attach to a container. This CLI needs some further work to be more intuitive and don’t feel buggy.

But for a fast and overall overview this is a really good tool!

Conclusion

This article showed you some tools to manage your cluster. Some of them are by Kubernetes itself (kubectl + plug-ins, Kubernetes Dashboard) and some are either Open Source (k9s) or by a company with a free and paid version (Kubernetes Lens IDE).

It always depends on your knowledge and how much you use it. So feel free to check them out. You can install three of them locally. The Kubernetes Dashboard can be used within a locally running minikube, if you want to give it a try.

However, I think a good knowledge of the CLI (with kubectl and plug-ins) will give you a better understanding of your cluster, if you need to manage it full!

Want to know more?

Keep on reading and choose one of the related articles. You can also check the home page for my latest thoughts, notes and articles.