Skip to main content
NetApp public and hybrid cloud solutions
Die deutsche Sprachversion wurde als Serviceleistung für Sie durch maschinelle Übersetzung erstellt. Bei eventuellen Unstimmigkeiten hat die englische Sprachversion Vorrang.

Wiederherstellen einer App aus einem Backup

Beitragende kevin-hoke

In diesem Abschnitt wird beschrieben, wie Sie Apps aus einer Sicherung wiederherstellen.

Voraussetzungen

Um eine Wiederherstellung aus einer Sicherung durchzuführen, gehen wir davon aus, dass der Namespace, in dem die App vorhanden war, versehentlich gelöscht wurde.

App gelöscht

Wiederherstellen im selben Namespace

Um die Wiederherstellung aus der gerade erstellten Sicherung durchzuführen, müssen wir eine benutzerdefinierte Wiederherstellungsressource (CR) erstellen. Wir müssen ihm einen Namen geben, den Namen des Backups angeben, aus dem wir wiederherstellen möchten, und die RestorePVs auf „true“ setzen. Weitere Parameter können wie in der Abbildung gezeigt eingestellt werden."Dokumentation" . Klicken Sie auf die Schaltfläche „Erstellen“.

Wiederherstellungs-CR erstellen

apiVersion: velero.io/v1
kind: Restore
apiVersion: velero.io/v1
metadata:
  name: restore
  namespace: openshift-adp
spec:
  backupName: backup-postgresql-ontaps3
  restorePVs: true

Wenn die Phase als abgeschlossen angezeigt wird, können Sie sehen, dass die App in den Zustand zurückversetzt wurde, in dem sie sich zum Zeitpunkt der Erstellung des Snapshots befand. Die App wird im selben Namespace wiederhergestellt.

Wiederherstellung abgeschlossen Im selben Namespace wiederhergestellt

Wiederherstellen in einem anderen Namespace

Um die App in einem anderen Namespace wiederherzustellen, können Sie in der YAML-Definition des Restore CR ein NamespaceMapping angeben.

Die folgende YAML-Beispieldatei erstellt eine Wiederherstellungs-CR, um eine App und ihren persistenten Speicher aus dem PostgreSQL-Namespace in den neuen Namespace „postgresql-restored“ wiederherzustellen.

apiVersion: velero.io/v1
kind: Restore
metadata:
  name: restore-to-different-ns
  namespace: openshift-adp
spec:
  backupName: backup-postgresql-ontaps3
  restorePVs: true
  includedNamespaces:
  - postgresql
  namespaceMapping:
    postgresql: postgresql-restored

Wenn die Phase als abgeschlossen angezeigt wird, können Sie sehen, dass die App in den Zustand zurückversetzt wurde, in dem sie sich zum Zeitpunkt der Erstellung des Snapshots befand. Die App wird in einem anderen Namespace wiederhergestellt, wie im YAML angegeben.

Wiederherstellung in einem neuen Namespace abgeschlossen

Wiederherstellen in einer anderen Speicherklasse

Velero bietet eine allgemeine Möglichkeit, die Ressourcen während der Wiederherstellung durch Angabe von JSON-Patches zu ändern. Die JSON-Patches werden auf die Ressourcen angewendet, bevor sie wiederhergestellt werden. Die JSON-Patches werden in einer Konfigurationszuordnung angegeben und auf die Konfigurationszuordnung wird im Wiederherstellungsbefehl verwiesen. Mit dieser Funktion können Sie die Wiederherstellung mithilfe einer anderen Speicherklasse durchführen.

Im folgenden Beispiel verwendet die App während der Bereitstellung ontap-nas als Speicherklasse für ihre persistenten Volumes. Es wird ein Backup der App mit dem Namen backup-postgresql-ontaps3 erstellt.

VM mit ontap-nas

VM-Backup ontap-nas

Simulieren Sie einen Verlust der App, indem Sie die App deinstallieren.

Um die VM mit einer anderen Speicherklasse wiederherzustellen, beispielsweise der Speicherklasse ontap-nas-eco, müssen Sie die folgenden zwei Schritte ausführen:

Schritt 1

Erstellen Sie wie folgt eine Konfigurationszuordnung (Konsole) im OpenShift-ADP-Namespace: Füllen Sie die Details wie im Screenshot gezeigt aus: Namespace auswählen: OpenShift-ADP Name: Change-Ontap-SC (kann ein beliebiger Name sein) Schlüssel: Change-Ontap-SC-Config.yaml: Wert:

version: v1
resourceModifierRules:
- conditions:
     groupResource: persistentvolumeclaims
     resourceNameRegex: "data-postgresql*"
     namespaces:
     - postgresql
  patches:
  - operation: replace
    path: "/spec/storageClassName"
    value: "ontap-nas-eco"

Konfigurationskarten-Benutzeroberfläche

Das resultierende Konfigurationszuordnungsobjekt sollte folgendermaßen aussehen (CLI):

Konfigurationszuordnungs-CLI

Diese Konfigurationszuordnung wendet die Ressourcenmodifikatorregel an, wenn die Wiederherstellung erstellt wird. Es wird ein Patch angewendet, um den Speicherklassennamen für alle persistenten Volume-Ansprüche, die mit rhel beginnen, durch ontap-nas-eco zu ersetzen.

Schritt 2

Um die VM wiederherzustellen, verwenden Sie den folgenden Befehl aus der Velero-CLI:

#velero restore create restore1 --from-backup backup1 --resource-modifier-configmap change-storage-class-config -n openshift-adp

Die App wird im selben Namespace wiederhergestellt, in dem die persistenten Volume-Ansprüche mit der Speicherklasse ontap-nas-eco erstellt wurden.

VM-Wiederherstellung ontap-nas-eco