更新和升级 ¶
更新 kOps ¶
MacOS ¶
从 Homebrew
brew update && brew upgrade kops
从 Github
sudo rm -rf /usr/local/bin/kops
wget -O kops https://github.com/kubernetes/kops/releases/download/$(curl -s https://api.github.com/repos/kubernetes/kops/releases/latest | grep tag_name | cut -d '"' -f 4)/kops-darwin-amd64
chmod +x ./kops
sudo mv ./kops /usr/local/bin/
您也可以重新运行 这些步骤,如果您之前是从源代码构建的。
Linux ¶
从 Github
sudo rm -rf /usr/local/bin/kops
wget -O kops https://github.com/kubernetes/kops/releases/download/$(curl -s https://api.github.com/repos/kubernetes/kops/releases/latest | grep tag_name | cut -d '"' -f 4)/kops-linux-amd64
chmod +x ./kops
sudo mv ./kops /usr/local/bin/
您也可以重新运行 这些步骤,如果您之前是从源代码构建的。
您可能希望运行以下命令以在更新 kOps 后包含修复程序/功能
kops update cluster $NAME --yes
kops rolling-update cluster $NAME --yes
升级 Kubernetes ¶
使用 kOps 升级 Kubernetes 很容易。集群规范包含一个 kubernetesVersion
,因此您可以使用 kops edit
轻松地对其进行编辑,并将更新的配置应用到您的集群。
kops upgrade
命令还自动执行检查和应用更新的操作。
建议运行最新版本的 kOps 以确保与目标 kubernetesVersion 兼容。在应用 Kubernetes 次要版本升级(例如 v1.5.3
到 v1.6.0
)时,您应该确认目标 kubernetesVersion 与 当前 kOps 版本 兼容。
手动更新 ¶
kops edit cluster $NAME
- 将 kubernetesVersion 设置为目标版本(例如
v1.3.5
)。请注意,下面使用的动词是update
,而不是upgrade
。 kops update cluster $NAME
预览,然后kops update cluster $NAME --yes
kops rolling-update cluster $NAME
预览,然后kops rolling-update cluster $NAME --yes
自动更新 ¶
kops upgrade cluster $NAME
预览,然后kops upgrade cluster $NAME --yes
将来,升级步骤可能会立即执行更新(甚至可能无需节点重启),但目前您必须
kops update cluster $NAME
预览,然后kops update cluster $NAME --yes
kops rolling-update cluster $NAME
预览,然后kops rolling-update cluster $NAME --yes
升级使用 kOps 认为稳定的最新 Kubernetes 版本,在 https://github.com/kubernetes/kops/blob/master/channels/stable
中定义。
Terraform 用户 ¶
kops edit cluster $NAME
- 将 kubernetesVersion 设置为目标版本(例如
v1.3.5
) - 注意:以下 3 个步骤必须都在同一目录中运行。此处,
--out=.
指定 Terraform 文件将写入当前目录。它应该指向kops create cluster
创建的 Terraform 文件所在的目录。默认值为out/terraform
。 kops update cluster $NAME --target=terraform --out=.
terraform plan
terraform apply
kops rolling-update cluster $NAME
预览,然后kops rolling-update cluster $NAME --yes
其他说明: ¶
- 一般来说,我们建议您一次升级一个次要版本(1.17 --> 1.18 --> 1.19)。尽管跳过次要版本可能会在您没有启用 alpha 功能的情况下有效,但由于版本弃用,您可能会遇到更多问题。