Ever wanted to know how to run Kubernetes the 'hard way' on bare metal? Wanted to learn how to deploy applications to Kubernetes the 'easy way' via Helm. Been searching the deep dark corners of the InterWebs for a comprehensive step-by-step guide on how to do it? Prefer a more advanced step-by-step guide without all the intro and beginner stuff? If so, then look no further, cause you finally found it!
Now let's get krack-a-lackin' and learn some shit!
DOWNLOAD AND INSTALL HELM
Let's start off by downloading and installing Helm. You'll use this cmd-line tool towards the very end of this blog series to deploy your first application to Kubernetes.
DOWNLOAD HELM
The main download page for Helm is on Github here. So let's download the latest version. At time of writing that is 3.7.1. Note: the $ below represents a non-privileged user on Arch Linux.
$ wget -c https://get.helm.sh/helm-v3.7.1-linux-amd64.tar.gz
CONFIRM SHA OF YOUR DOWNLOAD
For security purposes let's get the SHA256 from the downloaded tarball.
$ sha256sum helm-v3.7.1-linux-amd64.tar.gz
6cd6cad4b97e10c33c978ff3ac97bb42b68f79766f1d2284cfd62ec04c
Note: This download is for the amd64 architecture. If you're on different hardware make sure you download the right tarball.
CONFIRM SHA OF DOWNLOAD MATCHES
Now download the SHA for the download from the Github downloads page. Note: Make sure to substitute 3.7.1 below with whatever version you're downloading.
$ wget -q https://get.helm.sh/helm-v3.7.1-linux-amd64.tar.gz.sha256sum && cat helm-v3.7.1-linux-amd64.tar.gz.sha256sum |awk '{ print $1 }'
6cd6cad4b97e10c33c978ff3ac97bb42b68f79766f1d2284cfd62ec04cd177f4
If the output of the above cmd matches the output of the above sha256sum cmd then you should be good to go!
UNTAR THE HELM DOWNLOAD
Now let's untar your Helm download.
$ tar xvf helm-v3.7.1-linux-amd64.tar.gz
linux-arm64/
linux-arm64/helm
linux-arm64/LICENSE
linux-arm64/README.md
COPY HELM BINARY INTO PLACE
The final step will be to copy the Helm binary to a place where it will be found. For me that's $HOME/bin.
cp linux-arm64/helm ~/bin/
Note: If you don't have a bin directory inside your home directory like me then you'll either need to move it to some other location, such as /usr/local/bin, as the super user root or append your cp cmd with the sudo cmd.
CONFIRM YOU JUST MADE AWESOME HAPPEN
Now confirm the Helm binary will actually execute on your system without error by checking the version.
$ helm version
version.BuildInfo{Version:"v3.7.1", GitCommit:"1d11fcb5d3f3bf00dbe6fe31b8412839a96b3dc4", GitTreeState:"clean", GoVersion:"go1.16.9"}
If you see similar output above then CONGRATS! You just downloaded and installed a compiled GO binary of Helm: The GOTO industry standard for Kubernetes package management!
Stay tuned; lots more to see and learn in this blog series!
Stay Frosty,
Jackl0phty