4.9. 受管集群间基于订阅的应用程序故障切换
故障转移是在主集群失败时将应用程序从主集群转换到二级集群的过程。虽然故障转移提供了应用程序以最小中断在二级集群中运行的功能,但做出不正确的故障转移决策可能会导致意外的故障转移决定,如发生从主到次要集群未验证复制失败时的完整数据丢失。如果自上次成功复制以来有大量的时间,最好等待失败的主完成。
LastGroupSyncTime 是一个 关键指标,反映了自与应用程序关联的所有 PVC 最后一次成功复制以来的时间。本质上,它会测量主集群和次要集群之间的同步健康状况。因此,在从一个集群启动故障转移前,请检查此指标,并仅在 LastGroupSyncTime 在过去的合理时间内启动故障转移。
在故障转移集群中故障转移 Ceph-RBD 镜像部署期间,会缩减故障转移,以确保 Ceph-RBD 支持的卷的干净故障转移作为存储置备程序。
先决条件
- 如果您的设置具有主动和被动 RHACM hub 集群,请参阅使用 Red Hat Advanced Cluster Management 进行 Hub 恢复。
当主集群处于
Ready
以外的状态时,请检查集群的实际状态,因为它可能需要一些时间才能更新。-
进入到 RHACM 控制台
Infrastructure Clusters Cluster list 选项卡。 在执行故障转移操作前,请检查两个受管集群的状态。
但是,当您切换到的集群处于 Ready 状态时,故障转移操作仍然可以运行。
-
进入到 RHACM 控制台
与当前时间相比,在 Hub Cluster 上运行以下命令检查
lastGroupSyncTime
是否在可接受的数据丢失窗口中。$ oc get drpc -o yaml -A | grep lastGroupSyncTime
输出示例:
[...] lastGroupSyncTime: "2023-07-10T12:40:10Z"
流程
- 在 Hub 集群中,进入到 Applications。
- 点应用程序行末尾的 Actions 菜单,以查看可用操作的列表。
- 点 Failover application。
- 在显示了 Failover 应用程序 模态后,选择策略和目标集群,相关的应用程序将在出现灾难时故障转移。
点选择订阅组下拉菜单,验证默认选择或修改此设置。
默认情况下,选择为应用程序资源复制的订阅组。
检查 Failover readiness 的状态。
-
如果状态是
Ready
且带有一个绿色勾号,这表示目标集群已就绪,可启动故障转移。继续执行第 7 步。 -
如果状态是
Unknown
或Not ready
,请等待到状态变为Ready
。
-
如果状态是
- 点 Initiate。busybox 应用程序现在故障转移到 Secondary-managed 集群。
- 关闭模态窗口,并使用 Applications 页面中的 Data policies 列跟踪状态。
验证活动状态是否为应用的 FailedOver。
-
进入 Applications
Overview 选项卡。 - 在 Data policy 列中,点您要将策略应用到的应用程序的策略链接。
- 在 Data policy 弹出窗口中,点 View more details 链接。
- 验证您能否看到一个或多个策略名称以及与应用程序中使用的策略关联的持续活动(同步时间和活动状态)。
-
进入 Applications