安装 helm
通过 homebrew(macOS)
$ brew install helm@2
使用 helm
安装服务端 tiller
:
$ kubectl -n kube-system create sa tiller
$ kubectl create clusterrolebinding tiller \
--clusterrole=cluster-admin \
--serviceaccount=kube-system:tiller
$ helm_version=$(helm version --client | grep "Client" | cut -d '"' -f2)
$ helm init --service-account tiller -i registry.cn-hangzhou.aliyuncs.com/google_containers/tiller:${helm_version} --stable-repo-url http://mirror.azure.cn/kubernetes/charts/
升级服务端 tiller
:
$ helm_version=$(helm version --client | grep "Client" | cut -d '"' -f2)
$ helm init --upgrade --service-account tiller -i registry.cn-hangzhou.aliyuncs.com/google_containers/tiller:${helm_version} --stable-repo-url http://mirror.azure.cn/kubernetes/charts/
检查 helm
版本
$ helm version
Client: &version.Version{SemVer:"v2.16.1", GitCommit:"bbdfe5e7803a12bbdf97e94cd847859890cf4050", GitTreeState:"clean"}
Server: &version.Version{SemVer:"v2.16.1", GitCommit:"bbdfe5e7803a12bbdf97e94cd847859890cf4050", GitTreeState:"clean"}
查找 Charts, 如果没有使用过滤条件,helm search 显示所有可用的 charts。可以通过使用过滤条件进行搜索来缩小搜索的结果范围:
$ helm search rabbitmq
安装一个软件包
$ helm install --name rabbitmq stable/rabbitmq
查看 release 状态
$ helm status rabbitmq
查看 chart 上可配置的选项
$ helm inspect values stable/rabbitmq
升级版本
$ helm upgrade -f values-production.yaml rabbitmq stable/rabbitmq
查看特定版本的修订版号
$ helm history rabbitmq
失败时恢复
# helm rollback [RELEASE] [REVISION]
$ helm rollback rabbitmq 1
删除 Release
$ helm delete rabbitmq
删除 Release 和所有这个 Release 的记录
$ helm delete rabbitmq --purge
查看已删除的版本
$ helm list --deleted
显示了所有 release(已删除和当前部署的,以及失败的版本)
$ helm list --all
查看配置了哪些 repo
$ helm repo list
添加新的 repo
$ helm repo add incubator http://mirror.azure.cn/kubernetes/charts-incubator
更新 repo,获取最新的 chart 信息
$ helm repo update
chart 开发指南 Chart Development Guide 介绍了如何开发自己的 chart