Kubernetes: helm

Getting it up and running

Install with brew install kubernetes-helm


helm init
Creating /Users/snowcrash/.helm
Creating /Users/snowcrash/.helm/repository
Creating /Users/snowcrash/.helm/repository/cache
Creating /Users/snowcrash/.helm/repository/local
Creating /Users/snowcrash/.helm/plugins
Creating /Users/snowcrash/.helm/starters
Creating /Users/snowcrash/.helm/cache/archive
Creating /Users/snowcrash/.helm/repository/repositories.yaml
Adding stable repo with URL: https://kubernetes-charts.storage.googleapis.com
Adding local repo with URL:
$HELM_HOME has been configured at /Users/snowcrash/.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!

Main concepts:

1. Chart: Helm package – contains all the resource definitions to run an application in a Kubernetes cluster.

See Helm Charts for examples of using Helm

2. Repository: where charts are stored

3. Release: an instance of a chart in a Kubernetes cluster. E.g. with a MySQL chart, you can have 2 databases running in a cluster by installing the chart twice. Each is its own release with its own release name.


Helm has two parts: the client (helm) and the server (tiller).

Tiller runs inside the Kubernetes cluster



helm – outputs commands available

helm version – outputs client / server version.

helm init – runs helm.

helm init --upgrade– to upgrade Tiller.



Error: Get dial tcp connect: connection refused

it’s probably ‘cos you need to start Kubernetes. E.g. with minikube use:

minikube start


Error: could not find a ready tiller pod

if you run kubectl -n kube-system get po, check you see a tiller-deploy pod available there. Then, given the pod `tiller-deploy-6fd8d857bc-fp5s2

kubectl logs tiller-deploy-6fd8d857bc-fp5s2

Error from server (NotFound): pods "tiller-deploy-6fd8d857bc-fp5s2" not found

Solution to this is to use

 --namespace kube-system


kubectl logs --namespace kube-system tiller-deploy-6fd8d857bc-fp5s2

which says:

[main] 2018/10/31 11:39:02 Starting Tiller v2.11.0 (tls=false)
[main] 2018/10/31 11:39:02 GRPC listening on :44134
[main] 2018/10/31 11:39:02 Probes listening on :44135
[main] 2018/10/31 11:39:02 Storage driver is ConfigMap
[main] 2018/10/31 11:39:02 Max history per release is 0




version is now working. But unsure if it was down to the earlier command I ran:

minikube addons enable registry-creds


Error: could not find tiller

Need to run helm init.




For more on Helm Charts see: Helm Charts


Leave a Reply

Your email address will not be published. Required fields are marked *