第 2 章 规划在 OpenShift Container Platform 上部署 AMQ Broker
本节论述了如何规划基于 Operator 的部署。
Operator 是使您能够打包、部署和管理 OpenShift 应用程序的程序。Operator 通常自动化常见或复杂任务。通常,Operator 旨在提供:
- 一致、可重复安装
- 系统组件的健康检查
- 无线 (OTA) 更新
- 受管升级
Operator 允许您在代理实例运行时进行更改,因为它们始终侦听您用来配置部署的自定义资源 (CR) 实例。当对 CR 进行更改时,Operator 会将更改与现有代理部署进行协调,并更新部署以反映更改。另外,Operator 提供了一个消息迁移功能,可确保消息数据的完整性。当因为部署有意缩减而在集群部署中代理关闭时,此功能会将信息迁移到仍然在同一代理集群中运行的代理 Pod。
2.1. 高可用性概述(HA)
术语 高可用性 指的是可以保持正常运行的系统,即使该系统的一部分失败或关闭也是如此。对于 OpenShift Container Platform 上的 AMQ Broker,这意味着确保在代理 pod、运行 pod 的节点或集群失败时,消息传递数据的完整性和可用性。
AMQ Broker 使用 OpenShift Container Platform 中提供的 HA 功能缓解 pod 和节点故障:
- 如果在 AMQ Broker 上启用了持久性存储,每个代理 pod 会将其数据写入使用持久性卷声明(PVC)声明的持久性卷(PV)。即使 pod 被删除后,PV 仍可用。如果代理 pod 失败,OpenShift 会重启具有相同名称的 pod,并使用包含消息传递数据的现有 PV。
您可以在集群中运行多个代理 pod,并在单独的节点上分发 pod,以从节点故障中恢复。每个代理 pod 将其消息数据写入自己的 PV,然后在不同节点上重启该代理 pod 时供该代理 pod 使用。
如果修复(MTTR)从 Openshift 集群上的节点故障中恢复的时间不符合 AMQ Broker 的服务可用性要求,您可以创建 leader-follower 部署来提供更快地恢复。您还可以使用 leader-follower 部署来防止集群或更广泛的数据中心中断。如需更多信息,请参阅 第 4.23 节 “为高可用性配置 leader-follower 代理部署”。
其他资源
有关如何使用持久性存储的详情,请参考 第 2.9 节 “Operator 部署备注”。
有关如何在独立节点上分发代理 pod 的详情,请参考 第 4.17.2 节 “使用容限控制 pod 放置”。