升级集群

    升级集群的方式取决于你最初部署它的方式、以及后续更改它的方式。

    从高层规划的角度看,要执行的步骤是:

    • 升级控制平面
    • 升级集群中的节点
    • 升级 之类的客户端

    你必须有一个集群。 本页内容涉及从 Kubernetes 1.23 升级到 Kubernetes 1.24。 如果你的集群未运行 Kubernetes 1.23, 那请参考目标 Kubernetes 版本的文档。

    如果你的集群是使用 安装工具部署而来, 那么升级集群的详细信息,请参阅 升级 kubeadm 集群

    升级集群之后,要记得 .

    你应该跟随下面操作顺序,手动更新控制平面:

    • etcd (所有实例)
    • kube-apiserver (所有控制平面的宿主机)
    • kube-controller-manager
    • kube-scheduler
    • cloud controller manager, 在你用到时

    现在,你应该 安装最新版本的 kubectl.

    对于集群中的每个节点, 节点,然后,或者用一个运行了 1.24 kubelet 的新节点替换它; 或者升级此节点的 kubelet,并使节点恢复服务。

    参阅你的集群部署工具对应的文档,了解用于维护的推荐设置步骤。

    对象序列化到 etcd,是为了提供集群中活动 Kubernetes 资源的内部表示法, 这些对象都使用特定版本的 API 编写。

    对于每个受影响的对象,用最新支持的 API 获取它,然后再用最新支持的 API 写回来。

    升级到新版本 Kubernetes 就可以提供新的 API。

    你可以使用 kubectl convert 命令在不同 API 版本之间转换清单。 例如:

    替换了 pod.yaml 的内容, 在新的清单文件中, 被设置为 Pod(未变), 但 apiVersion 则被修订了。