3.12. 受管集群间基于订阅的应用程序故障切换
先决条件
当主集群处于
Ready
以外的状态时,请检查集群的实际状态,因为它可能需要一些时间才能更新。-
导航到 RHACM 控制台
Infrastructure Clusters Cluster list 选项卡。 在执行故障转移操作前,请检查两个受管集群的状态。
但是,当您故障转移的集群处于 Ready 状态时,仍可执行故障转移操作。
-
导航到 RHACM 控制台
流程
在 Hub 集群上启用隔离。
打开 CLI 终端并编辑 DRCluster 资源,其中 <drcluster_name> 是您的唯一名称。
Important在隔离了受管集群后,所有 从应用程序到 OpenShift Data Foundation 外部存储集群的通信将失败,一些 Pod 都将处于不健康状态(例如:
CreateContainerError
,CrashLoopBackOff
)现已被隔离的集群。oc edit drcluster <drcluster_name>
$ oc edit drcluster <drcluster_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例:
drcluster.ramendr.openshift.io/ocp4perf1 edited
drcluster.ramendr.openshift.io/ocp4perf1 edited
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 为主受管集群验证 Hub 集群上的隔离状态,使用您的唯一标识符替换 <drcluster_name>。
oc get drcluster.ramendr.openshift.io <drcluster_name> -o jsonpath='{.status.phase}{"\n"}'
$ oc get drcluster.ramendr.openshift.io <drcluster_name> -o jsonpath='{.status.phase}{"\n"}'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例:
Fenced
Fenced
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 验证属于 OpenShift Container Platform 集群节点的 IP 现在是否在 blocklist 中。
ceph osd blocklist ls
$ ceph osd blocklist ls
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
- 在 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