第 6 章 升级基于 Operator 的代理部署
本节中的步骤演示了如何升级:
- AMQ Broker Operator 版本,同时使用 OpenShift 命令行界面(CLI)和 OperatorHub
- 基于 Operator 的代理部署的代理容器镜像
6.1. 开始前
本节介绍了在为基于 Operator 的代理部署升级 Operator 和代理容器镜像前的一些重要事项。
- 使用 OpenShift 命令行界面(CLI)或 OperatorHub 升级 Operator 需要集群管理员权限。
如果您最初使用 CLI 安装 Operator,也应使用 CLI 来升级 Operator。如果您最初使用 OperatorHub 安装 Operator(即 OpenShift Container Platform Web 控制台中的项目的
下),您还应使用 OperatorHub 来升级 Operator。有关这些升级方法的更多信息,请参阅: 如果
redeliveryDelayMultiplier
和redeliveryCollisionAvoidanceFactor
属性在 7.8.x 或 7.9.x 部署中的主代理 CR 中配置,新的 Operator 在升级到 7.10.x 后无法协调任何 CR。协调失败,因为两个属性的数据类型从 float 改为 7.10.x 中的字符串。您可以通过删除
spec.deploymentPlan.addressSettings.addressSetting
元素的redeliveryDelayMultiplier
和redeliveryCollisionAvoidanceFactor
属性来解决这个问题。然后,在brokerProperties
元素中配置属性。例如:spec: ... brokerProperties: - "addressSettings.#.redeliveryMultiplier=2.1" - "addressSettings.#.redeliveryCollisionAvoidanceFactor=1.2"
注意在
brokerProperties
元素中,使用redeliveryMultiplier
属性名称而不是您删除的redeliveryDelayMultiplier
属性名称。如果要部署 Operator 来监视多个命名空间,例如监视所有命名空间,您必须:
- 请确定您已备份了与集群中代理部署相关的所有 CR。
- 卸载现有的 Operator。
- 部署 7.10 Operator,以观察您需要的命名空间。
- 检查所有部署并在必要时重新创建。