运行后helm list
,出现以下错误:
错误:版本不兼容的客户端[v2.9.0]服务器[v2.8.2]
我做了一个头盔初始化,以安装兼容的分till版本“警告:群集中已经安装了Tiller。(使用--client-only禁止显示此消息,或使用--upgrade将Tiller升级到当前版本。”)。
有指针吗?
Answers:
要将分till版本升级到客户端的相同版本,只需运行 helm init --upgrade
像OP一样,我遇到了以下错误:
$ helm list
Error: incompatible versions client[v2.10.0] server[v2.9.1]
对我来说,更新服务器不是一个选择,因此我需要准备安装客户端的早期版本。我以前没有安装过client [v2.9.1](或任何以前的客户端版本),因此不能这样做brew switch kubernetes-helm 2.9.1
。我最终不得不遵循这个SO答案中的步骤:https : //stackoverflow.com/a/17757092/2356383
基本上说
现在有了正确的kubernetes-helm.rb文件的URL,我运行以下命令:
$ brew unlink kubernetes-helm
$ brew install https://raw.githubusercontent.com/Homebrew/homebrew-core/78d64252f30a12b6f4b3ce29686ab5e262eea812/Formula/kubernetes-helm.rb
$ brew switch kubernetes-helm 2.9.1
希望这对某人有帮助。
helm completion <SHELL>
。github.com/helm/helm/blob/master/docs/helm/helm_completion.md
如果不能更改服务器版本,则另一种选择是使用 helm安装程序脚本
该脚本可让您选择特定的版本,例如
./get_helm.sh -v v2.13.1
通过Docker使用不同版本的另一种方法。
https://hub.docker.com/r/alpine/helm
示例:列出已安装的头盔包
docker run -it --rm \
-v ~/.kube/config:/root/.kube/config \
-v ~/.helm:/root/.helm alpine/helm:2.9.1 \
list
这是一个很长的命令;但是可以用别名来缩短
alias helm_2_9_1="docker run -ti --rm \
-v $(pwd):/apps -v ~/.kube/config:/root/.kube/config \
-v ~/.helm:/root/.helm alpine/helm:2.9.1"
然后命令是
helm_2_9_1 list
该答案适用于想要选择(降级)掌舵客户端版本的用户,并且brew安装不起作用。您可以从此处手动安装二进制文件。
例:
您可以取消当前头盔的链接
brew unlink kubernetes-helm
在github helm中选择并下载所需的helm版本------ v2.8.2
解压缩文件并将helm unix可执行二进制文件放入/ usr / local / bin目录
转到您刚刚下载的目录
cd /Users/your_name/Downloads
解压缩文件
gunzip -c helm-v2.8.2-darwin-amd64.tar.gz | tar xopf -
复制到bin目录
cp darwin-amd64/helm /usr/local/bin
现在您将看到想要的头盔的正确版本
helm version
这可能不是最高级的答案...但是我的团队运行的是已经安装了分er的kubernetes集群。设置新笔记本电脑时,我希望我的头盔与耕作机版本匹配,因此我发现它是这样的:
TILLER_POD=`kubectl get pods -n kube-system | grep tiller | awk '{print $1}'`
kubectl exec -n kube-system $TILLER_POD -- /tiller -version
然后,我只使用了该发行版中的常规头盔安装说明(在Linux上,它基本上只是卷曲并解压缩到/ usr / local / bin)。
如果您是Windows用户并通过choco安装了helm,请首先转到其文件夹(我的文件夹为C:\ ProgramData \ chocolatey),然后从bin文件夹中删除helm.exe。
然后,应下载相应的heml.exe文件。通过使用以上注释,确定从中下载exe的位置。例如,我使用了该路径:https : //get.helm.sh/helm-v2.14.3-windows-amd64.tar.gz
最后,从tar中提取helm.exe,并将其移入choco bin文件夹中。当然,您可以直接将此exe添加到路径中。
我遇到了同样的问题,但就我而言,我只想将Tiller升级到特定版本(因为helm客户端正在远程运行)。
因此,错误是:
Error: UPGRADE FAILED: incompatible versions client[v2.11.0] server[v2.9.1]
根据我运行的文档:
$ kubectl --namespace=kube-system set image deployments/tiller-deploy tiller=gcr.io/kubernetes-helm/tiller:v2.11.0
deployment.extensions/tiller-deploy image updated
文档参考: