Datensicherung
Auf dieser Seite werden die Datensicherungsoptionen für gemanagte Red hat OpenShift auf AWS (ROSA) Clustern unter Verwendung des Astra Control Service angezeigt. Astra Control Service (ACS) bietet eine intuitive grafische Benutzeroberfläche, mit der Sie Cluster hinzufügen, darauf laufende Applikationen definieren und applikationsorientierte Datenmanagement-Aktivitäten durchführen können. ACS-Funktionen können auch über eine API aufgerufen werden, die die Automatisierung von Workflows ermöglicht.
Die Astra-Steuerung (ACS oder ACC) wird von NetApp Trident angetrieben. Trident integriert mehrere Arten von Kubernetes Clustern wie Red hat OpenShift, EKS, AKS, SUSE Rancher, Anthos usw. mit verschiedenen NetApp ONTAP Storage-Varianten wie FAS/AFF, ONTAP Select, CVO, Google Google Cloud NetApp Volumes, Azure NetApp Files und Amazon FSX ONTAP.
Dieser Abschnitt enthält Details zu den folgenden Datenschutzoptionen, die ACS verwenden:
-
Ein Video, das Backup und Restore einer ROSA-Anwendung zeigt, die in einer Region ausgeführt wird und in einer anderen Region wiederhergestellt wird.
-
Ein Video, das Snapshot und Wiederherstellung einer ROSA-Anwendung zeigt.
-
Schritt-für-Schritt-Details zur Installation eines ROSA-Clusters, Amazon FSX ONTAP, Verwendung von NetApp Trident zur Integration mit Speicher-Backend, Installation einer postgresql-Anwendung auf ROSA-Cluster, Verwendung von ACS, um einen Snapshot der Anwendung zu erstellen und die Anwendung von ihm wiederherzustellen.
-
Ein Blog, der Schritt-für-Schritt-Details des Erstellens und Wiederherstellen aus einem Snapshot für eine mysql-Anwendung auf einem ROSA-Cluster mit FSX ONTAP unter Verwendung von ACS zeigt.
Backup/Wiederherstellung aus Backup
Das folgende Video zeigt die Sicherung einer ROSA-Anwendung, die in einer Region ausgeführt wird und in einer anderen Region wiederhergestellt wird.
Snapshot/Wiederherstellung aus Snapshot
Das folgende Video zeigt, wie Sie einen Snapshot einer ROSA-Anwendung erstellen und danach aus dem Snapshot wiederherstellen.
Schritt-für-Schritt-Details zum Erstellen von Snapshot und Wiederherstellen von ihm
Vorbereitende Einrichtung
-
IAM-Benutzer mit "Entsprechende Berechtigungen" Um ROSA Cluster zu erstellen und darauf zuzugreifen
-
"OpenShift-CLI"(oc)
-
VPC mit Subnetzen und entsprechenden Gateways und Routen
-
"ROSA Cluster installiert" In die VPC
-
"Amazon FSX ONTAP" Erstellt in derselben VPC
-
Zugriff auf den ROSA-Cluster von "OpenShift Hybrid Cloud Console"
Nächste Schritte
-
Erstellen Sie einen Admin-Benutzer und melden Sie sich beim Cluster an.
-
Erstellen Sie eine kubeconfig-Datei für den Cluster.
-
Installieren Sie Trident auf dem Cluster.
-
Mit der CSI-provisionierung von Trident können Sie eine Back-End-, Storage-Klasse- und Snapshot-Klassenkonfiguration erstellen.
-
Implementieren Sie eine postgresql-Anwendung auf dem Cluster.
-
Erstellen Sie eine Datenbank und fügen Sie einen Datensatz hinzu.
-
Fügen Sie den Cluster zu ACS hinzu.
-
Definieren Sie die Anwendung in ACS.
-
Erstellen Sie einen Snapshot mit ACS.
-
Löschen Sie die Datenbank in der postgresql-Anwendung.
-
Wiederherstellen von einem Snapshot mit ACS.
-
Überprüfen Sie, ob Ihre App aus dem Snapshot wiederhergestellt wurde.
1. Erstellen Sie einen Admin-Benutzer und melden Sie sich beim Cluster an
Greifen Sie auf den ROSA-Cluster zu, indem Sie einen Admin-Benutzer mit dem folgenden Befehl erstellen: (Sie müssen einen Admin-Benutzer nur erstellen, wenn Sie zum Zeitpunkt der Installation keinen Administrator erstellt haben)
rosa create admin --cluster=<cluster-name>
Der Befehl liefert eine Ausgabe, die wie folgt aussieht. Melden Sie sich mit dem beim Cluster an oc login
In der Ausgabe bereitgestellter Befehl.
Sie können sich auch mit einem Token beim Cluster anmelden. Wenn Sie zum Zeitpunkt der Cluster-Erstellung bereits einen Admin-Benutzer erstellt haben, können Sie sich über die Red hat OpenShift Hybrid Cloud-Konsole mit den Anmeldedaten des Admin-Benutzers beim Cluster anmelden. Klicken Sie dann auf die obere rechte Ecke, wo der Name des angemeldeten Benutzers angezeigt wird, um den zu erhalten oc login Befehl (Token Login) für die Befehlszeile.
|
2. Erstellen Sie eine kubeconfig-Datei für den Cluster
Befolgen Sie die Anweisungen "Hier" Um eine Kubeconfig-Datei für den ROSA-Cluster zu erstellen. Diese kubeconfig-Datei wird später verwendet, wenn Sie den Cluster zu ACS hinzufügen.
3. Installieren Sie Trident auf dem Cluster
Installieren Sie Trident (neueste Version) auf dem ROSA-Cluster. Um dies zu tun, können Sie eine der angegebenen Verfahren befolgen"Hier". Um Trident über das Helm von der Cluster-Konsole zu installieren, erstellen Sie zuerst ein Projekt mit dem Namen Trident.
Erstellen Sie dann in der Entwickleransicht ein Helmdiagramm-Repository. Verwenden Sie für das URL-Feld 'https://netapp.github.io/trident-helm-chart'
. Erstellen Sie dann ein Helm Release für den Trident Operator.
Überprüfen Sie, ob alle Stativpods ausgeführt werden, indem Sie zur Administratoransicht auf der Konsole zurückkehren und Pods im Dreizack-Projekt auswählen.
4. Erstellen Sie mit der Trident CSI-provisionierung eine Back-End-, Storage-Klasse- und Snapshot-Klassenkonfiguration
Verwenden Sie die unten abgebildeten yaml-Dateien, um ein dreigespanntes Backend-Objekt, ein Storage-Klasse-Objekt und das Volumesnapshot-Objekt zu erstellen. Stellen Sie sicher, dass Sie die Anmeldeinformationen für Ihr von Ihnen erstelltes Amazon FSX ONTAP-Dateisystem, die Verwaltungs-LIF und den vserver-Namen Ihres Dateisystems in der Konfiguration yaml für das Backend angeben. Um diese Details anzuzeigen, wählen Sie in der AWS-Konsole für Amazon FSX das Dateisystem aus, und wechseln Sie zur Registerkarte Administration. Klicken Sie außerdem auf Aktualisieren, um das Kennwort für den Benutzer festzulegen fsxadmin
.
Sie können die Objekte über die Befehlszeile erstellen oder mit den yaml-Dateien von der Hybrid Cloud-Konsole aus erstellen. |
Trident Back-End-Konfiguration
apiVersion: v1
kind: Secret
metadata:
name: backend-tbc-ontap-nas-secret
type: Opaque
stringData:
username: fsxadmin
password: <password>
---
apiVersion: trident.netapp.io/v1
kind: TridentBackendConfig
metadata:
name: ontap-nas
spec:
version: 1
storageDriverName: ontap-nas
managementLIF: <management lif>
backendName: ontap-nas
svm: fsx
credentials:
name: backend-tbc-ontap-nas-secret
Storage-Klasse
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: ontap-nas
provisioner: csi.trident.netapp.io
parameters:
backendType: "ontap-nas"
media: "ssd"
provisioningType: "thin"
snapshots: "true"
allowVolumeExpansion: true
Snapshot-Klasse
apiVersion: snapshot.storage.k8s.io/v1
kind: VolumeSnapshotClass
metadata:
name: trident-snapshotclass
driver: csi.trident.netapp.io
deletionPolicy: Delete
Stellen Sie sicher, dass die Objekte von Backend, Storage-Klasse und Trident-snapshotclass mit den unten gezeigten Befehlen erstellt werden.
Zu diesem Zeitpunkt ist eine wichtige Änderung erforderlich, ontap-nas statt gp3 als Standard-Storage-Klasse einzustellen, damit die später zu implementierende postgresql-Applikation die Standard-Storage-Klasse verwenden kann. Wählen Sie in der OpenShift-Konsole Ihres Clusters unter Storage StorageClasses aus. Bearbeiten Sie die Annotation der aktuellen Standardklasse mit „false“ und fügen Sie die Annotation storageclass.kubernetes.io/is-default-class für die ontap-nas Storage-Klasse auf „true“ ein.
5. Implementieren Sie eine postgresql-Anwendung auf dem Cluster
Sie können die Anwendung über die Befehlszeile wie folgt bereitstellen:
helm install postgresql bitnami/postgresql -n postgresql --create-namespace
Wenn die Anwendungspads nicht ausgeführt werden, kann es aufgrund von Einschränkungen im Sicherheitskontext zu einem Fehler kommen. Beheben Sie den Fehler, indem Sie die runAsUser fsGroup Felder und im statefuleset.apps/postgresql Objekt mit der UID bearbeiten, die in der Ausgabe des oc get project Befehls enthalten ist, wie unten gezeigt.
|
die postgresql-App sollte ausgeführt werden und persistente Volumes verwenden, die von Amazon FSX ONTAP-Speicher unterstützt werden.
6. Erstellen Sie eine Datenbank und fügen Sie einen Datensatz hinzu
7. Fügen Sie den Cluster zu ACS hinzu
Melden Sie sich bei ACS an. Wählen Sie Cluster aus, und klicken Sie auf Hinzufügen. Wählen Sie andere aus, und laden Sie die Datei kubeconfig hoch oder fügen Sie sie ein.
Klicken Sie auf Weiter und wählen Sie ontap-nas als Standard-Storage-Klasse für ACS aus. Klicken Sie auf Weiter, überprüfen Sie die Details und Hinzufügen den Cluster.
8. Definieren Sie die Anwendung in ACS
Definieren Sie die postgresql-Anwendung in ACS. Wählen Sie auf der Landing Page Applications, define aus und geben Sie die entsprechenden Details ein. Klicken Sie ein paar Mal auf Weiter, überprüfen Sie die Details und klicken Sie auf Definieren. Die Anwendung wird zu ACS hinzugefügt.
9. Erstellen Sie einen Snapshot mit ACS
Es gibt viele Möglichkeiten, einen Snapshot in ACS zu erstellen. Sie können die Anwendung auswählen und einen Snapshot auf der Seite erstellen, auf der die Details der Anwendung angezeigt werden. Sie können auf Snapshot erstellen klicken, um einen On-Demand-Snapshot zu erstellen oder eine Schutzrichtlinie zu konfigurieren.
Erstellen Sie einen On-Demand-Snapshot, indem Sie einfach auf Create Snapshot klicken, einen Namen angeben, die Details überprüfen und auf Snapshot klicken. Nach Abschluss des Vorgangs ändert sich der Snapshot-Status in „funktionstüchtiger Zustand“.
10. Löschen Sie die Datenbank in der postgresql-Anwendung
Melden Sie sich wieder bei postgresql an, Listen Sie die verfügbaren Datenbanken auf, löschen Sie die zuvor erstellte Datenbank und führen Sie sie erneut auf, um sicherzustellen, dass die Datenbank gelöscht wurde.
11. Wiederherstellen von einem Snapshot mit ACS
Um die Anwendung von einem Snapshot wiederherzustellen, gehen Sie zur ACS-UI-Landing Page, wählen Sie die Anwendung aus und wählen Sie Wiederherstellen. Sie müssen einen Snapshot oder ein Backup auswählen, von dem aus wiederhergestellt werden soll. (In der Regel würden auf Basis einer von Ihnen konfigurierten Richtlinie mehrere erstellt werden.) Treffen Sie in den nächsten Bildschirmanzeigen die richtige Auswahl und klicken Sie dann auf Wiederherstellen. Der Anwendungsstatus wechselt von Wiederherstellen zu verfügbar, nachdem er aus dem Snapshot wiederhergestellt wurde.
12. Überprüfen Sie, ob Ihre App aus der Momentaufnahme wiederhergestellt wurde
Melden Sie sich beim postgresql-Client an und Sie sollten nun die Tabelle und den Datensatz in der Tabelle sehen, die Sie zuvor hatten. Das ist alles. Durch Klicken auf eine Schaltfläche wurde Ihre Anwendung in einen früheren Zustand zurückgesetzt. So einfach machen wir es unseren Kunden mit Astra Control.