Panoramica del backup di Cassandra

La funzionalità di backup e ripristino ibrido Apigee consente di creare backup dei dati ibridi on demand e, in caso di eventi di emergenza, ripristinare i dati a snapshot di lavoro precedenti. La disponibilità e la conservazione dei backup si basano sull'infrastruttura di backup fornita.

In genere, un'installazione ibrida di Apigee è costituita dai seguenti componenti:

  • MART (servizio amministrativo)
  • Controller e Watcher (gestione di oggetti Kubernetes)
  • Istio (gestisce Ingress)
  • Runtime, Sincronizzazione e UDCA (uno per ambiente)
  • Telemetria (monitoraggio e logging)
  • Gestore certificati (gestisce i certificati)
  • Datastore (Cassandra e Database Redis)

Tutti i componenti, ad eccezione di Cassandra, sono stateless e quindi non memorizzano alcun dato. Backup e ripristino non sono necessari per tali componenti che utilizzano override esistenti.

Perché eseguire i backup di Cassandra?

I backup rappresentano una misura importante di protezione dagli scenari di emergenza. Ogni backup è uno snapshot coerente dei dati attuali di Cassandra esistenti al momento della creazione del backup. Sono inclusi i dati Cassandra insieme a schemi / metadati all'interno del cluster Cassandra. In caso di emergenza, i backup ti consentono di ripristinare lo stato precedente noto per l'istanza ibrida Apigee. A seconda delle dimensioni dell'istanza ibrida, potrebbero essere presenti uno o più file di backup per un singolo set di backup.

Che cosa devi sapere sui backup di Cassandra?

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

In un contesto ibrido, i backup di Cassandra non sono attivati per impostazione predefinita.È comunque buona norma attivarli in caso di perdita dei dati a causa di un errore catastrofico. I backup di Cassandra sono progettati per essere utilizzati in caso di ripristino di emergenza e non per ripristinare la perdita di dati causata da un'eliminazione accidentale.

I backup vengono creati in base alla pianificazione impostata nel file overrides.yaml. Dopo aver applicato una pianificazione di backup al tuo cluster ibrido, viene eseguito periodicamente un job di backup Kubernetes in base alla pianificazione. Il job attiva uno script di backup su ogni nodo di Cassandra nel tuo cluster ibrido, che raccoglie tutti i dati sul nodo, crea un file di archivio dei dati e invia l'archivio al bucket Cloud Storage specificato nella configurazione di backup di Cassandra nel file overrides.yaml.

Che cos'è il backup?

Il backup pianificato ibrido Apigee è un backup completo dei dati di runtime persistenti archiviati nella cartella Cassandra di Apigee al momento del backup. Eventuali modifiche ai dati successive al tempo di backup non saranno disponibili nel backup. Il backup pianificato è costituito dalle seguenti entità:

  • Schema di Cassandra, che include lo schema utente (definizioni dello spazio 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 ibrido supporta i seguenti metodi per l'esecuzione di 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. In caso di backup non attivi su Cloud Storage, i dati di backup vengono criptati durante il trasferimento al server remoto. Tuttavia, dopo il trasferimento devi assicurarti che i dati di backup siano criptati sul server remoto.

Come eseguire il backup?

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

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