Setting Up Helm v2 on Windows

Install Helm on Windows

You need the Helm binaries on your machine.

choco install kubernetes-helm
choco install kubernetes-helm and its output

Setting Up Helm on Kubernetes

Helm consists of Helm (Client) and Tiller (Server). Tiller gets deployed to Kubernetes and will need permissions to deploy apps.

  • airwave-tiller = this is where we will install the tiller server service
  • airwave-deploy = this is where we will be deploying apps using helm
kubectl apply -f   https://raw.githubusercontent.com/airwavetechio/helm/master/airwave-deploy-ns.json
kubectl apply -f https://raw.githubusercontent.com/airwavetechio/helm/master/airwave-tiller-ns.json
https://raw.githubusercontent.com/airwavetechio/helm/master/rbac-tiller-role.yml
kubectl apply -f https://raw.githubusercontent.com/airwavetechio/helm/master/rbac-tiller-role.yml
kubectl get ns
kubectl get sa
kubectl get sa -n airwave-tiller
helm init --service-account tiller  --tiller-namespace airwave-tiller --history-max 200
kubectl get pods -n airwave-tiller to double-check your work

You can now deploy applications using Helm to your airwave-tiller namespace.

Here we go!
helm repo update
helm install stable/mysql --namespace airwave-tiller --tiller-namespace airwave-tiller
Examples showing multiple installation attempts, and the RBAC taking effect since my kubectl context is set to the “default” namespace
kubectl get pods -n airwave-tiller

Deploy to another namespace

Now that you can deploy to the airwave-tiller namespace, let’s try perform a negative test of trying to deploy mysql to the airwave-deploy namespace.

helm install stable/mysql --namespace airwave-deploy --tiller-namespace airwave-tiller
Failed
kubectl apply -f https://raw.githubusercontent.com/airwavetechio/helm/master/rbac-deploy-role.yml
helm install stable/mysql --namespace airwave-deploy --tiller-namespace airwave-tiller
You can see it deploying now

Clean Up

Check your Helm installations

helm ls --tiller-namespace airwave-tiller
helm delete <name> --tiller-namespace airwave-tiller
kubectl delete -f https://raw.githubusercontent.com/airwavetechio/helm/master/rbac-deploy-role.yml
kubectl delete -f https://raw.githubusercontent.com/airwavetechio/helm/master/rbac-tiller-role.yml
kubectl delete -f https://raw.githubusercontent.com/airwavetechio/helm/master/airwave-tiller-ns.json
kubectl delete -f https://raw.githubusercontent.com/airwavetechio/helm/master/airwave-deploy-ns.json
choco uninstall kubernetes-helm

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store