十二、K8S初上手:安装Helm管理工具

1,201 阅读1分钟

官网:helm.sh/

k8s的包管理工具,可以用它使用 Charts 启动 Kubernetes 集群,真正的概念上有点晦涩难懂,可以把他理解成Node的NPM,或者PHP的Composer,但没哪些包依赖管理工具那么友好

安装
# 从这个获取对应的版本 https://github.com/helm/helm/releases
# 这里选择 Helm v2.16.10
# 我的操作系统是 Centos7 ,选择 Linux amd64
$ wget https://get.helm.sh/helm-v2.16.10-linux-amd64.tar.gz
# 解压
$ tar -zxvf helm-v2.16.10-linux-amd64.tar.gz
# 进入解压后的目录
$ cd linux-amd64
# 复制 helm 到 bin ,全局可执行
$ cp helm /usr/local/bin/helm
初始化
# helm 初始化时会安装 tiller
# 默认情况下 helm 的 repo(仓库源) 是 google ,被墙的死死的
$ helm init --service-account tiller --skip-refresh
# 我的习惯是先执行,再看 pod 里卡住不过的镜像的具体信息,主要要了解版本号
$ kubectl --namespace kube-system describe pod tiller-deploy-6845b7d56c-v5gmw
# 我这里看到现在寻找和需要的镜像
gcr.io/kubernetes-helm/tiller:v2.16.10
# 第一个做法,是找到匹配的镜像,使用 tag 重命名,这里 helm 提供了强制指定镜像的方式
# 顺手把 repo 也替换成国内的了
$ helm init --upgrade --tiller-image registry.cn-hangzhou.aliyuncs.com/google_containers/tiller:v2.16.10 --force-upgrade --stable-repo-url https://kubernetes.oss-cn-hangzhou.aliyuncs.com/charts

使用
# 查看版本 如果正常显示,没有出现 helm:Error: could not find tiller 说明就是正常的
helm version
Client: &version.Version{SemVer:"v2.16.10", GitCommit:"bceca24a91639f045f22ab0f41e47589a932cf5e", GitTreeState:"clean"}
Server: &version.Version{SemVer:"v2.16.10", GitCommit:"bceca24a91639f045f22ab0f41e47589a932cf5e", GitTreeState:"clean"}
 
# 更新源
helm repo update
Hang tight while we grab the latest from your chart repositories...
...Skip local chart repository
...Successfully got an update from the "stable" chart repository
Update Complete.