In einer einzelnen Region wiederherstellen

Auf dieser Seite wird das Wiederherstellen von Cassandra in einer einzelnen Region beschrieben.

In einer Einzelregions-Bereitstellung wird Apigee Hybrid in einem einzelnen Rechenzentrum oder einer Region bereitgestellt. Wenn Sie in Ihrer Bereitstellung mehrere Apigee-Organisationen haben, werden bei der Wiederherstellung Daten aller Organisationen wiederhergestellt. In einer Einrichtung mit mehreren Organisationen können Sie eine bestimmte Organisation nicht wiederherstellen.

Region aus einem Backup wiederherstellen

  1. Aktualisieren Sie die Cassandra-Wiederherstellungsdetails in der Datei overrides.yaml:

    namespace: YOUR_RESTORE_NAMESPACE # Use the same namespace as in your original cluster.
    cassandra:
      hostNetwork: false
    ...
    restore:
      enabled: true
      serviceAccountPath: "SA_JSON_FILE_PATH"
      dbStorageBucket: "CLOUD_STORAGE_BUCKET_NAME"
      cloudProvider: "GCP"  # required verbatim "GCP" (all caps)
      snapshotTimestamp: "TIMESTAMP"
    ...
    backup:
      enabled: false
    ...
    

    Wobei:

    Attribut Beschreibung
    namespace

    YOUR_RESTORE_NAMESPACE

    Namespace zur Wiederherstellung. Verwenden Sie denselben Namespace wie im ursprünglichen Cluster.

    cassandra:hostNetwork

    hostNetwork ist erforderlich und sollte immer auf false gesetzt werden.

    restore:enabled Die Wiederherstellung ist standardmäßig deaktiviert. Sie müssen dieses Attribut auf true festlegen.
    restore:serviceAccountPath

    SA_JSON_FILE_PATH

    Der Pfad in Ihrem Dateisystem zum Dienstkonto, das Sie für die Sicherung erstellt haben.

    restore:dbStorageBucket

    CLOUD_STORAGE_BUCKET_NAME

    Der Name eines Google Cloud Storage-Buckets, in dem Sicherungsarchive für die Datenwiederherstellung gespeichert werden.

    restore:cloudProvider

    GCP

    Das Attribut cloudProvider: "GCP" ist erforderlich.

    restore:snapshotTimestamp

    TIMESTAMP

    Der Zeitstempel des wiederherzustellenden Backup-Snapshots. Wenn Sie prüfen möchten, welche Zeitstempel verwendet werden können, rufen Sie dbStorageBucket auf und sehen Sie sich die Dateien im Bucket an. Jeder Dateiname enthält einen Zeitstempelwert. Beispiele: backup_20210203213003_apigee-cassandra-default-0.tgz

    Dabei ist 20210203213003 der snapshotTimestamp-Wert, den Sie verwenden würden, wenn Sie die Sicherungen zu diesem Zeitpunkt wiederherstellen wollten.

    backup:enabled Sie sollten dieses Attribut auf false setzen, falls es zuvor auf true gesetzt war.
  2. Wenn Sie zu Beginn keinen sauberen Cluster haben, folgen Sie der Dokumentation Hybridregion für Helm außer Betrieb nehmen, um Ihre vorhandene Hybrid-Installation in einen sauberen Zustand zu versetzen. Sie können den Zertifikatsmanager installiert lassen. Dadurch erhalten Sie den gleichen Zustand, als hätten Sie das Einrichtungshandbuch für die Helm-Laufzeit bis zum Beginn von Schritt 11 befolgt.

  3. Prüfen Sie, ob in den Apigee-Namespaces noch Pods vorhanden sind:

    kubectl get pods -n APIGEE_NAMESPACE
  4. Wenn Sie eine CSI-Sicherung verwenden, prüfen Sie, ob Sie die Volume-Snapshots sehen, die Sie für die Wiederherstellung verwenden möchten. Führen Sie dazu Folgendes aus:

    kubectl get volumesnapshot -n APIGEE_NAMESPACE
              
  5. Installieren Sie alle Hybridkomponenten nacheinander, wie unter Schritt 10: Apigee Hybrid über Helm installieren beschrieben. Beachten Sie, dass der Pod apigee-cassandra-restore erstellt wird, sobald Sie den Befehl zur Installation von datastore ausführen. Er wechselt jedoch erst nach der Installation der Komponente apigee-org in den Status running.

Weitere Informationen zur Cassandra-Sicherung und -Wiederherstellung finden Sie unter Cassandra-Sicherungsübersicht.

Prüfen Sie den Fortschritt des Wiederherstellungsjobs und ob apigeeds und alle anderen Pods aktiv sind:

  1. Prüfen Sie apigeeds:
    kubectl get apigeeds -n APIGEE_NAMESPACE
  2. Prüfen Sie alle anderen Pods:
    kubectl get pods -n APIGEE_NAMESPACE

Nach Abschluss der Wiederherstellung und der Bestätigung, dass die Laufzeitkomponenten fehlerfrei sind, empfehlen wir, eine Sicherung auf dem Cluster zu konfigurieren:

  1. Entfernen Sie die restore-Konfiguration aus der overrides-restore.yaml-Datei.
  2. Fügen Sie der overrides-restore.yaml-Datei die backup-Konfiguration hinzu.
  3. Wenden Sie die backup-Konfiguration mit diesem Befehl an:
    helm upgrade datastore apigee-datastore/ \
      --namespace APIGEE_NAMESPACE \
      --atomic \
      -f overrides-restore.yaml