升级前准备
支持的升级路径:
- 从
4.0→4.3 - 从
4.1→4.3 - 从
4.2→4.3
开始之前,请确保当前平台版本处于支持的升级范围内。
如果你有 MySQL-PXC 实例,在升级到 ACP v4.3.0 或更高版本后(同时 MySQL operator 也会升级),它们将变为 未受管。迁移说明请参见 MySQL Operator 升级指南。
在 Immutable Infrastructure(Huawei DCS、VMware vSphere、Huawei Cloud Stack 和裸机 immutable OS)上,以上支持的升级路径适用于 ACP Distribution Version;在这种情况下,ACP 仍会通过 Cluster Version Operator 直接迁移到目标版本。若目标 ACP 版本比集群当前版本高出一个以上的 Kubernetes 小版本,则 Kubernetes 升级还需要预先准备中间版本的制品。开始升级窗口前,请先参见 跨版本升级准备。
重要说明
- 确保 global 集群控制平面节点上的
/cpaas/minio目录至少有 120 GB 的可用磁盘空间。 - 在将 global 层升级到 ACP 4.3 之前,所有业务集群都必须保持在 Kubernetes 支持矩阵 中记录的 ACP 4.3 兼容版本范围内。
- 如果任何业务集群超出该兼容范围,请先升级该业务集群,直到其进入 ACP 4.3 兼容范围,然后再升级 global 层。
- 业务集群只能升级到 global 层已经达到的 Distribution Version。
为离线环境下载软件包
生产维护窗口通常会在同一个窗口内升级 Core、Aligned plugins(与同一 ACP 版本一起发布的集群插件和 operator)以及正在使用的 Agnostic plugins(独立发布的集群插件和 operator)。请在升级开始前准备好集群当前使用的每个软件包,即使从技术上讲升级某个 Agnostic plugin 并非必需。在维护窗口中保留一个 Agnostic plugin,往往会迫使后续再安排一次维护窗口。
步骤 1:下载 Core 软件包
从 Customer Portal 下载 Core Package。Core package 仅包含 upgrade.sh 将为 CVO 驱动的 Core 升级准备的 Core 制品。
尽管 CVO 知道哪些 Aligned plugin 版本对应目标 ACP 版本,但 Core package 不会打包 Aligned plugin packages。Aligned plugin packages 必须从 Customer Portal 另行下载,并使用 violet 推送;下一步会结合 Agnostic plugins 一并说明该工作流。
步骤 2:清点范围内每个集群上的插件
cluster plugins 和 operator 由不同机制管理。在这一步中,两者都需要:
- cluster plugins 是全局资源。推送到 global 层的 cluster plugin 会变为平台中每个集群都可安装和升级;每个 cluster plugin 只需推送一次。
- operator 的作用域是每个集群。将 operator 推送到 global 层是推荐的起点,但在某个业务集群升级之前,同一个 operator package 必须已在该业务集群上可用。
进入 Customer Portal 中的 CLI Tools 部分,下载 violet 工具。上传 Aligned 和 Agnostic plugin packages 需要 violet。有关 violet 的更多信息,请参见 上架软件包。
在任何一台可访问 平台端点的机器上,运行 violet list 以列出当前环境中已安装的插件(包括 Aligned 和 Agnostic),并将结果导出到 ./apps.yaml:
步骤 3:对齐 Customer Portal 软件包列表
将导出的 apps.yaml 文件导入 Customer Portal,使软件包列表与集群当前运行的内容保持一致。随后,portal 会提供匹配目标版本的软件包供下载——Core、Aligned plugins,以及集群正在使用的 Agnostic plugins。
请下载你所需的所有软件包,确保在升级窗口开始前它们都已在本地可用。下一页,升级 global 集群 将介绍 upgrade.sh 和 violet 如何将这些软件包推送到平台中——该推送只会把制品上传到 registry,可在维护窗口开始前的任何时间完成。
如果你正在 从 ACP 4.0 升级到 ACP 4.3,并且任何目标集群上安装了 Build of TopoLVM,请在继续升级之前先将 TopoLVM package 上传到这些集群。若从 ACP 4.1 或 ACP 4.2 升级,则不需要执行此步骤。你可以在 --clusters 中指定多个目标集群,并用逗号分隔。
从 v4.2 开始,我们引入了一个名为 Alauda Container Platform Log Essentials 的新插件。如果你之前安装了日志存储插件,也需要在开始升级之前上传该插件。