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.13 支持以下升级路径:

  • 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 流升级的过程取决于上述 approvalStrategy。如果批准策略被设置为 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 选项卡,包括 更新频道批准策略升级状态InstallPlan

Subscription tab including upgrade Channel and Approval strategy

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

Installed Operators

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.