Wednesday, July 3, 2024
HomeServerContainersVMware Octant – Visualize & Monitor Kubernetes Deployments

VMware Octant – Visualize & Monitor Kubernetes Deployments

The reign of containerized applications is here and it is here indeed. Talking of Kubernetes, Docker, Podman, Openshift and the rest of important platforms that push for a containerized world, you will definitely need tools to make your work better. Whether it is visualizing your pods, your deployments, viewing your logs and resources, then you are in for a pleasurable treat.

If you have a raw Kubernetes cluster and you feel the Kubernetes dashboard is not something you can work with, then this guide offers one alternative that you can look at and decide if it is something you can settle with. We proudly present VMware Octant.

Before we jump into the pool, let us investigate what you can expect from its waters. VMware Octant is a tool for developers to understand how applications run on a Kubernetes cluster. It aims to be part of the developer’s toolkit for gaining insight and approaching complexity found in Kubernetes. Octant offers a combination of introspective tooling, cluster navigation, and object management along with a plugin system to further extend its capabilities.

Impressive Features you will find.

VMware Octant is a beauty peagent that gets brilliant cheers from its audience due to the following features:

  • Visualization: VMware Octant provides a visual interface to managing Kubernetes that complements and extends existing tools like kubectl and kustomize.
  • Extensibility: You can add information to your cluster views through Octant’s plug-in system.
  • Versatility: VMware Octant supports a variety of debugging features such as filtering labels and streaming container logs to be part of the Kubernetes development toolkit.
  • Port forward: Debug applications running on a cluster in a local environment by creating port forwards through an intuitive interface.
  • Plug-ins over gRPC: With Octant’s plug-in API, core features can be extended to meet the needs of customized workflows on a cluster.
  • Real-time updates: With a complete view of an object and all its related objects, you can more accurately assess the status of applications and avoid unfocused debugging when things go wrong
  • Label Filter: Organize workloads with label filtering for inspecting clusters with a high volume of objects in a namespace.
  • Log Stream: View log streams of pod and container activity for troubleshooting or monitoring without holding multiple terminals open.
  • Can be installed on all platforms: That is Windows, Linux and macOS.

Octant Plugins

Plugins are a core part of Octant in the Kubernetes ecosystem. A plugin can read objects and allows users to add components to Octant’s views.

With that said, it is the intention of this guide to get VMware Octant installed and explored as well as well get to see how some plugins can be added and utilized therein. Without further delays, I believe we are now comfortable and ready to plunge into the waters.

How To Install VMware Octant

To get VMware Octant installed, you can be in Windows, Linux or macOS systems and you will accrue the same benefits. The following are the steps involved in getting VMware Octant installed.

Step 1: Update your server and install necessary applications

Depending on your platform, simply update your Operating system to get the latest packages and patches as well as installing essential packages such as git

### Debian based systems ###
sudo apt update
sudo apt install vim git curl wget -y

###For RHEL based systems###
sudo yum update
sudo yum install vim git curl wget -y

Step 2: Install VMware Octant on Linux / macOS / Windows

In this section you’ll be able to install VMware Octant on Linux, macOS and Windows.

Install VMware Octant on Linux

If you are on a distribution that supports .deb or .rpm, there are packages available for you. Depending on the architecture of your system simply visit the official releases page, download the packages matching your architecture and install them as follows:

##For DEB-based systems
wget https://github.com/vmware-tanzu/octant/releases/download/v0.25.1/octant_0.25.1_Linux-64bit.deb
sudo  dpkg -i octant_0.25.1_Linux-64bit.deb

##For RPM-based systems
wget https://github.com/vmware-tanzu/octant/releases/download/v0.25.1/octant_0.25.1_Linux-64bit.rpm
sudo rpm -ivh octant_0.25.1_Linux-64bit.rpm  

Installing VMware Octant on Windows

If you are on Windows, you can get your Octant running as well. To make your work easier, VMWare Octant is available as packages that Chocolatey and Scoop can fetch and install. If you do not have Chocolatey installed, you can use this how to install Chocolatey guide to get it running quick.

Install using Chocolatey

choco install octant --confirm

Install using Scoop

###Add the extras bucket.
scoop bucket add extras

##Then Install Octant
scoop install octant

Installing VMware Octant on macOS

For our macOS group of people, Homebrew always comes to the rescue and the following one-liner will make you happy:

brew install octant

Step 3: Getting Started with VMware Octant

Octant is configurable through environment variables defined during runtime, here are some of the notable variables you will enjoy to use:

i. Starting Octant with a given IP address and port

Environment variables defined at runtime can for example be like the one shared below where we specify the IP address and port we would wish the application to listen from and be accessed by. The command below will cause Octant to be accessed from any IP and at port 8900.

OCTANT_LISTENER_ADDR=0.0.0.0:8900 octant

Running the above command on your terminal exposes Octant on the IP of your server on the port specified. If you have a firewall running, you should allow that port for access. Finally, point your browser to the ip and port (http:<ip-or-fqdn>:8900) and you should see an interface as shown below. If will first ask you for the contents of your cluster’s config file for it to connect to it.

Octant 1 requesting kubeconfig file

Paste the contents of your config file as illustrated below then hit “UPLOAD” button.

Octant 2 kubeconfig file pasted

Once connected, you will be ushered into your cluster in the default namespace

Octant 3 connected first page

You can view all of the namespaces that you have.

Octant 4 view namespaces drop down

And view the resources within each namespace

Octant 5 show kube system namespace details

Conveniently check out your Nodes:

Octant 6 nodes view

And much much more.

Step 4: Adding Plugins to VMware Octant

Plugins are binaries that run alongside developer dashboard to provide additional functionality. Plugins are built using go-plugin in order to communicate with the dashboard over gRPC. They can read objects and allows users to add components to Octant’s views.

Plugins can do the following:

  • Add new tabs to the dashboard
  • Include additional content to an existing summary section
  • Create a new section in an existing tab
  • Port forward to a running pod

In order to add plugins, we will need to install Go. If you are on CentOS you can use:

How To Install Go on CentOS 8 | CentOS 7 and those in Ubuntu can use Install Go (Golang) on Ubuntu.

Once Go (Golang) is installed, run the following to install a sample plugin:

cd ~
git clone https://github.com/vmware-tanzu/octant.git
cd ~/octant/
go run build.go install-test-plugin

Once the sample plugin has been installed, launch Octant once again and view the plugins section. You should see “Sample Plugin” as shown below.

Octant 7 sample plugin

More details of the plugin can also be viewed as shared below. If you have any custom plugins, Octant can be extended. It is that flexible.

Octant 8 sample plugin

Find more about VMWare Octant at its official webpage

Culmination

Desiring a tool that makes sure your work is lighter and better is all most developers are looking for to help them visualize and get all information they would need to see their applications scale and grow. It is without a doubt that VMWare Octant is a promise keeper and a vigorous performer. It presents Kubernetes workloads and resources in a friendly and easy to follow fashion which will boost your work and take a load off your chest if you would wish to expand and diversify kubectl command. Get it installed and explore even more as you see if it is a tool you can keep and use.

Thapelo Manthata
I’m a desktop support specialist transitioning into a SharePoint developer role by day and Software Engineering student by night. My superpowers include customer service, coding, the Microsoft office 365 suite including SharePoint and power platform.
RELATED ARTICLES

Most Popular

Recent Comments