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