Panoramica del backup di Cassandra

La funzionalità di backup e ripristino di Apigee ibrida consente di creare backup dei dati ibridi e, in caso di scenari di emergenza, di ripristinare i dati in snapshot di lavoro precedenti. La disponibilità e la conservazione dei backup si basano sull'infrastruttura di backup fornita da te.

Un'installazione tipica di Apigee hybrid è costituita dai seguenti componenti:

  • MART (servizio di amministrazione)
  • Controller e Watcher (gestione degli oggetti Kubernetes)
  • Istio (gestisce Ingress)
  • Runtime, sincronizzazione e UDCA (uno per ambiente)
  • Telemetria (monitoraggio e logging)
  • Gestore certificati (gestisce i certificati)
  • Datastore (database Casssandra e Redis)

Tutti i componenti, ad eccezione di Cassandra, sono stateless e non memorizzano alcun dato. Backup e ripristino non sono necessari per questi componenti. Durante il ripristino, è sufficiente reinstallare questi componenti utilizzando gli override esistenti.

Perché eseguire backup di Cassandra?

I backup sono un'importante misura di protezione contro scenari di emergenza. Ogni backup funge da snapshot coerente dei dati Cassandra esistenti al momento della creazione del backup. Oltre ai dati Cassandra, questo snapshot include schema e metadati all'interno del cluster Cassandra. In caso di emergenza, i backup consentono di ripristinare l'istanza ibrida a uno stato operativo precedente. A seconda delle dimensioni dell'istanza ibrida, un singolo set di backup può contenere uno o più file di backup.

Cosa devi sapere sui backup di Cassandra

Cassandra è un database replicato configurato per avere almeno tre copie dei tuoi dati in ogni regione o data center. Cassandra utilizza la replica dei flussi di dati e le riparazioni di lettura per mantenere le repliche dei dati in ogni regione o data center in qualsiasi momento.

Nel sistema ibrido, i backup Cassandra non sono abilitati per impostazione predefinita. È buona norma abilitare i backup di Cassandra nel caso in cui i dati vadano persi a causa di un errore catastrofico. I backup di Cassandra sono destinati all'uso in casi di ripristino di emergenza e non al ripristino della perdita di dati causata da eliminazione accidentale.

I backup vengono creati in base alla pianificazione impostata nel file overrides.yaml. Dopo aver applicato una pianificazione del backup al cluster ibrido, viene eseguito un job di backup di Kubernetes in base alla pianificazione. Il job attiva uno script di backup su ciascun nodo Cassandra nel cluster ibrido che raccoglie tutti i dati sul nodo, crea un file di archivio dei dati e invia l'archivio a Cloud Storage o a una directory su un server remoto.

Quali elementi vengono sottoposti a backup?

Il backup ibrido pianificato è un backup completo dei dati di runtime persistenti archiviati in Cassandra di Apigee al momento del backup. Eventuali modifiche ai dati dopo il momento del backup non saranno disponibili nel backup. Il backup pianificato è composto dalle seguenti entità:

  • Schema Cassandra, incluso lo schema utente (definizioni dello spazio dei chiavi Apigee).
  • Informazioni sul token di partizione Cassandra per nodo Cassandra in un cluster.
  • Un'istantanea dei dati di Cassandra.

Dove vengono archiviati i dati di backup?

La posizione dei dati di backup dipende dal metodo di backup. Apigee hybrid supporta i seguenti metodi per l'esecuzione dei backup:

  • Backup in Cloud Storage: il backup è archiviato nei bucket Cloud Storage configurati nel tuo progetto Google Cloud.
  • Backup in un server remoto: il backup viene archiviato in una directory su un server remoto specificato da te.

Come vengono protetti i dati?

Se utilizzi Cloud Storage per il backup, i dati di backup sono criptati per impostazione predefinita. Nel caso di backup al di fuori di Cloud Storage, i dati di backup vengono criptati durante il trasferimento al server remoto. Dopo il trasferimento, tuttavia, devi assicurarti che i dati di backup siano criptati sul server remoto.

Come eseguire i backup?

Devi pianificare i backup come job cron. Il cronjob legge la configurazione da un file overrides.yaml che hai configurato. Apigee ti consiglia di creare una copia del file overrides.yaml per poterlo riutilizzare durante il processo di ripristino.

Le seguenti sezioni descrivono in dettaglio come pianificare i backup in Cloud Storage e su un server remoto.