Helm¶
Installing Helm:
1 |
|
Installing Tiller
Tiller, the server portion of Helm, typically runs inside of your Kubernetes cluster. But for development, it can also be run locally, and configured to talk to a remote Kubernetes cluster.
To find out which cluster Tiller would install to, you can run kubectl config current-context
1 2 |
|
Once you have Helm ready, you can initialize the local CLI and also install Tiller into your Kubernetes cluster in one step:
1 |
|
This will install Tiller into the Kubernetes cluster you saw with kubectl config current-context.
Tip
Want to install into a different cluster? Use the --kube-context flag.
Tip
To upgrade Tiller, just run helm init --upgrade
To make it work in EKS (with RBAC enabled)
Create a file called rbac-config.yaml:
apiVersion: v1
kind: ServiceAccount
metadata:
name: tiller
namespace: kube-system
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
name: tiller
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: cluster-admin
subjects:
- kind: ServiceAccount
name: tiller
namespace: kube-system
Apply the config and install tiller in k8s cluster
$ kubectl create -f rbac-config.yaml
serviceaccount "tiller" created
clusterrolebinding "tiller" created
$ helm init --service-account tiller
The above can be done using the following commands
kubectl create serviceaccount --namespace kube-system tiller
kubectl create clusterrolebinding tiller-cluster-rule --clusterrole=cluster-admin --serviceaccount=kube-system:tiller
helm init --service-account tiller --upgrade
kubectl patch deploy --namespace kube-system tiller-deploy -p '{"spec":{"template":{"spec":{"serviceAccount":"tiller"}}}}'