OpenShift Data Foundation Regional Disaster Recovery auf Red Hat OpenShift on IBM Cloud-Clustern

Virtual Private Cloud 4.17 and later

Regional Disaster Recovery stellt die Geschäftskontinuität sicher, wenn eine geografische Region nicht verfügbar ist. Sie können Red Hat Advanced Cluster Management (ACM) verwenden, um die regionalen Disaster-Recovery-Lösungen für OpenShift Data Foundation (ODF)-Cluster einzurichten.

Jeder Schritt ist mit einer Kennzeichnung versehen, die angibt, auf welchem Cluster er ausgeführt werden soll. Verwenden Sie die folgende Legende als Referenz.

Legende zu den Cluster-Tags
Tag Cluster
Hub cluster Schritte, die auf dem Hub-Cluster (dem Cluster, auf dem ACM installiert ist) auszuführen sind.
Managed cluster Schritte, die auf jedem verwalteten Cluster (dem primären und dem sekundären ODF-Cluster) durchzuführen sind.

Hier sind die wichtigsten Schritte dieser Lösung:

  1. Erstellen Sie den Hub-Cluster.
  2. Erstellen Sie ein vertrauenswürdiges Profil für den Hub-Cluster.
  3. Erstellen Sie die verwalteten Cluster.
  4. Installieren Sie das ACM-Add-on auf dem Hub-Cluster.
  5. Importieren Sie die verwalteten Cluster in ACM.
  6. Installieren Sie Submariner auf den verwalteten Clustern, um eine Verbindung zwischen ihnen herzustellen.
  7. Installieren Sie ODF auf den verwalteten Clustern.
  8. Konfigurieren Sie die regionale Disaster-Recovery-Richtlinie.

Bei dieser Einrichtung verwaltet der Hub-Cluster, auf dem Sie ACM installiert haben, die ODF-Cluster. Sollte Ihr primärer ODF-Cluster ausfallen, überträgt der Hub-Cluster die Anwendungen und Daten vom primären ODF-Cluster auf den sekundären ODF-Cluster.

ODF Regional Disaster Recovery unterstützt Anwendungen auf Abonnementbasis, solche, die über ApplicationSet-based, erkannt wurden, sowie Anwendungen auf Basis von VM. Ausführliche Informationen finden Sie unter Unterstützte Anwendungen und Workloads am Ende dieser Seite.

Vorbereitende Schritte

Bevor Sie die Cluster erstellen, sollten Sie die erforderlichen VPC- und Cloud Object Storage-Angaben zusammenstellen, die Sie in die Befehle zur Clustererstellung eingeben müssen.

  1. Rufen Sie Ihre VPC-IDs ab. Notieren Sie sich die ID der VPC, die Sie für jeden Cluster verwenden möchten.

    ibmcloud is vpcs
    
  2. Rufen Sie die Subnetz-Details für eine bestimmte VPC ab. Notieren Sie sich die Subnetz-IDs, die Sie für jeden Cluster verwenden möchten.

    ibmcloud is subnets --vpc VPC_ID
    
  3. Listen Sie Ihre Cloud Object Storage-Instanzen auf.

    ibmcloud resource service-instances --service-name cloud-object-storage
    
  4. Rufen Sie die CRN der Instanz ab, die Sie verwenden möchten. Beachten Sie den Wert im Feld ID.

    ibmcloud resource service-instance SERVICE_INSTANCE
    

Schritt 1. Erstellen Sie den Hub-Cluster

Hub cluster

Dies ist der Cluster, auf dem Sie ACM installieren, um den primären und den sekundären ODF-Cluster zu verwalten. Stellen Sie sicher, dass Ihr Hub-Cluster über mindestens 16 vCPU x 64 GB Rechenkapazität verfügt.

Stellen Sie sicher, dass Sie für jeden Cluster den ausgehenden Datenverkehr zulassen, indem Sie den Parameter --disable-outbound-traffic-protection in der Befehlszeilenschnittstelle angeben oder die Option zum Deaktivieren des Schutzes des ausgehenden Datenverkehrs in der Benutzeroberfläche auswählen.

  1. Erstellen Sie einen VPC-Cluster in us-east, um ACM darauf zu installieren. Dies ist der Hub-Cluster, den Sie für die Verwaltung Ihrer ODF-Cluster verwenden können. Stellen Sie sicher, dass Ihr Hub-Cluster über mindestens 3 Worker-Knoten verfügt, auf denen RHCOS läuft, eine verfügbare Rechenkapazität von mindestens 16 vCPU und 64 GB aufweist, der ausgehende Datenverkehr deaktiviert ist und alle Voraussetzungen für ACM erfüllt sind. Der folgende Beispielbefehl erstellt einen Cluster für ACM in us-east.

    ibmcloud ks cluster create vpc-gen2 --flavor bx2.16x64 --name acm-hub-cluster-dr-odf --subnet-id SUBNET_ID --vpc-id VPC_ID --zone us-east-2 --version 4.21.31_openshift --workers 3 --cos-instance COS_CRN --disable-outbound-traffic-protection --cni OVNKubernetes
    
  2. Notieren Sie sich die Cluster-ID aus der Ausgabe. Sie benötigen diese Informationen in einem späteren Schritt.

Schritt 2. Erstellen Sie ein vertrauenswürdiges Profil für den Hub-Cluster

Hub cluster

  1. Schaffen Sie ein vertrauenswürdiges Profil.

    ibmcloud iam trusted-profile-create acm-operator-profile
    
  2. Erstellen Sie die Vertrauensregel für Rechenressourcen, die auf den kube-system Namespace der Rechenressourcen unter Red Hat OpenShift beschränkt ist.

    ibmcloud iam trusted-profile-rule-create acm-operator-profile \
      --name kube-system-rule \
      --type Profile-CR \
      --conditions claim:namespace,operator:EQUALS,value:kube-system \
      --cr-type ROKS_SA
    
  3. Weisen Sie dem Profil die IAM-Zugriffsrichtlinie zu. Ersetzen Sie CLUSTER_ID durch Ihre Hub-Cluster-ID.

    ibmcloud iam trusted-profile-policy-create acm-operator-profile \
      --roles Reader,Viewer,Operator,Editor \
      --service-name containers-kubernetes \
      --service-instance CLUSTER_ID
    
  4. Weisen Sie dem Hub-Cluster das vertrauenswürdige Profil zu. Nachdem Sie einem Cluster ein vertrauenswürdiges Profil zugewiesen haben, kann dieses nicht mehr entfernt werden.

    ibmcloud oc experimental trusted-profile set --cluster CLUSTER_NAME_OR_ID --trusted-profile TRUSTED_PROFILE_ID
    
  5. Stellen Sie sicher, dass der geheime Schlüssel für das vertrauenswürdige Profil im Cluster erstellt wurde. Die Ausführung dieses Befehls kann bis zu 10 Minuten dauern. Warten Sie, bis das Geheimnis angezeigt wird, bevor Sie mit der Installation des ACM-Add-ons fortfahren. Wenn Sie fortfahren, bevor das Geheimnis erstellt wurde, schlägt die Installation des ACM-Add-ons fehl.

    oc get secrets -n kube-system | grep ibm-cloud-credentials
    
  6. Wenn Sie ODF-Version 4.21 oder höher verwenden, installieren Sie den Operator OpenShift GitOps auf dem Hub-Cluster.

    1. Navigieren Sie in der Core-Plattform ansicht der Webkonsole OpenShift des Hub-Clusters zu Ecosystem > Software Catalog und suchen Sie nach Red Hat OpenShift GitOps.

    2. Klicken Sie auf die Kachel Red Hat OpenShift ( GitOps ).

    3. Wählen Sie auf der Seite Install Operator einen Update-Kanal und eine Version von GitOps aus, die installiert werden soll.

    4. Wählen Sie einen installierten Namespace aus. Der Standard-Installationsnamensraum lautet openshift-gitops-operator.

      Für die GitOps-Version 1.10 und höher wurde der Standard-Namespace von auf openshift-operators geändert openshift-gitops-operator.

    5. Aktivieren Sie das Kontrollkästchen Von Enable Operator empfohlene Clusterüberwachung für diesen Namespace aktivieren, um die Clusterüberwachung zu aktivieren.

    6. Klicken Sie auf Install. Red Hat OpenShift GitOps wird in allen Namespaces des Clusters installiert.

    7. Stellen Sie sicher, dass der Red Hat OpenShiftGitOps-Operator unter Operatoren > Installierte Operatoren aufgeführt ist und dass der Status Erfolgreich anzeigt.

    Nach der Installation richtet OpenShift GitOps automatisch eine einsatzbereite Argo CD-Instanz im openshift-gitops Namespace ein, und in der Symbolleiste der Konsole wird ein Argo CD-Symbol angezeigt.

Schritt 3. Erstellen Sie die verwalteten Cluster

Managed cluster

  1. Erstellen Sie einen VPC-Cluster mit us-east mindestens 3 Worker-Knoten, auf denen RHCOS läuft, einer verfügbaren Rechenkapazität von mindestens 16 vCPU und 64 GB sowie deaktiviertem Schutz für ausgehenden Datenverkehr. Dies wird der primär verwaltete ODF-Cluster sein. Der folgende Beispielbefehl erstellt einen Cluster unter us-east.

    ibmcloud ks cluster create vpc-gen2 --flavor bx2.16x64 --name managed-cluster-1-dr-odf --subnet-id SUBNET_ID --vpc-id VPC_ID --zone us-east-2 --version 4.21.31_openshift --workers 3 --cos-instance COS_CRN --disable-outbound-traffic-protection --cni OVNKubernetes
    
  2. Erstellen Sie einen VPC-Cluster mit jp-tok mindestens 3 Worker-Knoten, auf denen RHCOS läuft, einer verfügbaren Rechenkapazität von mindestens 16 vCPU und 64 GB sowie deaktiviertem Schutz für ausgehenden Datenverkehr. Dies wird der sekundäre verwaltete ODF-Cluster sein. Um eine hohe Verfügbarkeit zu gewährleisten, muss sichergestellt werden, dass sich das Netzwerk des sekundären Clusters nicht mit dem Netzwerk des primären Clusters überschneidet. Der folgende Beispielbefehl erstellt einen Cluster unter jp-tok.

    ibmcloud ks cluster create vpc-gen2 --flavor bx2.16x64 --name managed-cluster-2-dr-odf --subnet-id SUBNET_ID --vpc-id VPC_ID --zone jp-tok --version 4.21.31_openshift --workers 3 --cos-instance COS_CRN --disable-outbound-traffic-protection --cni OVNKubernetes
    

Schritt 4. Installieren Sie das ACM-Add-on auf dem Hub-Cluster

Hub cluster

Verwenden Sie die CLI, um das ACM-Add-on auf dem Hub-Cluster zu installieren.

  1. Finden Sie die Standardversion des ACM-Add-ons.

    ibmcloud oc cluster addon versions
    
  2. Sehen Sie sich die ACM-Erweiterungsoptionen an. Geben Sie im Befehl die im vorherigen Schritt ermittelte Standardversion an. Notieren Sie sich alle Optionen, die Sie bei der Installation des Add-ons berücksichtigen möchten.

    ibmcloud oc cluster addon options --addon acm --version DEFAULT_VERSION
    
  3. Führen Sie den Befehl aus, um das Add-on zu aktivieren. Achten Sie darauf, die Parameter isLicenseAccepted und billingPlan anzugeben.

    ibmcloud oc cluster addon enable acm --cluster HUB_CLUSTER_ID --param 'billingPlan=PLAN' --param 'isLicenseAccepted=BOOLEAN'
    

    Befehlsparameter. Ein Beispiel für jeden Parametertyp finden Sie im folgenden Befehlsbeispiel.

    --cluster
    Erforderlich. Die ID des Hub-Clusters, auf dem das ACM-Add-on installiert werden soll.
    --param 'billingPlan='
    Erforderlich. Der Abrechnungsplan, den Sie für ACM auswählen möchten. Geben Sie KUBERNETES für den ACM-Plan Kubernetes an.
    --param 'isLicenseAccepted='
    Erforderlich. Setzen Sie diese Option auf, um true die Lizenzvereinbarung für den ausgewählten Abrechnungsplan zu akzeptieren. Das Add-on kann nur erfolgreich installiert werden, wenn die Lizenz akzeptiert wird. Mit der Annahme dieser Lizenz erklären Sie sich mit den geltenden Geschäftsbedingungen einverstanden und bestätigen, dass Sie die im ausgewählten Tarif enthaltenen Leistungen verstanden haben.

    Beispielbefehl zur Installation des ACM-Add-ons mit dem Abrechnungsplan ACM für Kubernetes.

    ibmcloud oc cluster addon enable acm --cluster a5bcde982dfer2nwxq73 --param 'billingPlan=KUBERNETES' --param 'isLicenseAccepted=true'
    
  4. Überprüfen Sie, ob das Add-on installiert wurde. Es kann einige Minuten dauern, bis das Add-on in den folgenden Ausgaben angezeigt wird.

    1. Überprüfen Sie im Hub-Cluster, ob die Ressource acmhub erstellt wurde.
        oc get acmhub
        ```
        Beispielhafte Ausgabe.
    
        ```sh {: screen}
            NAME       AGE
            acm-auto   1h
        ```
    1. Überprüfen Sie auf dem Hub-Cluster den Status `acmhub`.
    
    ```sh {: pre}
        oc describe acmhub
        ```
        Beispielhafte Ausgabe.
    
        ```sh {: screen}
        Status
            Message: ACM installed successfully
        ```
    

Schritt 5. Importieren Sie die verwalteten Cluster in ACM

Hub cluster Managed cluster

Importieren Sie beide verwalteten Cluster in ACM, damit der Hub-Cluster diese verwalten kann.

  1. Öffnen Sie die Webkonsole OpenShift für den Hub-Cluster.

  2. Klicken Sie aus Sicht des Flottenmanagements auf Cluster importieren.

  3. Geben Sie den Namen des ersten verwalteten Clusters ein, wählen Sie gegebenenfalls ein Cluster-Set aus und geben Sie gegebenenfalls zusätzliche Bezeichnungen ein.

  4. Wählen Sie im Importmodus die Option Importbefehle manuell ausführen aus und klicken Sie auf Weiter.

  5. Wählen Sie optional eine Automatisierungsvorlage aus und klicken Sie auf Weiter.

  6. Überprüfen Sie die Details und klicken Sie auf Befehl generieren. Kopieren Sie den angezeigten Befehl.

  7. Melden Sie sich beim ersten verwalteten Cluster an und führen Sie den kopierten Befehl mit den für diesen Cluster konfigurierten kubectl Einstellungen aus.

  8. Wiederholen Sie die Schritte 2 bis 7 für den zweiten verwalteten Cluster.

  9. Stellen Sie in der Fleet-Management-Ansicht sicher, dass beide verwalteten Cluster aufgeführt sind und den Status Bereit aufweisen, bevor Sie fortfahren.

Schritt 6. Konfigurieren Sie das Submariner Add-on

Hub cluster Managed cluster

Konfigurieren Sie das Submariner-Add-on, um eine clusterübergreifende Netzwerkverbindung zwischen Ihren beiden verwalteten Clustern herzustellen. Wählen Sie je nach Ihrer Infrastruktur und Ihren Clustertypen eine der folgenden Optionen aus:

  • Option 1: Transit Gateway (bevorzugt) – Wird sowohl für Red Hat OpenShift on IBM Cloud- als auch für Red Hat OpenShift Virtualization Service (ROVS)-Cluster mit virtuellen Serverinstanzen (VSI) und Bare-Metal-Worker-Knoten unterstützt.
  • Option 2: Network Load Balancer (NLB) – Wird nur für Red Hat OpenShift on IBM Cloud-Cluster mit VSI-Worker-Knoten unterstützt.

Option 1: Verwenden Sie IBM Cloud Transit Gateway, um VPCs zu verbinden (bevorzugt)

Hub cluster

Verwenden Sie IBM Cloud Transit Gateway für eine leistungsstarke direkte Kommunikation zwischen VPCs. Diese Option unterstützt Red Hat OpenShift on IBM Cloud- und Red Hat OpenShift-Virtualisierungsdienst-Cluster sowohl auf VSI- als auch auf Bare-Metal-Infrastruktur.

  1. Ermitteln Sie die von Ihren verwalteten Clustern verwendeten VPCs:

    • Für Red Hat OpenShift on IBM Cloud: Rufen Sie die IBM Cloud-Konsole auf > Navigationsmenü > Containers > Clusters > wählen Sie Ihren Cluster aus > notieren Sie sich die VPC.
    • Für den Virtualisierungsdienst Red Hat OpenShift: Gehen Sie zur IBM Cloud-Konsole > Navigationsmenü > Infrastruktur > OpenShift-Virtualisierung > wählen Sie Ihren Cluster aus > notieren Sie sich die VPC.
  2. Erstellen Sie eine Transit Gateway und fügen Sie Verbindungen zu beiden verwalteten Cluster-VPCs hinzu:

    1. Navigieren Sie in der IBM Cloud-Konsole zu Infrastruktur > Netzwerk > Transit Gateway.
    2. Klicken Sie auf Erstellen.
    3. Geben Sie einen Transit Gateway-Namen ein und wählen Sie Ihre Ressourcengruppe aus.
    4. Wählen Sie den Pfad aus:
      • Lokales Routing: Wählen Sie diese Option, wenn sich beide verwalteten Cluster in derselben Region befinden.
      • Globales Routing: Wählen Sie diese Option, wenn Ihre verwalteten Cluster in verschiedenen Regionen bereitgestellt sind.
    5. Fügen Sie unter Verbindungen Verbindungen für beide VPCs hinzu:
      • Verbindung 1: Wählen Sie VPC für die Netzwerkverbindung aus, wählen Sie die Region für Cluster 1 aus und wählen Sie die VPC für Cluster 1 aus.
      • Verbindung 2: Wählen Sie VPC für die Netzwerkverbindung aus, wählen Sie die Region für Cluster 2 aus und wählen Sie die VPC für Cluster 2 aus.
    6. Klicken Sie auf Erstellen.
  3. Erstellen Sie eine ClusterSet-Ressource auf dem Hub-Cluster und fügen Sie Ihre verwalteten Cluster hinzu:

    1. Navigieren Sie in der ACM-Konsole Ihres Hub-Clusters zu Fleet Management > Infrastructure > Clusters > ClusterSet.
    2. Klicken Sie auf Cluster-Set erstellen und geben Sie einen Namen für das Cluster-Set ein (zum Beispiel <CLUSTERSET>).
    3. Klicken Sie auf Cluster-Zuweisungen verwalten und fügen Sie beide verwalteten Cluster zum Cluster-Set hinzu.
  4. Erstellen Sie auf dem Hub-Cluster die Konfigurationsdatei für den Submariner Broker submariner-broker.yaml.

    apiVersion: submariner.io/v1alpha1
    kind: Broker
    metadata:
      name: submariner-broker
      namespace: <CLUSTERSET>-broker
      labels:
        cluster.open-cluster-management.io/backup: submariner
    spec:
      globalnetEnabled: true
    

    Setzen Sie diese Option, wenn globalnetEnabled: true die verwalteten Cluster überlappende Netzwerke (Pod- und Service-CIDRs) aufweisen. Wenn sich die CIDRs Ihrer verwalteten Cluster nicht überschneiden, legen Sie Folgendes fest globalnetEnabled: false:

  5. Wenden Sie die Broker-Konfiguration auf den Hub-Cluster an.

    oc apply -f submariner-broker.yaml
    
  6. Erstellen Sie auf dem Hub-Cluster die benutzerdefinierte SubmarinerConfig Ressourcendatei SubmarinerConfig-mc1.yaml für den verwalteten Cluster 1.

    apiVersion: submarineraddon.open-cluster-management.io/v1alpha1
    kind: SubmarinerConfig
    metadata:
      name: submariner
      namespace: <MANAGED_CLUSTER1>
    spec:
      cableDriver: libreswan
      forceUDPEncaps: true
      gatewayConfig:
        gateways: 2
      NATTEnable: false
    
  7. Erstellen Sie auf dem Hub-Cluster die benutzerdefinierte SubmarinerConfig Ressourcendatei SubmarinerConfig-mc2.yaml für den verwalteten Cluster 2.

    apiVersion: submarineraddon.open-cluster-management.io/v1alpha1
    kind: SubmarinerConfig
    metadata:
      name: submariner
      namespace: <MANAGED_CLUSTER2>
    spec:
      cableDriver: libreswan
      forceUDPEncaps: true
      gatewayConfig:
        gateways: 2
      NATTEnable: false
    
  8. Wenden Sie beide Ressourcen SubmarinerConfig auf den Hub-Cluster an.

    oc apply -f SubmarinerConfig-mc1.yaml
    oc apply -f SubmarinerConfig-mc2.yaml
    
  9. Erstellen Sie auf dem Hub-Cluster die benutzerdefinierte ManagedClusterAddOn Ressourcendatei ManagedClusterAddOn-mc1.yaml für den verwalteten Cluster 1.

    apiVersion: addon.open-cluster-management.io/v1alpha1
    kind: ManagedClusterAddOn
    metadata:
      name: submariner
      namespace: <MANAGED_CLUSTER1>
    spec:
      installNamespace: submariner-operator
    
  10. Erstellen Sie auf dem Hub-Cluster die benutzerdefinierte ManagedClusterAddOn Ressourcendatei ManagedClusterAddOn-mc2.yaml für den verwalteten Cluster 2.

    apiVersion: addon.open-cluster-management.io/v1alpha1
    kind: ManagedClusterAddOn
    metadata:
      name: submariner
      namespace: <MANAGED_CLUSTER2>
    spec:
      installNamespace: submariner-operator
    
  11. Wenden Sie beide Ressourcen ManagedClusterAddOn auf den Hub-Cluster an.

    oc apply -f ManagedClusterAddOn-mc1.yaml
    oc apply -f ManagedClusterAddOn-mc2.yaml
    
  12. Stellen Sie sicher, dass der Status des Submariner-Add-ons in der ACM-Konsole als intakt angezeigt wird.

    1. Navigieren Sie zu Fleet Management > Infrastructure > Clusters > ClusterSet.
    2. Wählen Sie Ihr Cluster-Set aus und klicken Sie auf Submariner Add-on.
    3. Vergewissern Sie sich, dass unter Verbindungsstatus der Status In Ordnung mit einem grünen Häkchen angezeigt wird.
  13. (Optional) Führen Sie zusätzliche Submariner-Konnektivitäts- und Diagnosetests über die CLI subctl durch:

    1. Installieren Sie das subctl CLI-Tool auf Ihrem lokalen System:
       curl -Ls https://get.submariner.io | bash
       export PATH=$PATH:~/.local/bin
       echo export PATH=\$PATH:~/.local/bin >> ~/.profile
    
    1. Überprüfen Sie die Verbindungen des Gateways und des Route-Agents auf dem verwalteten Cluster 1:
       subctl diagnose connections --kubeconfig ./<MANAGED_CLUSTER1_KUBECONFIG>.yaml
    
    1. Überprüfen Sie die Verbindungen des Gateways und des Routing-Agents auf dem verwalteten Cluster 2:
       subctl diagnose connections --kubeconfig ./<MANAGED_CLUSTER2_KUBECONFIG>.yaml
    
    1. Führen Sie die End-to-End-Konnektivitätstestsuite zwischen den Clustern durch:
       subctl verify --context <MANAGED_CLUSTER1_CONTEXT> --tocontext <MANAGED_CLUSTER2_CONTEXT> --only connectivity --verbose --image-override=submariner-nettest=quay.io/submariner/nettest:0.24.1
    

Option 2: Verwenden Sie Network Load Balancer, um VPCs miteinander zu verbinden

Hub cluster

Befolgen Sie diese Schritte, um das Submariner-Add-on über die ACM-Konsole mithilfe von Network Load Balancers zu installieren und zu konfigurieren. Diese Option wird nur für Red Hat OpenShift on IBM Cloud-Cluster mit VSI-Worker-Knoten unterstützt. Ausführlichere Informationen finden Sie unter Bereitstellung von Submariner über die Konsole in der Dokumentation zu Red Hat.

  1. Wechseln Sie zur ACM-Konsole auf Ihrem Hub-Cluster. Klicken Sie auf Flottenverwaltung > Cluster > Cluster-Sets.
  2. Klicken Sie auf Cluster-Set erstellen. Folgen Sie den Anweisungen, um Ihre beiden verwalteten Cluster zum Cluster-Set hinzuzufügen.
  3. Klicken Sie auf die Option zur Installation des Submariner-Zusatzes für das Cluster-Set.
  4. Wählen Sie die verwalteten Cluster als Zielcluster für die Add-on-Installation aus.
  5. Ändern Sie bei der Überprüfung der Konfiguration beider Cluster die folgenden Einstellungen wie angegeben und belassen Sie die übrigen Einstellungen auf den Standardwerten:
    • globalnetEnabled: true (geprüft)
    • gateways: 2
    • NATTEnable: false (Nicht markiert)
    • cableDriver: vxlan
  6. Klicken Sie auf Install.
  7. Warten Sie, bis der Status des Submariner-Add-ons in Ordnung (grünes Häkchen) anzeigt. Dies kann bis zu 20 Minuten dauern.

Schritt 7. Installieren und Konfigurieren von OpenShift Data Foundation

Managed cluster

Installieren und konfigurieren Sie ODF auf Ihren 2 verwalteten Clustern. Stellen Sie sicher, dass Sie diese Schritte sowohl für den primären als auch für den sekundären verwalteten Cluster durchführen.

Bevor Sie Befehle oc aus diesem Abschnitt ausführen, stellen Sie sicher, dass Ihr Kontext auf den verwalteten Cluster eingestellt ist, den Sie gerade konfigurieren. Führen Sie aus, um ibmcloud oc cluster config --cluster MANAGED_CLUSTER_NAME_OR_ID --admin den Kontext zu wechseln, und überprüfen Sie anschließend mit oc config current-context.

  1. Installieren Sie für jeden verwalteten Cluster das Add-on OpenShift Data Foundation über die IBM Cloud-Konsole.

    1. Navigieren Sie zur Übersichtsseite Ihres Clusters und scrollen Sie nach unten zum Abschnitt Add-ons.
    2. Klicken Sie unter OpenShift-Datenbasis auf Installieren.
    3. Aktivieren Sie das Kontrollkästchen NooBaa-Multi-Cloud-Object-Gateway bereitstellen.
    4. Klicken Sie erneut auf Installieren, um den Vorgang zu bestätigen.
    5. Warten Sie, bis sich der Status des ODF-Add-ons von Enabling auf Normal (grünes Häkchen) ändert, bevor Sie fortfahren.
  2. Stellen Sie sicher, dass ODF erfolgreich installiert wurde. Überprüfen Sie in der Ausgabe, ob der Status Ready lautet.

    Der Status UI Normal zeigt an, dass das Add-on bereitgestellt wurde, der ODF-Operator jedoch möglicherweise noch einige Minuten benötigt, um die Initialisierung und Registrierung seiner Ressourcen abzuschließen.

    oc get storagecluster -n openshift-storage ocs-storagecluster -o jsonpath='{.status.phase}{"\n"}'
    

Die folgenden Schritte müssen auf jedem verwalteten Cluster durchgeführt werden. Wechseln Sie mithilfe von zum ersten verwalteten Cluster ibmcloud oc cluster config --cluster MANAGED_CLUSTER_NAME_OR_ID --admin, führen Sie alle Schritte bis zum Ende dieses Abschnitts durch, wechseln Sie dann zum zweiten verwalteten Cluster und wiederholen Sie den Vorgang.

  1. Führen Sie den Befehl aus, um den multiClusterService Abschnitt der ACM Managed Cluster Name storageCluster Ressource zu aktualisieren. Dies ermöglicht ODF die Verwendung von GlobalNet. Weitere Informationen finden Sie unter Erstellen eines OpenShift Data Foundation-Clusters auf verwalteten Clustern.

    Ersetzen Sie durch MANAGED_CLUSTER_NAME den Namen des Clusters, auf den Ihr Kontext derzeit verweist.

    kubectl patch storagecluster -n openshift-storage ocs-storagecluster --type merge -p'{"spec":{"network":{"multiClusterService":{"clusterID":"MANAGED_CLUSTER_NAME","enabled":true}}}}'
    

    Beispielhafte Ausgabe.

    storagecluster.ocs.openshift.io/ocs-storagecluster patched
    
  2. Überprüfen Sie die Serviceexporte. Es kann ein paar Minuten dauern, bis dies in der Ausgabe sichtbar wird.

    oc get serviceexport -n openshift-storage
    

    Beispielausgabe:

    NAME              AGE
    rook-ceph-mon-d   4d14h
    rook-ceph-mon-e   4d14h
    rook-ceph-mon-f   4d14h
    rook-ceph-osd-0   4d14h
    rook-ceph-osd-1   4d14h
    rook-ceph-osd-2   4d14h
    
  3. Erstellen Sie einen Service-Export für ocs-provider-server.

    oc apply -f - <<EOF
    apiVersion: multicluster.x-k8s.io/v1alpha1
    kind: ServiceExport
    metadata:
      name: ocs-provider-server
      namespace: openshift-storage
    EOF
    

    Beispielhafte Ausgabe.

    serviceexport.multicluster.x-k8s.io/ocs-provider-server created
    
  4. Führen Sie den Befehl aus, um die Ressource storageCluster so zu aktualisieren, dass sie den von Ihnen erstellten Dienstexport ocs-provider-server verwendet.

    oc annotate storagecluster ocs-storagecluster -n openshift-storage ocs.openshift.io/api-server-exported-address=MANAGED_CLUSTER_NAME.ocs-provider-server.openshift-storage.svc.clusterset.local:50051.
    

    Beispielhafte Ausgabe.

    storagecluster.ocs.openshift.io/ocs-storagecluster annotated
    
  5. Überprüfen Sie, ob die Ressource storageCluster bereit ist.

    oc get storagecluster -n openshift-storage
    

    Beispielhafte Ausgabe.

    NAME                    PHASE  
    ocs-storagecluster      Ready   
    

Schritt 8. Konfigurieren Sie die Richtlinie zur regionalen Notfallwiederherstellung

Hub cluster

Installieren Sie den ODF Multicluster Orchestrator auf Ihrem Hub-Cluster und erstellen Sie die Disaster-Recovery-Richtlinie (DR), die die Spiegelung zwischen Ihren beiden verwalteten Clustern ermöglicht.

  1. Installieren Sie den ODF Multicluster Orchestrator auf dem Hub-Cluster.

    1. Installieren Sie den OpenShift- GitOps-Operator auf dem Hub-Cluster, falls Sie dies noch nicht getan haben. Die Installationsschritte finden Sie am Ende von Schritt 2. Erstellen Sie ein vertrauenswürdiges Profil für den Hub-Cluster.
    2. Navigieren Sie in der Core-Plattformansicht der Webkonsole des Hub-Clusters unter OpenShift zu Ecosystem > Software Catalog und suchen Sie nach ODF Multicluster Orchestrator.
    3. Klicken Sie auf die Kachel ODF Multicluster Orchestrator. Achten Sie darauf, dieselbe Versionsnummer auszuwählen wie die ODF-Version, die Sie im vorherigen Abschnitt auf den verwalteten Clustern installiert haben. Behalten Sie alle anderen Standardeinstellungen bei und klicken Sie auf Installieren.
    4. Stellen Sie sicher, dass die Operator-Ressourcen im Projekt openshift-operators installiert und für alle Namespaces verfügbar sind. Klicken Sie erneut auf Installieren, um den Vorgang zu bestätigen.

    Der ODF Multicluster Orchestrator installiert außerdem den OpenShift DR Hub Operator als Abhängigkeit auf dem Hub-Cluster.

  2. Überprüfen Sie die Installation, indem Sie kontrollieren, ob die Operator-Pods laufen. Stellen Sie sicher, dass Ihr CLI-Kontext auf den Hub-Cluster eingestellt ist, bevor Sie diesen Befehl ausführen.

    oc get pods -n openshift-operators
    

    Beispielhafte Ausgabe.

    NAME                                        READY   STATUS       RESTARTS    AGE
    odf-multicluster-console-6845b795b9-blxrn   1/1     Running      0           4d20h
    odfmo-controller-manager-f9d9dfb59-jbrsd    1/1     Running      0           4d20h
    ramen-hub-operator-6fb887f885-fss4w         2/2     Running      0           4d20h
    
  3. Erstellen Sie im Hub-Cluster eine DR-Richtlinie mit einem Synchronisierungsintervall von 5 Minuten und geben Sie jeden verwalteten Cluster in den Parametern an. Dadurch werden NooBaa-Objekt-Buckets auf beiden verwalteten Clustern erstellt und die ODF-Ceph-Blockpool-Spiegelung für die Volumenreplikation aktiviert.

    1. Navigieren Sie in der Webkonsole OpenShift des Hub-Clusters unter dem Menüpunkt Fleet Management zu Data Services > Disaster Recovery > Policies > Create DRPolicy.

    2. Erstellen Sie eine DR-Richtlinie, die die folgenden Parameter enthält.

      • Verbundene Cluster: PRIMARY_MANAGED_CLUSTER_NAME, SECONDARY_MANAGED_CLUSTER_NAME
      • Replikationspolitik: Asynchron
      • Replikationsintervall: 5m
      • Wählen Sie gegebenenfalls unter Erweiterte Einstellungen die Option Unterstützung für die Notfallwiederherstellung für wiederhergestellte und geklonte PersistentVolumeClaims aktivieren (nur für Data Foundation) aus.

      Red Hat Es wird ausdrücklich darauf hingewiesen, dass diese Option nur bei erkannten Anwendungen und Umgebungen verwendet werden sollte, in denen geklonte/wiederhergestellte RBD-Volumes aktiv unterstützt werden.

  4. Führen Sie auf dem Hub-Cluster die folgenden Befehle aus, um zu überprüfen, ob die DR-Richtlinie erstellt und auf die verwalteten Cluster angewendet wurde. Stellen Sie sicher, dass Ihr CLI-Kontext auf den Hub-Cluster eingestellt ist, bevor Sie diese Befehle ausführen.

    ibmcloud oc cluster config --cluster HUB_CLUSTER_NAME --admin
    
    oc get drpolicy DRPOLICY_NAME -o jsonpath='{.status.conditions[].reason}{"\n"}'
    

    Beispielhafte Ausgabe.

    Succeeded
    
    oc get drclusters
    

    Beispielhafte Ausgabe.

    NAME               AGE
    managed-cluster1   4m42s
    managed-cluster2   4m42s
    
  5. Überprüfen Sie auf jedem verwalteten Cluster, ob die DR-Richtlinie angewendet wurde und sich in einem einwandfreien Zustand befindet. Wechseln Sie vor der Ausführung dieser Befehle in den CLI-Kontext des jeweiligen verwalteten Clusters.

    ibmcloud oc cluster config --cluster MANAGED_CLUSTER_NAME --admin
    
    oc get csv,pod -n openshift-dr-system
    

    Beispielhafte Ausgabe.

    NAME                                                                          DISPLAY                         VERSION        REPLACES   PHASE
    clusterserviceversion.operators.coreos.com/odr-cluster-operator.v4.15.0       Openshift DR Cluster Operator   4.15.0                    Succeeded
    clusterserviceversion.operators.coreos.com/volsync-product.v0.8.0             VolSync                         0.8.0                     Succeeded
    NAME                                             READY   STATUS    RESTARTS   AGE
    pod/ramen-dr-cluster-operator-6467cf5d4c-cc8kz   2/2     Running   0          3d12h
    
    oc get cephblockpool ocs-storagecluster-cephblockpool -n openshift-storage -o jsonpath='{.status.mirroringStatus.summary}{"\n"}'
    

    Beispielhafte Ausgabe.

    {"daemon_health":"OK","health":"OK","image_health":"OK","states":{}}
    
  6. Optional: Prüfen Sie die Operatoren, die Sie installieren können, um die Funktionen von ODF Regional Disaster Recovery zu erweitern.

  7. Optional: Testen Sie Ihre Disaster-Recovery-Konfiguration.

Optionale Betreiber für ODF Regional Disaster Recovery

Sehen Sie sich die optionalen Operatoren an, die Sie auf Ihrem ACM-Hub oder den verwalteten Clustern installieren können, um die Funktionen von ODF Regional Disaster Recovery zu erweitern. Beachten Sie, dass IBM nicht für die Verwaltung dieser Betreiber verantwortlich ist.

Sie sind für die Verwaltung dieser Operatoren verantwortlich, einschließlich, aber nicht beschränkt auf die Aktualisierung, Überwachung, Wiederherstellung und Neuinstallation.

Optionale Betreiber für ODF Regional Disaster Recovery
Operator Beschreibung Weitere Informationen
OpenShift API für Datenschutz ( OADP ) Operator
  • Zum Erstellen von Sicherungs- und Wiederherstellungs-APIs für OpenShift-Cluster.
  • Auf verwalteten Clustern installieren.
Einführung in OpenShift API für den Datenschutz

Testen Ihrer Notfallwiederherstellungskonfiguration

Erstellen Sie eine Beispielanwendung, um Ihre Lösung zur Notfallwiederherstellung zu testen. Weitere Informationen finden Sie unter "Beispielanwendung für das Testen der Notfallwiederherstellungsanwendung erstellen ".

  1. Stellen Sie eine abonnementbasierte Anwendung über die ACM-Konsole bereit. Die Registerkarte "Topologie" der Anwendung wird grün angezeigt, wenn alle Anwendungsressourcen erfolgreich bereitgestellt wurden.

  2. Gehen Sie auf der Anwendungsseite zu Aktionen > Datenrichtlinie verwalten.

  3. Weisen Sie die zuvor erstellte DR-Richtlinie dieser Anwendung zu.

  4. Überprüfen Sie, ob die Anwendungspods auf dem primären Cluster ausgeführt werden.

  5. Gehen Sie auf der Anwendungsseite zu "Aktionen" > "Failover-Anwendung ". Wählen Sie Ihren sekundären ODF-Cluster als Zielcluster aus. Klicken Sie auf "Initiieren ".

  6. Überprüfen Sie, ob die Anwendungspods zum sekundären Cluster verschoben wurden.

  7. Gehen Sie auf der Anwendungsseite zu Aktionen > Anwendung verschieben. Wählen Sie Ihren primären ODF-Cluster als Zielcluster aus. Klicken Sie auf "Initiieren ".

  8. Überprüfen Sie, ob die Anwendungspods wieder zum primären Cluster verschoben wurden.

Aktualisierung Ihrer regionalen ODF-Notfallwiederherstellungsumgebung

Informationen dazu, wann und wie Sie die Komponenten Ihrer ODF-RDR-Umgebung aktualisieren können, finden Sie unter „ Aktualisieren Ihrer regionalen ODF-Notfallwiederherstellungsumgebung “.

Fehlerbehebung

Sollten bei Ihrer ODF-Konfiguration für die regionale Notfallwiederherstellung Probleme auftreten, lesen Sie den Abschnitt „Überprüfen der Konfiguration der regionalen Notfallwiederherstellung für die „ OpenShift “-Datenbasis“, um den Zustand der einzelnen Komponenten in Ihrer Umgebung zu überprüfen.

Unterstützte Anwendungen und Workloads

Informieren Sie sich nach Abschluss der Einrichtung über die Arten von Anwendungen und Workloads, für die Sie Regional Disaster Recovery nutzen können.

Abonnement-basiert
Eine Anwendung wird von einer externen Quelle bereitgestellt, z. B. von GitHub,, einem Helm Repo oder Object Storage.
Weitere Informationen finden Sie unter Erstellen einer Beispielanwendung auf Abonnementbasis in der Dokumentation Red Hat.
ApplicationSet-based
Eine Anwendung wird aus einem GitHub-Repo mithilfe des GitOps-Operators bereitgestellt, der die kontinuierliche Bereitstellung verwaltet. Dazu gehören zwei Untertypen:
  • GitOps Pull-Modell ( ArgoCD pull): Ein verwalteter Cluster zieht die Anwendung von GitHub mit Hilfe des GitOps Operators.
  • GitOps Push-Modell ( ArgoCD push): Der Betreiber von GitOps überträgt die Anwendung bei der Bereitstellung und Aktualisierung auf den verwalteten Cluster.
Weitere Informationen finden Sie unter Erstellen von Anwendungen auf der Grundlage von Anwendungssets in der Dokumentation Red Hat.
Weitere Informationen zu den Subtypen von GitOps finden Sie in der Dokumentation Red Hat unter Einsatz von Argo-CDs mit Push- und Pull-Modell.
Entdeckte Anwendungen
Eine Anwendung wurde in einem verwalteten Cluster vorinstalliert, ohne ACM zu verwenden. In diesem Fall können Sie die ACM-Erkennung für die vorinstallierte Anwendung verwenden und trotzdem die DR-Richtlinie konfigurieren.
Weitere Informationen finden Sie unter Disaster-Recovery-Schutz für erkannte Anwendungen in der Dokumentation Red Hat.
Anwendungen, die VM Einsätze beinhalten
Eine VM-basierte Anwendung wird über die ACM-Konsole auf dem verwalteten Cluster bereitgestellt. Diese VM-Anwendungen können, wie bereits beschrieben, auf Abonnementbasis, als ApplicationSet-based, oder als Discovered verfügbar sein. Über die ACM-Konsole stehen für diese Anwendungstypen Optionen zum Starten, Beenden, Anhalten und Löschen von VM-Vorgängen zur Verfügung.
Weitere Informationen finden Sie unter Red Hat Advanced Cluster Management for Virtualization in der Dokumentation Red Hat.