Esegui ora il backup delle applicazioni Kubernetes utilizzando risorse personalizzate in Backup and Recovery
NetApp Backup and Recovery consente di eseguire manualmente il backup delle applicazioni Kubernetes utilizzando risorse personalizzate (CR).
Esegui subito il backup di un'applicazione Kubernetes utilizzando risorse personalizzate
Crea manualmente un backup di un'applicazione Kubernetes per stabilire una base di riferimento per backup e snapshot futuri o per garantire la protezione dei dati più recenti.
|
|
Le risorse con ambito cluster vengono incluse in un backup, snapshot o clone se sono esplicitamente referenziate nella definizione dell'applicazione o se hanno riferimenti a uno qualsiasi degli spazi dei nomi dell'applicazione. |
Assicurarsi che la scadenza del token di sessione AWS sia sufficiente per qualsiasi operazione di backup s3 di lunga durata. Se il token scade durante l'operazione di backup, l'operazione può fallire.
-
Fare riferimento a "Documentazione API AWS" per ulteriori informazioni sulla verifica della scadenza del token della sessione corrente.
-
Fare riferimento a "Documentazione AWS IAM" per ulteriori informazioni sulle credenziali con le risorse AWS.
Crea uno snapshot locale utilizzando una risorsa personalizzata
Per creare uno snapshot della tua applicazione Kubernetes e archiviarlo localmente, usa la risorsa personalizzata Snapshot con attributi specifici.
-
Crea il file di risorsa personalizzata (CR) e assegnagli il nome
local-snapshot-cr.yaml. -
Nel file che hai creato, configura i seguenti attributi:
-
metadata.name: (Obbligatorio) Il nome di questa risorsa personalizzata; scegli un nome univoco e sensato per il tuo ambiente.
-
spec.applicationRef: Nome Kubernetes dell'applicazione di cui eseguire lo Snapshot.
-
spec.appVaultRef: (Obbligatorio) Il nome del AppVault in cui i contenuti dello snapshot (metadati) devono essere archiviati.
-
spec.reclaimPolicy: (Facoltativo) Definisce cosa succede all'AppArchive di uno snapshot quando il CR dello snapshot viene eliminato. Ciò significa che anche quando impostato su
Retain, lo snapshot verrà eliminato. Opzioni valide:-
Retain(predefinito) -
DeleteapiVersion: protect.trident.netapp.io/v1 kind: Snapshot metadata: namespace: my-app-namespace name: local-snapshot-cr spec: applicationRef: my-application appVaultRef: appvault-name reclaimPolicy: Retain
-
-
-
Dopo aver popolato il
local-snapshot-cr.yamlfile con i valori corretti, applica la CR:kubectl apply -f local-snapshot-cr.yaml
Eseguire il backup di un'applicazione in un archivio di oggetti utilizzando una risorsa personalizzata
Crea un CR di backup con attributi specifici per eseguire il backup della tua applicazione su un archivio di oggetti.
-
Crea il file custom resource (CR) e assegnagli il nome
object-store-backup-cr.yaml. -
Nel file che hai creato, configura i seguenti attributi:
-
metadata.name: (Obbligatorio) Il nome di questa risorsa personalizzata; scegli un nome univoco e sensato per il tuo ambiente.
-
spec.applicationRef: (Obbligatorio) Il nome Kubernetes dell'applicazione di cui eseguire il backup.
-
spec.appVaultRef: (Obbligatorio, mutuamente esclusivo con spec.appVaultTargetsRef) Se si utilizza lo stesso bucket per archiviare lo snapshot e il backup, questo è il nome del AppVault in cui devono essere archiviati i contenuti del backup.
-
spec.appVaultTargetsRef: (Obbligatorio, mutuamente esclusivo con spec.appVaultRef) Se si utilizzano bucket diversi per archiviare lo snapshot e il backup, questo è il nome del AppVault dove devono essere archiviati i contenuti del backup.
-
spec.dataMover: (Facoltativo, obbligatorio per i cluster migrati da Trident Protect) Una stringa che indica quale strumento di backup utilizzare per l'operazione di backup. Se questo cluster è stato migrato a Backup and Recovery da Trident Protect, il valore distingue tra maiuscole e minuscole e deve essere
CBS. -
spec.reclaimPolicy: (Facoltativo) Definisce cosa succede al contenuto del backup (metadati/dati del volume) quando il Backup CR viene eliminato. Valori possibili:
-
Delete -
Retain(predefinito)
-
-
spec.cleanupSnapshot: (Obbligatorio) Garantisce che lo snapshot temporaneo creato dal Backup CR non venga eliminato al termine dell'operazione di backup. Valore consigliato:
false.Esempio di YAML quando si utilizza lo stesso bucket per archiviare la Snapshot e il backup:
apiVersion: protect.trident.netapp.io/v1 kind: Backup metadata: namespace: my-app-namespace name: my-cr-name spec: applicationRef: my-application appVaultRef: appvault-name dataMover: CBS reclaimPolicy: Retain cleanupSnapshot: falseEsempio di YAML quando si utilizzano bucket diversi per archiviare lo snapshot e il backup:
apiVersion: protect.trident.netapp.io/v1 kind: Backup metadata: namespace: my-app-namespace name: object-store-backup-cr spec: applicationRef: my-application appVaultTargetsRef: appvault-targets-name dataMover: CBS reclaimPolicy: Retain cleanupSnapshot: false -
-
Dopo aver popolato il
object-store-backup-cr.yamlfile con i valori corretti, applica la CR:kubectl apply -f object-store-backup-cr.yaml
Crea un backup 3-2-1 fanout utilizzando una risorsa personalizzata
Il backup con architettura fanout 3-2-1 copia un backup sia su storage secondario che su un archivio di oggetti. Per creare un backup fanout 3-2-1, crea un Backup CR con attributi specifici.
-
Crea il file custom resource (CR) e assegnagli il nome
3-2-1-fanout-backup-cr.yaml. -
Nel file che hai creato, configura i seguenti attributi:
-
metadata.name: (Obbligatorio) Il nome di questa risorsa personalizzata; scegli un nome univoco e sensato per il tuo ambiente.
-
spec.applicationRef: (Obbligatorio) Il nome Kubernetes dell'applicazione di cui eseguire il backup.
-
spec.appVaultTargetsRef: (Obbligatorio) Il nome del AppVault in cui devono essere archiviati i contenuti del backup.
-
spec.dataMover: (Facoltativo) Una stringa che indica quale strumento di backup utilizzare per l'operazione di backup. Il valore distingue tra maiuscole e minuscole e deve essere
CBS. -
spec.reclaimPolicy: (Facoltativo) Definisce cosa succede al contenuto del backup (metadati/dati del volume) quando il Backup CR viene eliminato. Valori possibili:
-
Delete -
Retain(predefinito)
-
-
spec.cleanupSnapshot: (Obbligatorio) Garantisce che lo snapshot temporaneo creato dal Backup CR non venga eliminato al termine dell'operazione di backup. Valore consigliato:
false. -
spec.replicateSnapshot: (Obbligatorio) Indica a Backup and Recovery di replicare lo snapshot nello storage secondario. Valore obbligatorio:
true. -
spec.replicateSnapshotReclaimPolicy: (Facoltativo) Definisce cosa succede allo snapshot replicato quando viene eliminato. Valori possibili:
-
Delete -
Retain(predefinito)Esempio YAML:
-
apiVersion: protect.trident.netapp.io/v1 kind: Backup metadata: namespace: my-app-namespace name: 3-2-1-fanout-backup-cr spec: applicationRef: my-application appVaultTargetsRef: appvault-targets-name dataMover: CBS reclaimPolicy: Retain cleanupSnapshot: false replicateSnapshot: true replicateSnapshotReclaimPolicy: Retain -
-
Dopo aver popolato il
3-2-1-fanout-backup-cr.yamlfile con i valori corretti, applica la CR:kubectl apply -f 3-2-1-fanout-backup-cr.yaml
Annotazioni di backup supportate
La tabella seguente descrive le annotazioni che è possibile utilizzare quando si crea un CR di backup.
| Annotazione | Tipo | Descrizione | Valore predefinito |
|---|---|---|---|
protect.trident.netapp.io/full-backup |
stringa |
Specifica se un backup deve essere non incrementale. Impostare su |
"false" |
protect.trident.netapp.io/snapshot-completion-timeout |
stringa |
Il tempo massimo consentito per il completamento dell'operazione di snapshot complessiva. |
"60m" |
protect.trident.netapp.io/volume-snapshots-ready-to-use-timeout |
stringa |
Tempo massimo consentito affinché gli snapshot del volume raggiungano lo stato pronto all'uso. |
"30m" |
protect.trident.netapp.io/volume-snapshots-created-timeout |
stringa |
Il tempo massimo consentito per la creazione di snapshot del volume. |
"5m" |
protect.trident.netapp.io/pvc-bind-timeout-sec |
stringa |
Tempo massimo (in secondi) di attesa affinché i nuovi PersistentVolumeClaims (PVC) creati raggiungano la |
"1200" (20 minuti) |