What is Helm?

Helm helps you manage Kubernetes applications — Helm Charts helps you define, install, and upgrade even the most complex Kubernetes application.

Charts are easy to create, version, share, and publish — so start using Helm and stop the copy-and-paste madness.


List of stable maintained charts

https://github.com/helm/charts/tree/master/stable


Curated applications for Kubernetes

https://github.com/helm/charts

Installation

Installing Helm Client

> mkdir /tmp

> curl https://raw.githubusercontent.com/kubernetes/helm/master/scripts/get > install-helm.sh

chmod u+x install-helm.sh

> ./install-helm.sh


Install Service Account

> kubectl -n kube-system create serviceaccount tiller

kubectl create clusterrolebinding tiller --clusterrole cluster-admin --serviceaccount=kube-system:tiller


Initialize Helm

Once you have Helm ready, you can initialize the local CLI and also install Tiller into your Kubernetes cluster in one step:


helm init --service-account tiller

$ helm init --service-account tiller
$HELM_HOME has been configured at /Users/john.mehan/.helm.

Tiller (the Helm server-side component) has been installed into your Kubernetes Cluster.

Please note: by default, Tiller is deployed with an insecure 'allow unauthenticated users' policy.
To prevent this, run `helm init` with the --tiller-tls-verify flag.
For more information on securing your installation see: https://docs.helm.sh/using_helm/#securing-your-helm-installation
Happy Helming!


You should see tiller installed by issuing the following command:

> kubectl get pods --all-namespaces

$ kubectl get pods --namespace kube-system
NAME                                         READY   STATUS    RESTARTS   AGE
etcd-docker-for-desktop                      1/1     Running   0          25m
kube-apiserver-docker-for-desktop            1/1     Running   0          25m
kube-controller-manager-docker-for-desktop   1/1     Running   0          25m
kube-dns-86f4d74b45-qhtdj                    3/3     Running   0          26m
kube-proxy-84lg7                             1/1     Running   0          26m
kube-scheduler-docker-for-desktop            1/1     Running   0          25m
kubernetes-dashboard-669f9bbd46-j2k2r        1/1     Running   0          22m
tiller-deploy-75f9fbff5d-sg4jn               1/1     Running   0          5m


Using Helm

Let's start by installing the kubernetes dashboard using helm.


Installing a Chart

helm install stable/kubernetes-dashboard --name dashboard


List Releases

> helm list

NAME     	REVISION	UPDATED                 	STATUS  	CHART                     	APP VERSION	NAMESPACE
dashboard	1       	Tue Apr  2 08:37:56 2019	DEPLOYED	kubernetes-dashboard-0.8.0	1.10.0     	default


Rolling Back a Release

helm rollback dashboard 1


Deleting a Release

> helm delete dashboard

> helm delete --purge dashboard


References

  • No labels