Last week I came to know about VMware Octant and I was interested in trying it out. I used my Tanzu Community Edition install for which I wrote a blog post last month https://www.munishpalmakhija.com/2022/05/12/create-local-tanzu-kubernetes-cluster-using-docker-extensions/
In this blog, I will focus on explaining the following
- What is VMware Octant
- How does it authenticate with Kubernetes cluster
- How to install it?
- How to run?
- My key features
What is VMware Octant
It is an open-source project which allows users to manage the Kubernetes cluster and their applications using a web interface. It uses a client-go library to directly interact with the cluster. For more details, you can refer to
How does authentication work in Octant
It uses kubeconfig for interacting with the cluster. There is no additional authentication required
You can install it by downloading the package on the release page or using package managers like brew, chocolatey, and scoop.
brew install octant
choco install octant –confirm
Before starting octant please ensure you are able to access the Kubernetes cluster and ensure you are using the current context.
You can run octant -h to get more details on the extra options
I have used the following
If you want to use specific kubeconfig octant –kubeconfig=/pathtokubeconfig
If you have access only to a specific namespace octant -n <namespace>
For verbose logging octant -v
I found the following features very useful hence I am calling them key features
Graphical Visualisation of various components of the application. For e.g. If you have ngnix application deployed then it will show interconnectivity between various Kubernetes resources like pods, replica sets, service accounts & deployment.
1 click forwarding of the local port to a running pod for debugging applications
View logs for pods which help with quicker troubleshooting
1 click access to a shell of a running container to debug issues.
According to me, no application is complete without a dark theme these days 🙂
Summary & detailed view of all the cluster level resources.
With kubectl you will need to have multiple terminals open with an output of multiple commands to get this view.
Summary & detailed view of all the resources in the namespace
Last but not least. As octant uses the go client library to interact with the Kubernetes cluster it will generate logs for all the activity it is performing in the backend. This will help the user understand how it is behaving so that there are no surprises. I found this very useful.