- HX Club
- September 8, 2021
How to Install Helm Kubernetes Package Manager on Ubuntu 20.04
Kubernetes supports Helm package manager. Helm is used for find, share & use application which is built for Kubernetes. It provides help to manage Kubernetes application.
Now we will discuss about a helm’s few terminologies:
- Helm Chart: It is used for contain Information of an application which are deployed/released/installed on a Kubernetes cluster.
- Helm Release: Helm Release gets created when using Helm Chart, an application is deployed on the Kubernetes cluster.
- Helm Repository: It is used for store all Helm Chart.
- Chart.yaml: It contains information about the Helm chart.
- values.yaml: It stores the values & used for override default values to the application.
Install Helm on Ubuntu
Step 1. Update the System.
apt-get update
Step 2. Check the operating system version.
cat /etc/issue
Here is the command output.
Ubuntu 20.04.2 LTS \n \l
Step 3. Download Helm.
curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/master/
scripts/get-helm-3
Provide the following permission.
chmod 700 get_helm.sh
Step 4. Install the Helm.
./get_helm.sh
Here is the command output.
Downloading https://get.helm.sh/helm-v3.6.3-linux-amd64.tar.gz
Verifying checksum... Done.
Preparing to install helm into /usr/local/bin
[sudo] password for admin:
helm installed into /usr/local/bin/helm
Now Run Helm command.
helm
Here is the command output.
The Kubernetes package manager
Common actions for Helm:
- helm search: search for charts
- helm pull: download a chart to your local directory to view
- helm install: upload the chart to Kubernetes
- helm list: list releases of charts
Environment variables:
| Name | Description |
|-----------------------|----------------------------------------------------|
| $HELM_CACHE_HOME | set an alternative location for storing cached files.
| $HELM_CONFIG_HOME | set an alternative location for storing Helm configuration.
| $HELM_DATA_HOME | set an alternative location for storing Helm data.
| $HELM_DEBUG | indicate whether or not Helm is running in Debug mode
| $HELM_MAX_HISTORY | set the maximum number of helm release history.
| $HELM_NAMESPACE | set the namespace used for the helm operations.
| $HELM_NO_PLUGINS | disable plugins. Set HELM_NO_PLUGINS=1 to disable plugins.
| $HELM_PLUGINS | set the path to the plugins directory
| $HELM_REGISTRY_CONFIG | set the path to the registry config file.
How to Use Helm Package Manager
Step 5. Search Apache for a Helm Chart.
helm search hub apache
Here is the command output.
Search stable repository for Helm chart .
helm search repo apache
Here is the command output.There are no repository added.
Error: no repositories configured
Step 6. Now Install Repository for Helm Chart.
helm repo add stable https://charts.helm.sh/stable
Again Search repository.
helm search repo apache
Here is the command output.
List all added Repository.
helm repo list
Here is the command output.
NAME URL
stable https://charts.helm.sh/stable
Step 7. Search Repo for Jenkins
helm search repo jenkins
Here is the command output.
NAME CHART VERSION APP VERSION DESCRIPTION
stable/jenkins 2.5.4 lts DEPRECATED-Open source continuous integration.
We can install Jenkins using Helm command.
helm install jenkins stable/jenkins
Here is the command output.
- We gets connection refused error because do not have a Kubernetes cluster to deploy Jenkins.
WARNING: This chart is deprecated
Error: Kubernetes cluster unreachable: Get
"http://localhost:8080/version?timeout=32s": dial tcp 127.0.0.1:8080:
connect: connection refused
Now Search Repo for Jenkins.
helm search hub jenkins
Here is the command output.
- We gets multiple URL.
- Select one url & open the url.
- Select the url https://artifacthub.io/packages/helm/jenkinsci/jenkins.
- Add the repo for the chart using helm repo add bitnami https://charts.bitnami.com/bitnami command.
List the repo.
helm repo list
Here is the command output.
NAME URL
stable https://charts.helm.sh/stable
bitnami https://charts.bitnami.com/bitnami
Step 8. Install Jenkins using Helm.
helm install my-jenkins bitnami/jenkins
Here is the command output.
- Now we get Kubernetes cluster unreachable error so first we needs to setup kubernetes cluster click on link https://www.hackerxone.com/blog/how-manage-single-multiple-kubernetes-clusters-using-kubectl-kubectx-linux
Error: Kubernetes cluster unreachable: Get
"http://localhost:8080/version?timeout=32s": dial tcp 127.0.0.1:8080:
connect: connection refused
Step 9. Check the Helm environment
helm env
Here is the command output.
HELM_BIN="helm"
HELM_CACHE_HOME="/home/rohitsingh/.cache/helm"
HELM_CONFIG_HOME="/home/rohitsingh/.config/helm"
HELM_DATA_HOME="/home/rohitsingh/.local/share/helm"
HELM_DEBUG="false"
HELM_KUBEAPISERVER=""
HELM_KUBEASGROUPS=""
HELM_KUBEASUSER=""
HELM_KUBECAFILE=""
HELM_KUBECONTEXT=""
HELM_KUBETOKEN=""
HELM_MAX_HISTORY="10"
HELM_NAMESPACE="default"