可以通过更新 Tanzu Kubernetes 版本、虚拟机类或存储类,对 Tanzu Kubernetes 集群启动滚动更新,包括 Kubernetes 版本。
Tanzu Kubernetes 集群更新准备任务检查表
在执行
Tanzu Kubernetes 集群更新之前,请先完成以下必备任务列表。
步骤 | 操作 |
---|---|
1 | 阅读 vSphere with Tanzu 发行说明。 |
2 | 阅读 Tanzu Kubernetes 版本 发行说明。 |
3 | 查看 vSphere with Tanzu 更新工作流。 |
4 | 验证 Tanzu Kubernetes 集群与目标升级版本的兼容性。 |
5 | 查看 Tanzu Kubernetes Grid 服务 API 目标版本的功能(如 v1alpha2)和当前版本的功能(如 v1alpha1)。(请参见下面的“重要说明”。) |
6 | 确认所有已置备的 Tanzu Kubernetes 集群都处于正在运行状态。 |
7 | 执行 vSphere 命名空间更新以升级主管集群和 Tanzu Kubernetes Grid 服务。 |
8 | 查看对 Tanzu Kubernetes 集群启动滚动更新可用的选项。 |
9 | 查看支持的方法,以更新集群清单。 |
重要说明:
vSphere with Tanzu 版本 7 Update 3(尤其是
主管集群版本
v1.21.0+vmware.wcp.2
)包括自动升级到
Tanzu Kubernetes Grid 服务 v1alpha2 API。
Tanzu Kubernetes 集群规范中的某些字段已弃用,在升级 Kubernetes 版本之前,可能需要手动编辑集群清单。请参见
将集群规范转换为 TKGS v1alpha2 API 后更新 Tanzu Kubernetes 版本。
对 Tanzu Kubernetes 集群启动滚动更新
可以通过对
TanzuKubernetesCluster
规范进行以下一项或多项修改来启动滚动更新:
注: 虽然这些是启动滚动更新的最常用方法,但它们并不是唯一的方法。对任何配置元素进行更改也可以启动滚动更新。例如,当系统尝试在新映像上运行所有节点时,重命名或替换与分发版本对应的
VirtualMachineImage
会启动滚动更新。此外,更新
主管集群也可能会触发在其中部署的
Tanzu Kubernetes 集群的滚动更新。例如,更新
vmware-system-tkg-controller-manager
时,系统将向清单生成器中引入新值,并且控制器将启动滚动更新以部署这些值。
编辑集群清单的方法
要更新集群,需要更新集群清单。可通过各种方法执行此操作,包括:
- 使用
kubectl edit tanzukubernetescluster/CLUSTER-NAME
命令。此命令将在您的 KUBE_EDITOR 或 EDITOR 环境变量定义的文本编辑器中打开整个集群清单。保存文件时,将使用所做更改更新集群。有关kubectl edit
命令的详细信息,请参见 Kubernetes 文档中的 edit 命令。要使用kubectl edit
方法,请参阅以下主题: - 使用
kubectl patch
命令。此命令执行集群的“就地”更新。此命令的目的是提供一种升级 Kubernetes 版本的方法,也是此处介绍的方法。有关kubectl patch
命令的详细信息,请参见 Kubernetes 文档中的使用 kubectl patch 就地更新 API 对象。要使用kubectl patch
方法,请参阅以下主题: - 使用
kubectl apply
命令与手动更新的本地 YAML 文件。虽然这种方法具有类似创建集群的方式的优势,但如果您无权访问当前集群 YAML,则此方法可能具有破坏性,因此不建议使用。