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