How to Install Helm Kubernetes Package Manager on Ubuntu 20.04
Helm is a package manager for Kubernetes. One can share, find and use software built for Kubernetes. Helm helps to manage Kubernetes applications. In this article, we will see how to install Helm on Ubuntu 20.04 server. We will not cover the successful deployment of applications using Helm on Kubernetes, yes you read it right. We will see the installation process and the basic commands. If you want to learn to deploy an application using Helm or create a Helm chart then do visit "How to deploy your applications on Kubernetes using Helm?"
Before we proceed, let's understand a few terminologies of Helm.
- Helm Chart: It is a Helm package that contains information of an application to be deployed/released/installed on a Kubernetes cluster.
- Helm Release: Release gets created when a Helm chart is installed, i.e. an application is deployed on the Kubernetes cluster using Helm chart.
- Helm Repository: A repository is a place where Helm charts are stored. Helm can point to 0 or multiple repositories.
- Chart.yaml: This file contains information regarding the Helm chart.
- values.yaml: Once can override default values to the application by having those values in values.yaml file.
In this article, we will see the steps to install Helm3, in terms of architecture there is a difference between Helm2 and Helm3. One of the major differences is "Removal of Tiller". To know more about the difference visit the official documentation of Helm here.
- Ubuntu 20.04 Server
What will we do?
- Install Helm
- Play with Helm
First, check the version of your operating system and see if you have "Helm" installed on your system or not.
It is straightforward to install the Helm, execute the following commands and it will get the installation done for you.
curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3
chmod 700 get_helm.sh
If you execute helm this time you can see its help.
Play with Helm
You can search for a Helm chart on the Internet using the following command.
helm search hub apache
You can also search for a particular Helm chart on your system. To do so, you need to first add a stable helm repository else the search will fail.
helm search repo apache
In the above screenshot, you can see an error as "no repositories configured". To add a stable repository on your local system execute the following command and then search for a particular package.
helm repo add stable https://charts.helm.sh/stable
helm search repo apache
In the above screenshot, you can see this time the search was successful.
You can check all repositories you have added to your local system using the following command.
helm repo list
Now let's search for Jenkin in the local repository and install it.
helm search repo jenkins
helm install jenkins stable/jenkins
The above installation will fail as we do not have a Kubernetes cluster in place to deploy Jenkins. You can see the error in the following screenshot. This was the reason why I mentioned at the beginning of this article that we will not cover the successful deployment of applications using Helm on Kubernetes.
The way we tried to search Jenkins in the local repository, we can search on the internet too and try to install it.
helm search hub jenkins
You can get a URL from the search result and hit it in the web browser to get its repository URL and add it to your local system.
Once you hit the URL in the browser, you will get commands to add the repository to your local system and install the package from it.
Now, add the repo for the chart on your system and try to install Jenkins.
helm repo add bitnami https://charts.bitnami.com/bitnami
helm repo list
helm install my-jenkins bitnami/jenkins
The above installation will also fail with the same error "Kubernetes cluster is unreachable" that we got previously as we do not have the Kubernetes Cluster.
To know about the Helm environment execute the following command which will give you details regarding the Helm environment.
In this article, we saw steps to install Helm on Ubuntu 20.04 server. We tried adding repositories on the local system. We also tried installing a chart of Jenkins which failed due to the absence of the Kubernetes Cluster. This article covers the basics of Helm and does not cover chart installation or release, chart releases will be covered in a separate article named "How to deploy your applications on Kubernetes using Helm?".