Data Protection for Container Apps in OpenShift Container Platform utilizzando Trident Protect
Questa sezione del documento di riferimento fornisce dettagli per la creazione di istantanee e backup di app container utilizzando Trident Protect. NetApp Trident Protect offre capacità avanzate di gestione dei dati delle applicazioni che migliorano la funzionalità e la disponibilità delle applicazioni stateful Kubernetes supportate dai sistemi storage NetApp ONTAP e dal provisioner dello storage NetApp Trident CSI. Trident Protect crea snapshot e backup delle applicazioni, il che significa che non solo vengono creati snapshot e backup dei dati delle applicazioni nei volumi persistenti, ma vengono anche creati snapshot e backup dei metadati delle applicazioni. Le snapshot e i backup creati da Trident Protect possono essere memorizzati in uno qualsiasi dei seguenti sistemi storage a oggetti e ripristinati da essi in un secondo momento.
-
AWS S3
-
Storage Azure Blob
-
Storage Google Cloud
-
ONTAP S3
-
StorageGRID
-
Qualsiasi altro storage compatibile con S3
Trident Protect utilizza il modello Kubernetes di role-based access control (RBAC). Per impostazione predefinita, Trident Protect fornisce un unico spazio dei nomi di sistema denominato Trident-Protect e il relativo account di servizio predefinito. Se hai un'organizzazione con molti utenti o esigenze di sicurezza specifiche, puoi utilizzare le funzionalità RBAC di Trident Protect per ottenere un controllo più granulare sull'accesso alle risorse e agli spazi dei nomi.
Ulteriori informazioni sui role-based access control in Trident Protect sono disponibili nella "Documentazione di Trident Protect"
|
L'amministratore del cluster ha accesso alle risorse nel namespace predefinito Trident-Protect e può anche accedere alle risorse in tutti gli altri namespace. Gli utenti non possono creare una risorsa personalizzata per la gestione dei dati delle applicazioni (CRS) come Snapshot e Backup CRS nello spazio dei nomi Trident-Protect. Come Best practice, gli utenti dovranno creare tali CRS nello spazio dei nomi delle applicazioni. |
Trident Protect può essere installato seguendo le istruzioni fornite nella documentazione"qui". Questa sezione mostra il flusso di lavoro per la protezione dei dati delle applicazioni dei contenitori e il ripristino delle applicazioni utilizzando Trident Protect. 1. Creazione di snapshot (on-demand su richiesta pianificata) 2. Ripristino da Snapshot (ripristino nello stesso namespace diverso) 3. Creazione di backup 4. Ripristina da backup
Prerequisito
Prima di creare istantanee e backup per un'applicazione, è necessario configurare un archivio oggetti in Trident Protect per memorizzare snapshot e backup. Questa operazione viene eseguita utilizzando la benna CR. Solo gli amministratori possono creare e configurare un bucket CR. Il bucket CR è noto come AppVault in Trident Protect. Gli oggetti AppVault sono la rappresentazione dichiarativa del flusso di lavoro di Kubernetes di un bucket di storage. AppVault CR contiene le configurazioni necessarie per l'utilizzo di un bucket nelle operazioni di protezione, come backup, snapshot, operazioni di ripristino e replica SnapMirror.
In questo esempio mostreremo l'utilizzo di ONTAP S3 come storage a oggetti. Ecco il flusso di lavoro per la creazione di AppVault CR per ONTAP S3: 1. Creare un server per archivio oggetti S3 nella SVM nel cluster ONTAP. 2. Creare un bucket in Object Store Server. 3. Creare un utente S3 nella SVM. Conservare la chiave di accesso e la chiave segreta in un luogo sicuro. 4. In OpenShift, creare un segreto per memorizzare le credenziali di ONTAP S3. 5. Creare un oggetto AppVault per ONTAP S3
Configurare Trident Protect AppVault per ONTAP S3
File yaml di esempio per la configurazione di Trident Protect con ONTAP S3 come AppVault
File yaml di esempio per l'installazione dell'app postgresql
Creare istantanee
Creazione di uno snapshot su richiesta
Creazione di una pianificazione utilizzando il seguente comando, le istantanee saranno create giornalmente alle 15:33 e due istantanee e backup saranno conservati.
Creazione di una pianificazione utilizzando yaml
È possibile visualizzare gli snapshot creati in base a questa pianificazione.
Vengono creati anche snapshot di volumi.
Eliminare l'applicazione per simulare la perdita dell'applicazione
Ripristino da Snapshot nello stesso namespace
L'applicazione e il relativo PVCviene ripristinata nello stesso namespace.
Ripristino da Snapshot a un namespace diverso
È possibile notare che l'applicazione è stata ripristinata in un nuovo spazio dei nomi.
Creare backup
Creazione di un backup su richiesta
Creazione della pianificazione per il backup
I backup giornalieri e orari riportati nell'elenco precedente vengono creati a partire dalla pianificazione impostata in precedenza.
Ripristino dal backup
Eliminare l'applicazione e i PVC per simulare una perdita di dati.
Restore to same namespace #tp create bir postgres-bir --backup postgres/hour-3f1ee-20250224023300 -n postgres BackupInplaceRestore "postgres-bir" created.
L'applicazione e i PVC vengono ripristinati nello stesso namespace.
Ripristinare uno spazio dei nomi diverso creare un nuovo spazio dei nomi. Ripristino da un backup nel nuovo spazio dei nomi.
Migrazione delle applicazioni
Per clonare o migrare un'applicazione in un cluster diverso (eseguire un clone tra cluster), creare un backup nel cluster di origine, quindi ripristinare il backup in un cluster diverso. Assicurarsi che Trident Protect sia installato sul cluster di destinazione.
Sul cluster di origine, eseguire i passaggi come mostrato nell'immagine seguente:
Dal cluster di origine, passare al cluster di destinazione. Quindi, assicurarsi che AppVault sia accessibile dal contesto del cluster di destinazione e ottenere il contenuto di AppVault dal cluster di destinazione.
Utilizzare il percorso di backup dall'elenco e creare un oggetto backuprestore CR come illustrato nel comando riportato di seguito.
Come puoi vedere, i pod delle applicazioni e i pvc vengono creati nel cluster di destinazione.