The Programmer
Helm
RBAC Kubernetes 安裝 helm
環境
- Google Kubernetes Engine
- Kubernetes version 1.12.8
- Helm version 2.14.1
安裝 Helm without RBAC
Helm 是 Kubernetes 的管理工具,Tiller 則是 API server,至於之間的差別,Helm 是 Client 端,Tiller 是 Server 端。輸入以下指令會安裝 Helm 和 Tiller:
1 | helm init |
官方文件建議加上 –history-max 參數,限制最大歷史指令的數量,如果沒有設定最大歷史記錄,則永遠保留歷史記錄。
1 | helm init --history-max 200 |
##設定 RBAC
在雲端平台上,由於有安全性的問題,如果不設定 RBAC,之後可能會無法正常使用,所以需要提供足夠的權限給 tiller,輸入以下指令建立權限,ServiceAccount 的名稱為 tiller:
1 | kubectl create serviceaccount --namespace kube-system tiller |
套用 tiller 的 ServiceAccount 到已經現有的上
1 | kubectl patch deployment --namespace kube-system tiller-deploy -p '{"spec":{"template":{"spec":{"serviceAccount":"tiller"}}}}' |
安裝 Helm with RBAC
所有設定一次到位,在 helm init 的時候,加了 –service-account 參數,直接套用 ServiceAccount:
1 | kubectl create serviceaccount --namespace kube-system tiller |
測試
1 | helm install --name my-db stable/influxdb |
查看套件清單
1 | helm ls |
刪除測試檔案,–purge 參數可以徹底刪除,不留下任何記錄,名稱可以透過上面的指令查詢:
1 | helm delete --purge my-db |
解除安裝 Helm
1 | kubectl -n kube-system delete deployment tiller-deploy |