第 8 章 在 Hub 集群上创建灾难恢复策略

OpenShift DR 使用 RHACM hub 集群上的 Disaster Recovery Policy(DRPolicy)资源(集群范围)来部署、故障转移和重新定位受管集群中的工作负载。

先决条件

  • 确保存在两个集群,它们对等进行存储级别复制,并且启用了 CSI 卷复制。
  • 确保有一个调度间隔,决定按照什么频率执行数据复制,它也充当使用 DRPolicy 的工作负载的粗粒度恢复点目标(RPO)。
  • 确保为策略中的每个集群分配 S3 配置文件名称,该名称使用 OpenShift DR 集群和 hub 操作器的 ConfigMap 配置。

步骤

  1. 在 Hub 集群中,导航到 openshift-dr-system 项目中的 Installed Operators,然后点击 OpenShift DR Hub Operator。您应该会看到两个可用的 API,DRPolicy 和 DRPlacementControl。
  2. 为 DRPolicy 点 Create instance 并点击 YAML 视图
  3. 在将 <cluster1><cluster2> 替换为 ACM 中的受管集群的正确名称后,复制并保存到名为 drpolicy.yaml 的文件。使用任意值(只要它们是唯一的,例如 east 和 west)替换 <string_value_1><string_value_2>schedulingInterval 应该是之前在 MirrorPeer 中配置的值之一(例如:5m)。

    apiVersion: ramendr.openshift.io/v1alpha1
    kind: DRPolicy
    metadata:
      name: odr-policy-5m
    spec:
      drClusterSet:
      - name: <cluster1>
        region: <string_value_1>
        s3ProfileName: s3profile-<cluster1>-ocs-storagecluster
      - name: <cluster2>
        region: <string_value_2>
        s3ProfileName: s3profile-<cluster2>-ocs-storagecluster
      schedulingInterval: 5m
    注意

    不需要指定一个命名空间来创建此资源,因为 DRPolicy 是一个集群范围的资源。

  4. 将唯一 drpolicy.yaml 文件的内容复制到 YAML 视图中。您必须完全替换原始的内容。
  5. 在 YAML 视图屏幕上点 Create

    重要

    DRPolicy schedulingInterval 必须匹配在 MirroPeer 资源中配置的一个值(例如 5m)。要在 MirrorPeer 中配置的卷复制使用其他 DR Intervals,则需要使用新值(如 15m)创建额外的 DRPolicy 资源。确保将 DRPolicy 名称更改为一个唯一值,这有助于标识复制间隔(如 odr-policy-15m)。

  6. 通过在 Hub 集群 上运行命令来验证已成功为每个创建的 DRPolicy 资源创建了 DRPolicy :这个示例是 odr-policy-5m

    $ oc get drpolicy odr-policy-5m -n openshift-dr-system -o jsonpath='{.status.conditions[].reason}{"\n"}'

    输出示例:

    Succeeded