3.4.3. 将自定义资源更改应用到运行代理部署

以下是将自定义资源(CR)更改应用到运行代理部署时需要注意的一些重要事项:

  • 您无法动态更新 CR 中的 persistenceEnabled 属性。要更改此属性,请将集群缩减为零代理。删除现有的 CR。然后,重新创建并使用您的更改重新部署 CR,同时指定部署大小。
  • CR 中的 deploymentPlan.size 属性的值覆盖您通过 oc scale 命令对代理部署大小所做的任何更改。例如,假设您使用 oc scale 将部署的大小从三个代理更改为两个,但 CR 中的 deploymentPlan.size 的值仍然是 3。在这种情况下,OpenShift 最初将部署缩减为两个代理。但是,当 scaledown 操作完成后,Operator 会根据 CR 中指定的将部署恢复到三个代理。
  • 第 3.2.2 节 “使用 CLI 部署 Operator” 所述,如果您使用持久性存储创建代理部署(也就是说,通过在 CR 中设置 persistenceEnabled=true ),您可能需要为 AMQ Broker Operator 置备持久性卷(PV)来声明代理 Pod。如果缩小代理部署的大小,Operator 会释放之前为已关闭的代理 Pod 声明的所有 PV。但是,如果您通过删除 CR 来删除 代理部署,AMQ Broker Operator 不会在 删除时为仍在部署中的代理 Pod 发布持久性卷声明(PVC)。另外,这些未发布的 PV 可用于任何新部署。在这种情况下,您需要手动释放卷。如需更多信息,请参阅 OpenShift 文档中的 发行持久性卷
  • 在 AMQ Broker 7.9 中,如果要配置以下项目,您必须在首次部署 CR 将适当的配置添加到主 CR 实例中。

  • 在活跃的扩展事件中,您应用的任何进一步更改都将由 Operator 排队,并且仅在扩展完成后执行。例如,假设您将部署的大小从四个代理缩减到一个。然后,在进行缩减时,您还会更改代理管理员用户名和密码的值。在这种情况下,Operator 会把用户名和密码更改排队,直到部署通过一个活跃的代理运行。
  • 除了更改部署的大小或更改接收器、连接器或控制台的 expose 属性值外,所有 CR 都会导致重启现有的代理。如果您在部署中有多个代理,一次只能重启一个代理。