Helm3 has entirely changed its fundamentals, like tiller pods and service account permissions which we have used in version2.
So in the version3, it is quite easy for installing and moreover security aspect, In earlier versions, everyone installed it with proving full admin privileges. Those who are using Helm version 2 you must make sure you are using a separate and RBAC for the tiller Service Account.
In the new version Helm will use the same Kube config file permission you are using for managing your Kubernetes cluster.
Here I am providing the useful commands and configuration for Helm version 3.
Installation:
We can download the latest stable release from here: https://github.com/helm/helm/releases
ajeesh@Aspire-A515-51G:~/Downloads/helm$ tar -zxvf helm-v3.0.0-linux-amd64.tar.gz
linux-amd64/
linux-amd64/helm
linux-amd64/README.md
linux-amd64/LICENSE
ajeesh@Aspire-A515-51G:~/Downloads/helm$ cd linux-amd64/
ajeesh@Aspire-A515-51G:~/Downloads/helm/linux-amd64$ ls
helm LICENSE README.md
ajeesh@Aspire-A515-51G:~/Downloads/helm/linux-amd64$ sudo mv helm /usr/local/bin/
ajeesh@Aspire-A515-51G:~/Downloads/helm/linux-amd64$ helm --help
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
ajeesh@Aspire-A515-51G:~/Downloads/helm/linux-amd64$ helm version --short
v3.0.0+ge29ce2a
If you have helm2 version and you can easily migrate your version2 repos to helm version 3 using a helm plugin.
ajeesh@Aspire-A515-51G:~$ helm plugin install https://github.com/helm/helm-2to3Downloading and installing helm-2to3 v0.2.0 ...
https://github.com/helm/helm-2to3/releases/download/v0.2.0/helm-2to3_0.2.0_linux_amd64.tar.gz
Installed plugin: 2to3
ajeesh@Aspire-A515-51G:~$ helm plugin listNAME VERSION DESCRIPTION
2to3 0.2.0 migrate and cleanup Helm v2 configuration and releases in-place to Helm v3
ajeesh@Aspire-A515-51G:~$ helm 2to3 --helpMigrate and Cleanup Helm v2 configuration and releases in-place to Helm v3
Usage:
2to3 [command]
Available Commands:
cleanup cleanup Helm v2 configuration, release data and Tiller deployment
convert migrate Helm v2 release in-place to Helm v3
help Help about any command
move migrate Helm v2 configuration in-place to Helm v3
Here if you are in version 2 first you need to convert the configuration files from version 2 to verion2 using the command
helm 2to3 move
Then you can move your installed repos one by one using the command.
helm 2to3 convert jenkins
helm 2to3 convert wordpress
After migrated all the repo then you can clean up your old helm version 2
helm 2to3 cleanup : this will delete your tiller pods from your Kubernetes cluster.
ajeesh@Aspire-A515-51G:~$ helm search repo
Error: no repositories configured
Here we need to add our helm repo:
ajeesh@Aspire-A515-51G:~$ helm repo add stable https://kubernetes-charts.storage.googleapis.com"stable" has been added to your repositories
ajeesh@Aspire-A515-51G:~$ helm repo listNAME URL
stable https://kubernetes-charts.storage.googleapis.com
ajeesh@Aspire-A515-51G:~$ helm search repo jenkins
NAME CHART VERSION APP VERSION DESCRIPTION
stable/jenkins 1.9.7
If you search for a new repo using our old helm version 2 command you will get an error , since in version three it is different.
ajeesh@Aspire-A515-51G:~$ helm install stable/wordpress --name myblog
Error: unknown flag: --name
Here you need to use the helm command as like this,
ajeesh@Aspire-A515-51G:~$ helm install myblog stable/wordpress
NAME: myblog
LAST DEPLOYED: Tue Dec 3 22:48:56 2019
NAMESPACE: default
STATUS: deployed
REVISION: 1
NOTES:
1. Get the WordPress URL: