升级服务器上的 helm 和 tiller
最近使用 helm 的时候遇到了些问题,本着“遇到bug先升级最新版本”的原则,准备升级 helm 和 tiller。其实升级本来不麻烦,但是因为服务器在国内受到 GFW 的影响,所以变得麻烦了,在此记录一下折腾的过程。
升级 helm
首先来到 Releases 页面,查看最新的版本。因为下载链接来自 googleapis.com 被墙了,然后下载到本地再通过 SFTP 等方式上传到服务器。
然后我们在服务器上使用tar -zxvf helm-v2.0.0-linux-amd64.tgz
命令解压。将解压出来的 helm 二进制文件替换原来的 helm,你可以使用 which helm
来找到 helm 的位置。
根据官方说法,我们这里使用 helm init --upgrade
升级 tiller。然而这样操作之后使用的是 gcr.io 的镜像,不出意外这个网站也被墙了,所以我们需要曲线救国一下,先在本地下载,然后上传到 registry 再下载使用。
创建 tiller 镜像
我们先在本地使用 docker pull 拉取镜像。为了将其 push 到我们的 registry(我这里使用的是腾讯云的 registry),我们需要再给拉下来的镜像打个 tag:
docker tag gcr.io/kubernetes-helm/tiller:v2.13.1 ccr.ccs.tencentyun.com/admirable/tiller:v2.13.1
然后我们使用 docker login ccr.ccs.tencentyun.com
命令登录 registry,输入自己的用户名密码。最后 docker push ccr.ccs.tencentyun.com/admirable/tiller:v2.13.1
。
应用 tiller 镜像
最后我们利用 kubectl 或者 Dashboard 将 kube-system 命名空间下的 tiller-deploy 的 image 改成 ccr.ccs.tencentyun.com/admirable/tiller:v2.13.1 即可。