Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents

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.


Installation

Installing Helm Client

...

> brew install kubernetes-helm

...

> 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 helm init --service-account = tiller

Code Block
$ helm init

Creating /Users/john.mehan/.helm 
Creating /Users/john.mehan/.helm/repository 
Creating /Users/john.mehan/.helm/repository/cache 
Creating /Users/john.mehan/.helm/repository/local 
Creating /Users/john.mehan/.helm/plugins 
Creating /Users/john.mehan/.helm/starters 
Creating /Users/john.mehan/.helm/cache/archive 
Creating /Users/john.mehan/.helm/repository/repositories.yaml 
Adding stable repo with URL: https://kubernetes-charts.storage.googleapis.com 
Adding local repo with URL: http://127.0.0.1:8879/charts  --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!

...

Code Block
$ kubectl get pods --allnamespace kube-namespacessystem
NAMESPACENAME     NAME                                    READY   STATUS             RESTARTS   AGE
default       cloudservice-59cb494cb6-6lv6metcd-docker-for-desktop           0/1     ImagePullBackOff   0          3h
default       hello-minikube-6c47c66d8-tqrt7          1/1     Running            1          222d
default       isservice-74cfdd65cc-kbbcc              0/1     ImagePullBackOff   0          3h
default       postgres-77bb78f976-8w6lp               0/1     CrashLoopBackOff   59         3h
default       redis-7c46fb6c6d-z28lw      25m
kube-apiserver-docker-for-desktop            1/1     Running            54         3h
kube-system   etcd-minikube                           1/1     Running            0          3h25m
kube-system   kube-addon-manager-minikube             1/1     Running            1          222d
kube-system   kube-apiserver-minikube                 controller-manager-docker-for-desktop   1/1     Running            0          3h25m
kube-system   kube-controller-manager-minikubedns-86f4d74b45-qhtdj        1/1     Running            0          3h
kube-system   kube-dns-86f4d74b45-r57mr               3/3     Running   0         4          222d 26m
kube-systemproxy-84lg7     kube-proxy-xh4jl                        1/1     Running            0          3h26m
kube-system   kube-scheduler-minikube     -scheduler-docker-for-desktop            1/1     Running            0          3h
kube-system   25m
kubernetes-dashboard-5498ccf677669f9bbd46-75dx7j2k2r   1/1     Running            3          222d
kube-system   storage-provisioner                     1/1     Running   0         3          222d
kube-system    22m
tiller-deploy-6fd8d857bc75f9fbff5d-grsk9sg4jn          1/1     Running 1/1        Running   0          4m5m


Using Helm



References

...