安装使用应用商店
本文使用Helm的2.14.1版本进行讲解和演示使用。
如果您已经安装了Helm的客户端和服务端,您可以直接添加应用商店进行使用,添加命令如下:
helm repo add ucloud http://helm.ucloud.cn
先决条件
- 已创建UK8S集群
- 已安装配置kubectl连接到kubernetes集群(UK8S master默认安装kubectl)
- 已配置集群网关 (商店暂时只支持外网拉取)
安装Helm客户端
- 下载Helm
wget http://helm-releases.cn-bj.ufileos.com/helm-v2.14.1-linux-amd64.tar.gz
- 解压程序包
tar -zxvf helm-v2.14.1-linux-amd64.tar.gz
- 将压缩包中的Helm二进制文件移动到目标位置
mv linux-amd64/helm /usr/local/bin/helm
- 执行客户端命令查看是否安装成功
helm help
设置Helm命令的自动补全
为了方便Helm命令的使用,Helm提供了自动补全功能,执行如下命令
echo "source <(helm completion bash)" >> ~/.bashrc
安装Tiller服务端
通过Helm客户端进行Tiller安装,Helm会将Tiller安装到kubectl默认情况下连接到的kubernetes集群(kubectl config view)。
- 安装Tiller服务端
kubectl apply -f http://helm-releases.cn-bj.ufileos.com/tiller.yaml
- 通过Helm客户端进行关联
helm init --upgrade -c --stable-repo-url http://helm.ucloud.cn
- 验证是否安装成功
#查看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"}
这里我们针对Helm的安装进行了简化,可以研读一下第一步中的tiller.yaml,yaml中我们进行了Tiller的serviceaccount和clusterrolebinding创建,对Tiller设置了历史版本200的限制,设置了存储为secret等,如果您希望修改这些参数,可以在第二步中增加参数进行修改。
主要使用参数介绍(可以通过helm init --help进行查看):
1. --service-account设置ServiceAccount为tiller。 2. --upgrade如果已经安装了tiller则进行升级。 3. --history-max helm发布应用会将应用的release存为configmap用于历史查询和回滚等操作,设置记录最大值便于维护,如不对最大历史纪录进行限制,将无限期地保留历史纪录。 4. -i 等同于 --tiller-image 指定Tiller使用镜像,注意Tiller镜像需要和Helm镜像一致。 5. --stable-repo-url 定义初始商店地址。 6. --override 'spec.template.spec.containers[0].command'='{/tiller,--storage=secret}' helm发布应用会默认存储为configmap,这个参数用于启用secret存储历史纪录,增加了应用发布的安全性。 7. --kube-context 用于安装到kubectl非默认的kubernetes集群,如果你的kubectl配置了多集群,可以使用cat ~/.kube/config |grep current-context 选择你需要安装Tiller的集群,此处没有使用。 8. --tiller-namespace 安装到特定的namespace,此处没有限制,则安装到kube-system。