Datensicherung für VMs in OpenShift-Virtualisierung mit Trident Protect
Dieser Abschnitt des Referenzdokuments enthält Details zum Erstellen von Snapshots und Backups von VMs mithilfe von Trident Protect.
Virtuelle Maschinen in der OpenShift-Virtualisierungsumgebung sind Container-Anwendungen, die in den Workerknoten der OpenShift-Container-Plattform ausgeführt werden. Es ist wichtig, die VM-Metadaten sowie die persistenten Festplatten der VMs zu schützen, damit Sie sie bei Verlust oder Beschädigung wiederherstellen können.
Die persistenten Festplatten der OpenShift-Virtualisierungs-VMs können mithilfe von ONTAP-Speicher gesichert werden, der in den OpenShift-Cluster integriert "Trident-CSI"ist. In diesem Abschnitt werden "Trident Protect"Snapshots und Backups von VMs einschließlich der Daten-Volumes im ONTAP-Objektspeicher erstellt.
Bei Bedarf führen wir dann Restores von einem Snapshot oder einem Backup durch.
Trident Protect ermöglicht Snapshots, Backups, Restores und Disaster Recovery von Applikationen und VMs auf einem OpenShift-Cluster. Für OpenShift-Virtualisierungs-VMs umfassen Daten, die mit Trident Protect gesichert werden können, Kubernetes-Ressourcenobjekte, die den VMs zugeordnet sind, persistente Volumes und interne Images.
Im Folgenden sind die Versionen der verschiedenen Komponenten, die für die Beispiele in diesem Abschnitt verwendet werden
Erstellen Sie AppVault
Bevor Snapshots und Backups für eine Applikation oder eine VM erstellt werden, muss ein Objektspeicher in Trident Protect konfiguriert werden, um die Snapshots und Backups zu speichern. Dies geschieht mit dem Bucket CR. Nur Administratoren können einen Bucket CR erstellen und konfigurieren. Der Bucket CR wird in Trident Protect als AppVault bezeichnet. AppVault-Objekte sind die deklarative Kubernetes-Workflow-Darstellung eines Storage-Buckets. Ein AppVault CR enthält die Konfigurationen, die für einen Bucket erforderlich sind, der für Schutzvorgänge verwendet werden kann, z. B. Backups, Snapshots, Wiederherstellungsvorgänge und SnapMirror-Replikation.
In diesem Beispiel zeigen wir die Verwendung von ONTAP S3 als Objektspeicher. Hier ist der Workflow zum Erstellen von AppVault CR für ONTAP S3: 1. S3-Objektspeicher-Server in der SVM im ONTAP-Cluster erstellen. 2. Erstellen Sie einen Bucket im Object Store Server. 3. Erstellen eines S3-Benutzers in der SVM Bewahren Sie den Zugriffsschlüssel und den geheimen Schlüssel an einem sicheren Ort auf. 4. Erstellen Sie in OpenShift einen Schlüssel, um die ONTAP S3-Anmeldedaten zu speichern. 5. Erstellen Sie ein AppVault-Objekt für ONTAP S3
Trident Protect AppVault für ONTAP S3 konfigurieren
Erstellen Sie eine VM in OpenShift Virtualization
Die folgenden Screenshots zeigen die Erstellung der VM (Demo-Fedora in Namespace Demo) aus der Konsole mit der Vorlage. Die Stammfestplatte wählt automatisch die Standardspeicherklasse aus. Überprüfen Sie daher, ob die Standardspeicherklasse richtig eingestellt ist. In diesem Setup ist die Standard-Storage-Klasse sc-zonea-san. Stellen Sie sicher, dass Sie beim Erstellen der zusätzlichen Festplatte die Speicherklasse sc-zonea-san auswählen und das Kontrollkästchen „optimierte Speichereinstellungen anwenden“ aktivieren. Dadurch werden die Zugriffsmodi auf RWX und Volume Mode auf Block eingestellt.
|
Trident unterstützt den RWX-Zugriffsmodus im Block-Volume-Modus für SAN (iSCSI, NVMe/TCP und FC). (Dies ist der Standardzugriffsmodus für NAS). DER RWX-Zugriffsmodus ist erforderlich, wenn Sie die Live-Migration der VMs zu einem späteren Zeitpunkt durchführen müssen. |
App Erstellen
Trident Protect App für die VM erstellen
Im Beispiel hat der Demo-Namespace eine VM und alle Ressourcen des Namespace sind beim Erstellen der App enthalten.
Backups Erstellen
Erstellen Sie ein On-Demand Backup
Erstellen Sie ein Backup für die zuvor erstellte App (Demo-vm), die alle Ressourcen im Demo-Namespace umfasst. Geben Sie den AppVault-Namen an, unter dem die Backups gespeichert werden sollen.
Backups nach Zeitplan erstellen
Erstellen Sie einen Zeitplan für die Backups, um die Granularität und die Anzahl der beizubehaltenden Backups anzugeben.
Wiederherstellung aus Backups
Wiederherstellung der VM auf den gleichen Namespace
Im Beispiel enthält die Backup-Demo-vm-Backup-on-Demand das Backup mit der Demo-App für die Fedora VM.
Löschen Sie zunächst die VM und stellen Sie sicher, dass die PVCs, der Pod und die VM-Objekte aus der Namespace „Demo“ gelöscht werden.
Erstellen Sie nun ein Backup-in-Place-Wiederherstellungsobjekt.
Überprüfen Sie, ob VM, Pods und PVCs wiederhergestellt sind
Wiederherstellung der VM auf einen anderen Namespace
Erstellen Sie zunächst einen neuen Namespace, in dem Sie die App wiederherstellen möchten, in diesem Beispiel demo2. Erstellen Sie anschließend ein Backup Restore-Objekt
Vergewissern Sie sich, dass VM, Pods und pvcs in der neuen Namespace-Demo2 erstellt wurden.
Erstellen Sie Snapshots
Erstellen Sie einen On-Demand-Snapshot Erstellen Sie einen Snapshot für die App und geben Sie den Appvault an, wo er gespeichert werden soll.
Erstellen Sie einen Zeitplan für Snapshots Erstellen Sie einen Zeitplan für die Snapshots. Geben Sie die Granularität und die Anzahl der beibehaltenen Snapshots an.
Wiederherstellung aus Snapshot
VM aus dem Snapshot in den gleichen Namespace wiederherstellen Löschen Sie die VM Demo-Fedora aus dem Namespace demo2.
Erstellen Sie ein Snapshot-in-Place-Restore-Objekt aus dem Snapshot der VM.
Vergewissern Sie sich, dass die VM und ihre PVCs im Demo-Namespace erstellt sind.
Wiederherstellen der VM vom Snapshot auf einen anderen Namespace
Löschen Sie die VM im zuvor aus dem Backup wiederhergestellten Namespace demo2.
Erstellen Sie das Objekt zur Snapshot-Wiederherstellung aus dem Snapshot und stellen Sie die Namespace-Zuordnung bereit.
Vergewissern Sie sich, dass die VM und ihre VES in der neuen Namespace-Demo2 wiederhergestellt sind.
Auswahl spezifischer VMs in einem Namespace zur Erstellung von Snapshots/Backups und Wiederherstellung
Im vorherigen Beispiel hatten wir eine einzelne VM innerhalb eines Namespace. Durch Einbeziehung des gesamten Namespace im Backup wurden alle mit der VM verbundenen Ressourcen erfasst. Im folgenden Beispiel fügen wir dem gleichen Namespace eine weitere VM hinzu und erstellen mithilfe einer Label-Selektor eine Anwendung nur für diese neue VM.
Erstellen Sie eine neue VM (Demo-centos vm) im Demo-Namespace
Label die Demo-centos vm und die damit verbundenen Ressourcen
Vergewissern Sie sich, dass die Demo-centos vm und ves die Labels erhalten haben
Erstellen Sie eine App nur für eine bestimmte VM (Demo-centos) mit dem Label Selector
Die Methode zum Erstellen von Backups und Snapshots nach Bedarf und nach einem Zeitplan ist die gleiche wie zuvor gezeigt. Da die Trident-Protect-App, die zur Erstellung der Snapshots oder Backups verwendet wird, nur die bestimmte VM aus dem Namespace enthält, stellt die Wiederherstellung von ihnen nur eine bestimmte VM wieder her. Ein Beispiel für einen Backup-/Wiederherstellungsvorgang ist unten als Beispiel dargestellt.
Erstellen Sie ein Backup einer bestimmten VM in einem Namespace mit der entsprechenden App
In den vorherigen Schritten wurde eine App mithilfe von Label-Selektoren erstellt, um nur die centos vm im Demo-Namespace aufzunehmen. Erstellen Sie für diese App ein Backup (On-Demand-Backup, in diesem Beispiel).
Eine bestimmte VM auf den gleichen Namespace zurückstellen das Backup einer bestimmten VM (centos) wurde mit der entsprechenden App erstellt. Wenn daraus eine Backup-in-Place-Wiederherstellung oder eine Backup-Wiederherstellung erstellt wird, wird nur diese spezifische VM wiederhergestellt. Löschen Sie die CentOS VM.
Erstellen Sie eine in-Place-Backup-Wiederherstellung aus Demo-centos-Backup-on-Demand, und überprüfen Sie, ob die centos VM neu erstellt wurde.
Eine spezifische VM auf einen anderen Namespace wiederherstellen Erstellen Sie eine Backup-Wiederherstellung in einem anderen Namespace (demo3) von Demo-centos-Backup-on-Demand und überprüfen Sie, ob die centos VM neu erstellt wurde.