La funzionalità di backup e ripristino di Apigee Hybrid consente di creare backup dei dati ibridi e, in caso di scenari di emergenza, ripristinare i dati agli snapshot funzionanti precedenti. La disponibilità e la conservazione dei backup si basano sull'infrastruttura di backup fornita da te.
Una tipica installazione di Apigee hybrid è costituita dai seguenti componenti:
- MART (servizio di amministrazione)
- Controller e Watcher (gestiscono gli oggetti Kubernetes)
- Istio (gestisce Ingress)
- Runtime, sincronizzazione e UDCA (uno per ambiente)
- Telemetria (monitoraggio e logging)
- Cert Manager (gestisce i certificati)
- Datastore (database Cassandra e Redis)
Tutti i componenti, tranne Cassandra, sono stateless e non conservano alcun dato. Il backup e il ripristino non sono necessari per questi componenti. Durante il ripristino, è sufficiente reinstallare questi componenti utilizzando gli override esistenti.
Perché eseguire i 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 di Cassandra, questo snapshot include lo schema e i 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 in streaming e le riparazioni di lettura per mantenere le repliche dei dati in ogni regione o data center in un determinato momento.
Nell'ambiente ibrido, i backup di Cassandra non sono abilitati per impostazione predefinita. È una buona pratica attivare i backup di Cassandra nel caso in cui i dati vengano persi a causa di un guasto catastrofico. I backup di Cassandra sono destinati all'uso in caso di ripristino di emergenza e non per il ripristino della perdita di dati causata da eliminazione accidentale.
I backup vengono creati in base alla pianificazione impostata nel file overrides.yaml. Una volta applicata una pianificazione di backup al cluster ibrido, viene eseguito un job di backup Kubernetes in base alla pianificazione.
Il job attiva uno script di backup su ogni 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.
Di cosa viene eseguito il backup?
Il backup pianificato ibrido è un backup completo dei dati di runtime persistenti archiviati in Cassandra di Apigee al momento del backup. Eventuali modifiche ai dati dopo l'ora del backup non saranno disponibili nel backup. Il backup pianificato è costituito dalle seguenti entità:
- Schema Cassandra, incluso lo schema utente (definizioni dello spazio delle chiavi Apigee).
- Informazioni sui token di partizione Cassandra per nodo Cassandra in un cluster.
- Uno snapshot 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 viene 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 vengono criptati per impostazione predefinita. Nel caso di backup non su Cloud Storage, i dati di backup vengono criptati durante il trasferimento al server remoto. Dopo il trasferimento, devi assicurarti che i dati di backup siano criptati nel server remoto.
Come eseguire i backup?
Devi pianificare i backup come job cron. Il cronjob legge la configurazione
da un file overrides.yaml configurato da te. Apigee consiglia di creare una copia del file overrides.yaml, in modo da poterlo riutilizzare durante il processo di recupero.
Le sezioni seguenti descrivono in dettaglio come pianificare i backup in Cloud Storage e in un server remoto.