第 9 章 Serverless 升级
在不跳过发行版本的情况下,OpenShift Serverless 应该会被升级。本节演示了如何解决升级的问题。
9.1. Serverless Operator 维护发行版本升级 复制链接链接已复制到粘贴板!
9.1.1. 最新和维护版本 复制链接链接已复制到粘贴板!
从 OpenShift Serverless 1.29 开始,不同的产品版本如下:
-
最新版本可通过
stable频道获得。 维护版本可以通过其基于版本的频道获得,如
stable-1.29。注意维护版本是最新版本前的发行版本。例如,如果
stable频道包含 1.30,则维护版本将在stable-1.29频道中提供。
通过使用基于版本的频道,您可以保留在特定的 x.y 流中。另外,它还可防止升级到产品的最新版本,该版本可能包含破坏更改。
要切换到维护版本,请将订阅对象 YAML 文件中的 channel 参数从 stable 更新到对应的基于版本的频道,如 stable-1.29。
9.1.2. 维护版本的补丁和修补程序 复制链接链接已复制到粘贴板!
与稳定的版本一样,维护版本会受到补丁和热修补代码,有助于保持部署最新及关键错误和安全修复程序。
- 补丁是作为 z-releases 分发的更新,例如,OpenShift Serverless 1.29.1 是提供自版本 1.29.0 以来所做的更新。
热修补代码是需要零停机时间且直接在生产中使用的修复。它们与常规的更新不同,它们会升级客户部署的版本,而不是最新发布的版本。
所有客户可能不会立即提供热修补代码。但是,修补程序引入的变化通常作为以后的版本提供给所有客户。
当有与您的部署相关的热修复程序时,您将获得 hotfix CatalogSource 来更新您的订阅并获取热修补代码。
在新的 Operator 发行版本可用后,还可以升级使用热修补代码部署的 Operator。要使用最新的 GA 版本,请将订阅修改为使用公共 CatalogSource 而不是热修补代码。
下图说明了补丁和热修补方式:
9.1.3. 维护版本的升级路径 复制链接链接已复制到粘贴板!
如果您使用基于版本的频道,则始终可以升级到频道中的最新版本,或头。例如,您可以在 stable-1.29 频道中从 1.29.0 升级到 1.29.2。
另外,您还可以从频道头升级到下一个 x.y 版本。例如,如果 1.29.2 是 stable-1.29 频道中的头,您可以从 1.29.2 升级到 1.30。此类跨通道更新不会自动完成,管理员需要通过更新订阅来手动切换频道。
9.1.4. 升级示例 复制链接链接已复制到粘贴板!
9.1.4.1. 场景 1 复制链接链接已复制到粘贴板!
在这种情况下,以下情况是 true:
-
频道是
stable-1.28 -
您切换到
stable频道 - 当前安装的版本为 1.28.0
- 1.29.0 在 1.28.1 之前发布
-
1.30.0 是
stable频道的头
在这种情况下,在 上的 1.28.0 到 1.29.0 的升级路径是 1.28.0 到 1.28.1 到 1.29.0。
stable -1.28
9.1.4.2. 场景 2 复制链接链接已复制到粘贴板!
在这种情况下,以下情况是 true:
-
频道是
stable-1.29 - 当前安装的版本为 1.29.0
-
1.29.1 在
1.30.0之前被发布到和stable-1.29stable频道
在这种情况下,在 到 1.30.0 的升级路径是 1.29.0 到 1.29.1 到 1.30.0。
stable -1.29
9.1.4.3. 场景 3 复制链接链接已复制到粘贴板!
在这种情况下,以下情况是 true:
-
频道是
stable-1.29 -
您切换到
stable-1.30频道 - 当前安装的版本为 1.29.1
-
1.29.1 是
stable-1.29频道的头
在这种情况下,在 上从 1.29.1 到 1.30.0 的升级路径为 1.29.1 到 1.30.0。
stable -1.30