你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

升级 Azure Red Hat OpenShift 群集

作为 Azure Red Hat OpenShift 群集生命周期的一部分,需要定期升级到最新版本的 OpenShift 平台。 通过升级 Azure Red Hat OpenShift 群集,可以升级到最新的功能特性,并应用最新的安全性版本。

本文介绍如何使用 OpenShift Web 控制台或 managed-upgrade-operator (MUO) 升级 OpenShift 群集中的所有组件。

开始之前

  • 本文要求运行 Azure CLI 2.6.0 或更高版本。 运行 az --version 即可查找当前版本。 如果需要安装或升级 Azure CLI/it,请参阅安装 Azure CLI

  • 本文假设你有权访问现有的 Azure Red Hat OpenShift 群集作为具有 admin 权限的用户。

  • 本文假定你已更新现有 Azure Red Hat OpenShift 4.x 群集的 Azure Red Hat OpenShift 拉取机密。 包含拉取机密中的 cloud.openshift.com 条目会使群集开始向 Red Hat 发送遥测数据。

    有关详细信息,请参阅在 Azure Red Hat OpenShift 4 群集上添加或更新 Red Hat 拉取机密

  • 在开始升级之前,请确保用于群集的服务主体的凭据有效/更新。 如需更多信息,请参阅轮换 Azure Red Hat OpenShift (ARO) 群集的服务主体凭据

检查 Azure Red Hat OpenShift 群集升级

  1. 从 OpenShift Web 控制台左上角(这是你作为 kubeadmin 登录时的默认选项)选择“管理”选项卡。

  2. 选择“群集设置”并打开“详细信息”选项卡。你将看到版本、更新状态和通道。 默认情况下未配置通道。

  3. 选择“通道”链接,并在提示符处输入所需的更新通道,例如 stable-4.10 选择所需通道后,将出现显示可用版本和通道的图形。 如果群集的“更新状态”显示了“可用的更新”,则可以更新群集。

使用 OpenShift Web 控制台升级 Azure Red Hat OpenShift 群集

在上一步中,从 OpenShift Web 控制台将“通道”设置为要更新到的版本的正确通道,如 stable-4.10

选择要更新到的版本,然后选择“更新”。 你会看到更新状态更改为:Update to <product-version> in progress。 可以通过观察操作员和节点的进度栏来查看群集更新的进度。

使用 managed-upgrade-operator 计划单个升级

使用 managed-upgrade-operator (MUO) 升级 Azure Red Hat OpenShift 群集。

managed-upgrade-operator 管理自动化群集升级。 managed-upgrade-operator 启动群集升级,但它不会执行群集升级过程本身的任何活动。 OpenShift Container Platform (OCP) 负责升级群集。 managed-upgrade-operator 的目标是满足托管群集在启动群集升级之前和之后必须保留的操作条件。

  1. 准备配置文件,如以下示例中所示,用于升级到 OpenShift 4.10。
apiVersion: upgrade.managed.openshift.io/v1alpha1
kind: UpgradeConfig
metadata:
  name: managed-upgrade-config
  namespace: openshift-managed-upgrade-operator
spec:
  type: "ARO"
  upgradeAt: "2022-02-08T03:20:00Z"
  PDBForceDrainTimeout: 60
  desired:
    channel: "stable-4.10"
    version: "4.10.10"

其中:

  • channel 是配置文件根据生命周期策略从中拉取的通道。 使用的通道应为 stable-4.10
  • version 是要升级到的版本,例如 4.10.10
  • upgradeAT 是升级的发生时间。
  1. 应用配置文件:
$ oc create -f <file_name>.yaml

后续步骤