Backup e ripristino

OSE 2.1 Kubernetes Backup and Restore: un approfondimento dedicato

La più recente e preziosa funzionalità di OSE 2.1 è il Kubernetes Backup and Restore che rende tale soluzione ancora più utile. Ecco come può essere utilizzata, come avviene il backup e il restore e i nuovi vantaggi introdotti con questa release

03 Dic 2021

OSE 2.1 è ora disponibile e offre molte nuove funzionalità e vari aggiornamenti di cui beneficiare immediatamente. Ce ne sono un’ampia gamma che spazia dalla policy globale di sincronizzazione dei bucket applicata a un tenant singolo o multi-sito alla personalizzazione del ruolo dell’app e dell’utente subordinato fino al Kubernetes Backup and Restore. Indubbiamente, il punto forte della recente release è proprio quest’ultima nuova funzionalità che va a completare quelle di OSE 2.1 già precedentemente disponibili per l’archiviazione di dati non strutturati e per il backup delle vApp e dei cataloghi dei tenant di Cloud Director nello storage S3.

Cos’è Kubernetes Backup and Restore?

La caratteristica più significativa di OSE 2.1 è senza dubbio Kubernetes Backup and Restore, utile per recuperare i dati di un cluster Kubernetes che ha subito una data loss o che ha problemi di infrastruttura, oppure se c’è un servizio difettoso che deve essere sistemato. Un altro caso d’uso potrebbe essere quello legato ad un namespace Kubernetes che è stato accidentalmente cancellato e va ripristinato oppure se l’intero cluster deve essere replicato per il debug o lo staging.

I cluster Kubernetes di cui è possibile fare il backup e il ripristino includono i cluster Kubernetes gestiti da CSE (cluster nativi gestiti da TKG e CSE) e i cluster esterni Vanilla Kubernetes. I primi vengono identificati automaticamente, mentre i cluster Kubernetes esterni richiedono che i loro file kubeconfig.yaml siano caricati nell’interfaccia utente di OSE 2.1 che, in questo caso, si connette al cluster selezionato attraverso quel file yaml e distribuisce l’agent di backup e ripristino se il cluster è selezionato per la protezione.

Figura 1: Schermata della nuova funzionalità di backup
Figura 1: Schermata della nuova funzionalità di backup

Come funziona il backup di Kubernetes?

Il nucleo del Kubernetes Backup and Restore consiste nell’utilizzo di Velero, uno strumento open-source acquisito da VMware nel 2018 che viene installato in modo trasparente nel cluster Kubernetes selezionato per la protezione nell’interfaccia utente di OSE 2.1. Funziona nel modo seguente:

  • Un’app deployer parte del pacchetto OSE installa il grafico di Velero Helm nel cluster Kubernetes selezionato che sarà protetto (cluster gestito da CSE o cluster K8S esterno).
  • Velero esegue il backup dei dati di Kubernetes selezionati su richiesta o con una precisa frequenza temporale, ad esempio, ogni due settimane.
  • Velero preleva i dati Kubernetes selezionati e li archivia in un bucket S3 specifico.
Figura 2: Flusso di lavoro di Kubernetes Backup and Restore

È possibile attivare un backup su richiesta o programmarlo dopo che l’agent di backup e ripristino è stato installato nel cluster. Quando si seleziona un backup programmato, ci sono alcune opzioni da specificare:

  • Il bucket S3 dove il backup verrà memorizzato.
  • Se il backup sarà crittografato a riposo o meno – La crittografia a riposo (EAR) aiuta a proteggere i dati di backup da accessi non autorizzati perché sono crittografati nel bucket S3 selezionato.
  • La frequenza di backup – Questo serve a specificare quando il backup verrà eseguito, ad esempio, ogni 14 giorni alle 14:32:58. La timeline del backup appare nelle informazioni del cluster Kubernetes protetto ed è un modo utile per tenere traccia dei backup passati.
  • I dati di backup catturati possono anche essere tenuti nel bucket S3 specifico per un numero preciso di giorni e poi cancellati automaticamente. Questo favorisce l’ottimizzazione dell’uso dello storage, specialmente quando si sta utilizzando un cloud pubblico.
  • L’ambito della policy. A differenza del backup su richiesta, che riguarda l’intero cluster Kubernetes, quello programmato consente di selezionarne delle parti. Le opzioni possibili sono puntare comunque sull’intero cluster Kubernetes o solo su spacename ed etichette selezionati.
Figura 3: Esempio di pianificazione del backup di Kubernetes

Quali sono i dati di Kubernetes di cui viene fatto il backup?

I dati di cui viene fatto il backup includono:

  • Stati di Kubernetes in etcd. Per ripristinare il cluster, è necessario eseguire il backup di etcd e di tutte le risorse rilevanti
  • I dati dell’applicazione, cioè i volumi persistenti

Come funziona il ripristino di Kubernetes?

Il processo di ripristino di Kubernetes sceglie un backup selezionato e lo ripristina sul cluster Kubernetes i cui dati sono stati sottoposti a backup e quelli ripristinati sostituiscono i dati persi all’interno del cluster Kubernetes. È un passaggio facile e veloce, basta scegliere l’istanza di backup che si desidera ripristinare e avviare il processo di ripristino dall’interfaccia utente di OSE 2.1. A questo punto Velero ripristina il backup in modo trasparente sul cluster Kubernetes di origine.

Conclusione

Per concludere questa panoramica sulla funzione di Kubernetes Backup and Restore ecco alcuni punti da mettere in evidenza:

  • Kubernetes Backup and Restore è un modo semplice e veloce per ripristinare i cluster Kubernetes critici in caso di servizi rovinati, perdita di dati o problemi di infrastruttura.
  • I dati di Kubernetes sottoposti a backup sono disponibili e a portata di mano sia attraverso l’interfaccia utente di OSE 2.1 che attraverso un’API di accesso al client S3.
  • Kubernetes Backup and Restore può anche essere eseguito da un utente del tenant selezionato che ha il ruolo di Kubernetes Contributor grazie ad una granularità dei ruoli degli utenti tenant che rappresenta una nuova caratteristica in OSE 2.1.

@RIPRODUZIONE RISERVATA

Articolo 1 di 5