2.2. 升级 Red Hat Quay Operator


在 OpenShift Container Platform 中升级已安装的 Operator 的标准方法包括在 升级安装的 Operator 中。

通常,Red Hat Quay 支持从以前的(N-1)次版本进行升级。例如,不支持直接从 Red Hat Quay 3.0.5 升级到最新版本的 3.5。相反,用户需要如下升级:

  1. 3.0.5 3.1.3
  2. 3.1.3 3.2.2
  3. 3.2.2 3.3.4
  4. 3.3.4 3.4.z
  5. 3.4.z 3.5.z

这需要确保在升级过程中正确且按正确顺序执行任何必要的数据库迁移。

在某些情况下,Red Hat Quay 支持从以前的(N-2、N-3)次版本直接进行单步升级。这简化了旧版本客户的升级过程。Red Hat Quay 3 支持以下升级路径:

  • 3.11.z 3.13.z
  • 3.12.z 3.13.z

有关 Red Hat Quay 的独立部署中的用户,希望升级到 3.13,请参阅 独立 升级指南。

2.2.1. 将 Red Hat Quay 升级到 3.13 版本

要将 Red Hat Quay 从一个次版本升级到下一个次版本,如 3.12.z 3.13,您必须更改 Red Hat Quay Operator 的更新频道。

流程

  1. 在 OpenShift Container Platform Web 控制台中导航至 Operators Installed Operators
  2. 点 Red Hat Quay Operator。
  3. 进入到 Subscription 选项卡。
  4. Subscription details 下,点 Update channel
  5. 选择 stable-3.13 Save
  6. Upgrade status 下检查新安装的进度。在继续操作前,等待升级 状态变为 1
  7. 在 OpenShift Container Platform 集群中,进入到 Workloads Pods。现有 pod 应该被终止,或正在终止。
  8. 等待以下 pod (负责升级数据库和现有数据的模式迁移)到启动: clair-postgres-upgrade、quay-postgres-upgrade、quay-postgres-upgradequay-app-upgrade
  9. clair-postgres-upgradequay-postgres-upgradequay-app-upgrade pod 标记为 Completed 后,您的 Red Hat Quay 部署剩余的 pod 会启动。这大约需要十分钟。
  10. 验证 quay-database 使用 postgresql-13 镜像,并且 clair-postgres pod 现在使用 postgresql-15 镜像。
  11. quay-app pod 标记为 Running 后,就可以访问 Red Hat Quay registry。

2.2.2. 升级到下一个次版本

对于 z 流升级,例如 3.12.1 3.12.2,用户在安装过程中最初选择的主次频道中会发布更新。执行 z 流升级的步骤取决于以 上所述的批准Strategy。如果批准策略被设置为 Automatic,Red Hat Quay Operator 会自动升级到最新的 z 流。这会导致自动的、滚动 Red Hat Quay 更新到较新的 z 流,而无需停机。否则,必须手动批准更新,然后才能开始安装。

<upgrading-312-to-313><title>从 Red Hat Quay 3.12 升级到 3.13</title>

在 Red Hat Quay 3.13 中,实施了 volumeSize 参数,以便与 QuayRegistry 自定义资源定义(CRD)的 clairpostgres 组件一起使用。这会替换之前用于同一 CRD clair 组件的 volumeSize 参数。

如果您的 Red Hat Quay 3.12 QuayRegistry 自定义资源定义(CRD)为 clair 组件实施了卷覆盖,您必须确保 volumeSize 字段包含在 QuayRegistry CRD 的 clairpostgres 组件下。

重要

无法将 volumeSizeclair 组件移到 clairpostgres 组件时,会导致升级到 3.13 版本失败。

例如:

spec:
  components:
  - kind: clair
    managed: true
  - kind: clairpostgres
    managed: true
    overrides:
      volumeSize: <volume_size>
</upgrading-312-to-313>

2.2.3. 更改 Red Hat Quay Operator 的更新频道

已安装的 Operator 的订阅指定一个更新频道,用于跟踪和接收 Operator 的更新。要升级 Red Hat Quay Operator 以开始跟踪并从更新频道接收更新,请更改安装的 Red Hat Quay Operator 的 Subscription 选项卡中的更新频道。对于带有 自动批准策略 的订阅,升级会自动开始,并可在列出 Installed Operators 的页面上进行监控。

2.2.4. 手动批准待处理的 Operator 升级

如果已安装的 Operator 的订阅被设置为 Manual,则当其当前更新频道中发布新更新时,在开始安装前必须手动批准更新。如果 Red Hat Quay Operator 有一个待处理的升级,这个状态将显示在 Installed Operators 列表中。在 Red Hat Quay Operator 的 Subscription 选项卡中,您可以预览安装计划并查看列出可用于升级的资源。如果满意,点 Approve 并返回到列出 Installed Operators 的页面,以监控升级的进度。

下图显示了 UI 中的 Subscription 选项卡,包括 更新频道批准策略Upgrade 状态和 InstallPlan

Subscription tab including upgrade Channel and Approval strategy

Installed Operators 列表提供当前 Quay 安装的高级别概述:

Installed Operators

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.