Kubernetes tools

If you've ever worked with your hands, you know that you can't do the job right without the right tools. That adage carries over quite well to software development as well. The right tools can make the difference between success or failure, regardless of the underlying technology. In the Kubernetes ecosystem, more and more tools are being introduced as folks find ways to solve a common problem. This article looks are four of those tools.

kubectl

The standard command-line tool for Kubernetes, you can perform all the operations of Kubernetes that are required. This is the starting point for any Kubernetes administration. kubectl is the command-line tool for Kubernetes and is under the stewardship of the Cloud Native Computing Foundation, which brings us Kubernetes.

Installation on MacOS

brew install kubectl

Installation on Windows

choco install kubernetes-cli

Seriously, if you're not using Chocolatey for your Windows machine, stop everything and install it now. A game I like to play is to try to install some software without even looking it up. I'll just type, say, choco install notepad++ at the command line and see what happens. Chocolatey is almost as good as real chocolate. Almost.

stern

Keeping with the Kubernetes nautical theme, stern is the tail end of a ship ... and a tool to display the tail end of logs for containers and multiple pods. In the true spirit of open source community, the stern project comes from Wercker (which was acquired by Oracle in 2017).

Stern is a gift because, rather than viewing an entire log to see what happened most recently, you can use stern to watch a log unfurl.

Installation on MacOS

brew install stern

Installation on Windows

The installer can be download from the stern releases page.

kubectx

Kubectx is helpful for multi-cluster installations, where you need to switch context between one cluster and another. Rather than type a series of lengthy kubectl command, kubectx works it magic in one short command. It also allows you to alias a lengthy cluster name into an alias. For example (taken directly from the kubectx website), kubectx eu=gke_ahmetb-samples-playground_europe-west1-b_dublin allows you to switch to that cluster by running kubectx eu. Another slick trick is that kubectx remembers your previous context—much like the "Previous" button on a television remote—and allows you to switch back by running kubectx -.

The kubectx blog is here. Thank you to Googler Ahmet Alp Balkan—ahmetb on GitHub—for the tool. The repo is here.

Installation on MacOS

brew install kubectx

Installation on Windows

Because it's a Bash shell script, there is no kubectx for Windows. Do not despair; GitHub user thomasliddledba (Thomas Liddle) has created kubectxwin, which works with Windows. The download and build instructions are on the GitHub repo README page.

Hint: Use PowerShell Set-Alias kubectx kubectxwin

kubens

This script allows you to easily switch between Kubernetes namespaces. A simple kubens foo will make foo your active namespace. The simplicity of this tool is what makes it so appealing. It does one thing and does it well. Like kubectx, the dash ("-") option returns you to the previous value.

Kudos, again, to Ahmet Alp Balkan for kubens.

Installation on MacOS

When you run brew install kubectx, you get kubens with it. How's that for value?

Installation on Windows

Again, Thomas Liddle has come through with kubenswin. The download and build instructions are available on the GitHub repo README page.

Get your artisanal game on

Get these four tools loaded on your development machine, and you'll be ready to build some amazing applications while navigating the Kubernetes waters with ease. Once again, the open source community comes through for developers looking to advance and grow.

Last updated: February 5, 2024