Helm 安装
先看看 Helm 的组成,官方是这样说道的:
Helm has two parts: a client (helm) and a server (tiller)
通俗一点来说,Helm 由两部分组成:HelmClient 和 TillerServer
- HelmClient:对 Chart、Release、Repository 进行管理
- TillerServer:与 Kubernetes 进行交互,根据 Char 的定义,生成和管理各种 Kubernetes 资源
故,安装 Helm,需要安装 HelmClient 和 TillerServer 两部分
HelmClient 的安装
HelmClient 的安装,有两种方式:二进制安装、脚本安装
- 二进制安装:
二进制包下载地址:
选择合适的 Helm 版本进行下载,解压并将 helm
二进制移动到 /usr/local/bin
目录,这样 Helm 就安装完成了
curl -# -O https://get.helm.sh/helm-v2.14.1-linux-amd64.tar.gz
tar -zxvf helm-v2.14.3-linux-amd64.tar.gz
cp linux-amd64/helm /usr/local/bin/
rm -rf helm-v2.14.1-linux-amd64.tar.gz
注:https://get.helm.sh/helm-v2.14.1-linux-amd64.tar.gz
这个下载地址,应按自己的情况修改(版本号、系统位数等)
- 脚本安装:
脚本安装虽然简单粗暴,但由于国内某些原因,失败的可能性会比较大。。。
curl https://raw.githubusercontent.com/kubernetes/helm/master/scripts/get | bash
当然,Helm 的安装方式远不止这两种,更多方式可以参考:官方文档的 Install 部分
TillerServer 安装
TillerServer 的安装就十分简单了,官方推荐的安装方式就一句话:
helm init
但是,这样就能装好就太天真了。。。由于国内的各种原因,根本就拖都不到 tiller 的镜像,只能一直是 ImagePullBackOff
,我真是佛了。。。
解决办法:
初始化时,替换 tiller 的镜像为为阿里云的镜像,Helm 的 stable 仓库源也干脆直接更换为阿里云的 stable 仓库源
helm init --upgrade \
-i registry.cn-hangzhou.aliyuncs.com/google_containers/tiller:v2.14.3 \
--stable-repo-url https://kubernetes.oss-cn-hangzhou.aliyuncs.com/charts
最后,检测一下即可
- 查看 Pod 运行状态:
kubectl get pod -A | grep tiller
输出:
NAMESPACE NAME READY STATUS RESTARTS AGE
kube-system tiller-deploy-b8bccc494-zllmj 1/1 Running 0 7s
pod 状态为 Runing,没问题
- 查看 Helm 版本情况:
helm version
输出:
Client: &version.Version{SemVer:"v2.14.1", GitCommit:"5270352a09c7e8b6e8c9593002a73535276507c0", GitTreeState:"clean"}
Server: &version.Version{SemVer:"v2.14.1", GitCommit:"5270352a09c7e8b6e8c9593002a73535276507c0", GitTreeState:"clean"}
版本输出OK,也没问题,到这里 Helm 的安装就算完成了。
小结一下:
Helm 有两部分组成:HelmClient 和 TillerServer
HelmClient 安装方式:二进制安装、脚本安装
TillerServer 安装方式:helm init
命令(国内通常需要修改一些参数)
检测安装成果:helm version
命令