如何升级kubectl客户端版本

Mad*_*ala 14 macos homebrew kubernetes kubectl

我想将kubectl客户端版本升级到1.11.3.

我执行brew install kubernetes-cli但版本似乎没有更新.

Client Version: version.Info{Major:"1", Minor:"10", GitVersion:"v1.10.7", GitCommit:"0c38c362511b20a098d7cd855f1314dad92c2780", GitTreeState:"clean", BuildDate:"2018-08-20T10:09:03Z", GoVersion:"go1.9.3", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"11", GitVersion:"v1.11.4", GitCommit:"bf9a868e8ea3d3a8fa53cbb22f566771b3f8068b", GitTreeState:"clean", BuildDate:"2018-10-25T19:06:30Z", GoVersion:"go1.10.3", Compiler:"gc", Platform:"linux/amd64"}
Run Code Online (Sandbox Code Playgroud)

我正在尝试通过运行此命令获取单元格的日志.

kubectl logs -l groupname/cell=my-cell --all-containers=true
Run Code Online (Sandbox Code Playgroud)

这适用于我的VM,其客户端版本为1.11.3.但是在我的mac中它给了我一个错误,说--all-containers=trueflag不能用于kubectl logs命令.

Abu*_*ifa 24

安装特定版本 kubectl

curl -LO https://storage.googleapis.com/kubernetes-release/release/<specific-kubectl-version>/bin/darwin/amd64/kubectl

对于你的情况,如果你要安装的版本v1.11.3,然后替换特定kubectl版本v1.11.3

然后制作这个二进制文件

chmod +x ./kubectl
Run Code Online (Sandbox Code Playgroud)

然后将此二进制文件移到您的 PATH

sudo mv ./kubectl $(which kubectl)
Run Code Online (Sandbox Code Playgroud)

  • 您还可以使用 `curl -LO "https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt) /bin/darwin/amd64/kubectl"` 自动下载最新版本 (2认同)

Mil*_*iez 16

如果你已经安装了它brew,你就可以运行brew upgrade kubernetes-cli.


Dim*_*Dak 9

因此,要在 mac 上升级 kubectl:

brew upgrade kubectl
Run Code Online (Sandbox Code Playgroud)

那么你可能需要:

brew link --overwrite kubernetes-cli
Run Code Online (Sandbox Code Playgroud)

  • 如果你运行了“brew升级kubectl”并得到消息“kubernetes-cli xxx is已经安装”,那么,使用“brew link --overwrite kubernetes-cli”来处理哦,救救我吧~ (2认同)

Sum*_*ora 7

第 1 步 - 下载最新或特定版本的 kubectl 二进制文件

\n

请参阅: https: //kubernetes.io/docs/tasks/tools/install-kubectl-macos/#install-kubectl-binary-with-curl-on-macos

\n
Downloads$ curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/darwin/amd64/kubectl"\n\n  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current\n                                 Dload  Upload   Total   Spent    Left  Speed\n100   154  100   154    0     0    583      0 --:--:-- --:--:-- --:--:--   583\n100 50.6M  100 50.6M    0     0  9159k      0  0:00:05  0:00:05 --:--:-- 10.8M\n
Run Code Online (Sandbox Code Playgroud)\n

步骤2:旧版本

\n
\xe2\x9e\x9c  Downloads$ kubectl version\nClient Version: version.Info{Major:"1", Minor:"15", GitVersion:"v1.15.3", GitCommit:"2d3c76f9091b6bec110a5e63777c332469e0cba2", GitTreeState:"clean", BuildDate:"2019-08-19T11:13:54Z", GoVersion:"go1.12.9", Compiler:"gc", Platform:"darwin/amd64"}\n
Run Code Online (Sandbox Code Playgroud)\n

步骤 3:旧 kubectl 版本位置:

\n
\xe2\x9e\x9c  Downloads$ which kubectl\n/usr/local/bin/kubectl\n
Run Code Online (Sandbox Code Playgroud)\n

步骤 4:将新版本移动到以下位置:

\n
\xe2\x9e\x9c  Downloads$ sudo mv kubectl /usr/local/bin/.\nPassword:\n
Run Code Online (Sandbox Code Playgroud)\n

步骤 5:为 kubectl 二进制文件分配权限

\n
\xe2\x9e\x9c  Downloads$ kubectl version\nzsh: permission denied: kubectl\n\xe2\x9e\x9c  Downloads sudo chmod 755 /usr/local/bin/kubectl \n
Run Code Online (Sandbox Code Playgroud)\n

步骤 6:检查新版本

\n
\xe2\x9e\x9c  Downloads$ kubectl version                      \nClient Version: version.Info{Major:"1", Minor:"22", GitVersion:"v1.22.1", GitCommit:"632ed300f2c34f6d6d15ca4cef3d3c7073412212", GitTreeState:"clean", BuildDate:"2021-08-19T15:45:37Z", GoVersion:"go1.16.7", Compiler:"gc", Platform:"darwin/amd64"}\n
Run Code Online (Sandbox Code Playgroud)\n


Mad*_*ala 5

我已经使用 google-cloud-sdk 安装了 kubectl。所以在我的路径中,kubectl 指向这个位置。这就是版本没有更新的原因。在我从路径中删除 Kubectl 后,Kubectl 得到了更新。