Servizio Red Hat OpenShift su AWS con NetApp ONTAP
Questo documento spiega come utilizzare NetApp ONTAP con il servizio Red Hat OpenShift su AWS (ROSA).
Creare snapshot del volume
1. Creare un'istantanea del volume dell'app in questa sezione, verrà mostrato come creare un'istantanea Trident del volume associato all'app. Si tratta di una copia temporizzata dei dati dell'app. In caso di perdita dei dati dell'applicazione, siamo in grado di ripristinarli da questa copia point-in-time. NOTA: Questo snapshot viene memorizzato nello stesso aggregato del volume originale in ONTAP (on-premise o nel cloud). Pertanto, in caso di perdita dell'aggregato di storage ONTAP, non è possibile ripristinare i dati dell'applicazione dalla relativa istantanea.
**a. Creare un VolumeSnapshotClass salvare il seguente manifesto in un file denominato volume-snapshot-class.yaml
apiVersion: snapshot.storage.k8s.io/v1
kind: VolumeSnapshotClass
metadata:
name: fsx-snapclass
driver: csi.trident.netapp.io
deletionPolicy: Delete
Creare un'istantanea utilizzando il manifesto riportato sopra.
b. Creare quindi un'istantanea creare un'istantanea del PVC esistente creando VolumeSnapshot per acquisire una copia point-in-time dei dati PostgreSQL. Questo crea uno snapshot FSX che non occupa quasi spazio nel backend del filesystem. Salvare il seguente manifesto in un file chiamato volume-snapshot.yaml:
apiVersion: snapshot.storage.k8s.io/v1
kind: VolumeSnapshot
metadata:
name: postgresql-volume-snap-01
spec:
volumeSnapshotClassName: fsx-snapclass
source:
persistentVolumeClaimName: data-postgresql-0
c. Creare lo snapshot del volume e confermarne la creazione
Eliminare il database per simulare la perdita di dati (la perdita di dati può verificarsi per una serie di motivi, in questo caso viene semplicemente simulata eliminando il database)
d. Eliminare il database per simulare la perdita di dati (la perdita di dati può verificarsi per una serie di motivi, qui stiamo solo simulando eliminando il database)
Ripristino da Snapshot volume
1. Ripristino da istantanea in questa sezione, verrà illustrato come ripristinare un'applicazione dallo snapshot Trident del volume dell'applicazione.
a. Creare un clone del volume dallo snapshot
Per ripristinare lo stato precedente del volume, è necessario creare un nuovo PVC in base ai dati nello snapshot acquisito. A tale scopo, salvare il manifesto seguente in un file denominato pvc-clone.yaml
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: postgresql-volume-clone
spec:
accessModes:
- ReadWriteOnce
storageClassName: trident-csi
resources:
requests:
storage: 8Gi
dataSource:
name: postgresql-volume-snap-01
kind: VolumeSnapshot
apiGroup: snapshot.storage.k8s.io
Creare un clone del volume creando un PVC utilizzando lo snapshot come origine utilizzando il manifesto riportato sopra. Applicare il manifesto e assicurarsi che il clone sia stato creato.
b. Eliminare l'installazione postgresql originale
c. Creare una nuova applicazione postgresql utilizzando il nuovo PVC clone
$ helm install postgresql bitnami/postgresql --set primary.persistence.enabled=true --set primary.persistence.existingClaim=postgresql-volume-clone -n postgresql
d. Verificare che il pod applicazioni sia in esecuzione
e. Verificare che il pod utilizzi il clone come PVC
f) per verificare che il database sia stato ripristinato come previsto, tornare alla console contenitore e visualizzare i database esistenti
Video dimostrativo
Ulteriori video sulle soluzioni Red Hat OpenShift e OpenShift sono disponibili "qui".