Confronto tra backup crash-consistente e backup application-consistente

L’affidabilità dei backup e delle strategie di protezione dei dati in generale dipende dalla validità e dall’immediata utilizzabilità dei dati di backup quando necessario. Nel 2021, alcune organizzazioni hanno segnalato un tasso di errore nel ripristino pari al 34% dei lavori.

La questione del ripristino rapido e corretto è particolarmente importante per i carichi di lavoro dei database live come Microsoft SQL Server ed Exchange Server. Questi sono solitamente critici e non possono essere interrotti durante il backup della macchina virtuale o fisica, che a seconda delle dimensioni della macchina può richiedere talvolta diverse ore. Per risolvere questo problema, le soluzioni moderne offrono diversi tipi di backup, tra cui backup crash-consistent e application-consistent.

Leggi questo post per rilevare le principali differenze tra questi tipi di backup e capire come ciascuno di essi influisce sul backup e sul ripristino dei dati delle applicazioni.

Backup crash-consistent

Un backup crash-consistent acquisisce un snapshot di tutti i dati presenti su un disco nello stesso istante, preservando l’ordine di scrittura. Ciò significa che i file che dipendono l’uno dall’altro vengono sottoposti a backup nello stesso momento e sono quindi coerenti. Il termine “crash-consistent” descrive l’acquisizione dei dati per il backup, poiché è simile a un punto di ripristino acquisito nell’istante che precede il crash o lo spegnimento di un server.

In che modo il software di backup acquisisce un snapshot dell’intero set di dati nello stesso momento? Ciò è possibile grazie al Volume Shadow Copy Service (VSS) di Microsoft, che fa parte del sistema operativo Windows a partire da Microsoft Server 2003. Il servizio VSS facilita la comunicazione tra i diversi componenti di un ambiente: software di backup, applicazioni di produzione che non possono essere arrestate (con le modifiche scritte su di esse mentre i backup sono in corso) e storage. Affinché Microsoft VSS funzioni, tutti questi componenti devono supportare questa funzionalità.

Il “richiedente VSS”, ovvero il software di backup, richiede la creazione di una copia shadow. VSS blocca rapidamente le operazioni di I/O su un volume, che vengono quindi messe in coda. Quindi registra i blocchi attualmente in uso dal volume. Il software di backup copia quindi tutti i dati dal disco anche dopo che i blocchi sono stati modificati, poiché sa quali blocchi erano in uso per lo snapshot.

Si noti che il backup crash-consistent è di gran lunga superiore al vecchio backup incoerente, che consiste fondamentalmente in una copia dei file presenti sul disco. Ciò significava che se i file cambiavano durante il processo di backup, i file che dipendevano l’uno dall’altro sarebbero rimasti in uno stato incoerente, poiché un file da cui dipendeva un altro file poteva essere cambiato durante la finestra di backup.

Nonostante i vantaggi rispetto al backup incoerente, i backup coerenti con il crash presentano alcuni limiti. Innanzitutto, le informazioni presenti nella memoria o in qualsiasi transazione I/O in sospeso vengono ignorate. Ciò è particolarmente critico nel caso di applicazioni di database come Microsoft SQL Server e Microsoft Exchange Server. Con i backup coerenti con il crash di questo tipo di applicazioni, dopo il ripristino dei dati sono necessarie procedure per riportare i dati di backup in uno stato coerente, con conseguente aumento dei tempi di ripristino e rischi di perdita di dati.

Backup coerente con l’applicazione

I backup coerenti con l’applicazione, noti anche come backup coerente con le applicazioni, possono acquisire le informazioni dell’applicazione sia nella memoria che nelle operazioni I/O in sospeso. Ciò è possibile utilizzando componenti specifici dell’applicazione per il servizio Microsoft noto come VSS writers. Questi writer garantiscono la coerenza dei dati dell’applicazione quando viene creata una copia shadow. Quando il software di backup richiede la creazione di una copia shadow, gli scrittori VSS Microsoft o di terze parti consentono a VSS di avere il controllo su dati applicativi specifici, non solo sui file presenti sul disco, e consentono di eseguire il backup di tali applicazioni con coerenza transazionale.

Ad esempio, Microsoft SQL Server può avere dati residenti in memoria e operazioni I/O in sospeso. Un backup regolare dei file su disco coerente con il crash, anche se coerente a livello di file, perderà i dati residenti in quelle ubicazioni. Tuttavia, con i backup coerenti con l’applicazione, il writer VSS per Microsoft SQL Server consente di eliminare le informazioni in memoria e di scaricare le operazioni I/O in sospeso sul disco nell’ordine transazionale corretto, in modo che il backup del disco con i dati dell’applicazione contenga dati transazionali coerenti.

Backup coerente con l’applicazione per macchine Linux

Per le macchine basate su Linux per le quali i servizi VSS non sono disponibili, è possibile utilizzare i comandi pre-script e post-script di Linux.

  • Gli script pre-freeze possono essere eseguiti appena prima dell’acquisizione dello snapshot della VM per sospendere le operazioni di I/O e scaricare le informazioni presenti nella memoria sul disco.
  • Gli script post-thaw vengono quindi eseguiti immediatamente dopo l’acquisizione dello snapshot della VM per ripristinare le operazioni di I/O in modo che l’applicazione possa riprendere il normale funzionamento.

Ripristino da backup coerenti con l’applicazione

Un’altra differenza fondamentale tra i backup coerenti con l’applicazione e quelli coerenti con il crash è la quantità di lavoro necessario per ripristinare i dati, soprattutto dopo che il ripristino è stato effettuato.

  • Con i backup coerenti con il crash, poiché i dati dell’applicazione potrebbero non essere coerenti, è necessario seguire una procedura specifica per riportare le applicazioni a uno stato coerente. Questo processo varia a seconda dei prodotti, come Microsoft Exchange Server o Microsoft SQL Server.
  • Con i backup coerenti con l’applicazione, i dati dell’applicazione sono già coerenti. In uno scenario di ripristino di emergenza dei dati delle applicazioni, è estremamente vantaggioso disporre di backup coerenti con le applicazioni anziché di backup coerenti con il crash, poiché il processo di ripristino è molto più veloce e affidabile.

Comandi VSS Writers

Vssadmin è un potente strumento di risoluzione dei problemi per VSS Writers e molte opzioni sono disponibili dalla riga di comando. È possibile visualizzare lo stato degli scrittori VSS in Windows utilizzando il comando vssadmin list writers . L’immagine sottostante mostra lo speciale VSS SqlServerWriter così come per Exchange Microsoft Exchange Writer.

sqlserverwriter name in command line

Il Microsoft Exchange Writer è mostrato di seguito.

microsoft exchange writer name in command line

Di seguito sono riportati i comandi supportati dall’utilità vssadmin.

supported command by vssadmin utility

Backup coerente con il crash vs backup coerente con l’applicazione

Ecco una breve panoramica delle differenze tra backup coerenti e backup crash-consistent:

Funzionamento Coerenza in caso di crash Coerenza dell’applicazione
Backup coerente dei file in un determinato momento
Copia shadow del volume utilizzata per il backup a livello di blocco
Coerenza dell’applicazione No
Consapevole delle informazioni di memoria e delle transazioni I/O in sospeso No
Scrittori VSS utilizzati No
Non richiede procedure speciali per il ripristino dei dati dell’applicazione No

Conclusione

Esistono differenze evidenti nel modo in cui i backup crash-consistent e application-consistent gestiscono i dati nelle applicazioni live come Microsoft SQL Server o Microsoft Exchange Server. I backup coerenti non copiano i dati in memoria e le operazioni I/O in sospeso. I backup application-aware riconoscono questi tipi di dati transitori e li acquisiscono sfruttando gli scrittori VSS come componenti del servizio VSS in Windows per arrestare correttamente l’applicazione svuotando la memoria e trasferendo le operazioni I/O in sospeso sul disco, consentendo così di eseguire il backup in modo corretto con coerenza transazionale.

Le moderne soluzioni di backup vSphere come NAKIVO Backup & Replication & Replication offrono diverse opzioni di backup per diversi carichi di lavoro, per aiutarti a proteggere i tuoi dati e garantire il ripristino di emergenza. Scarica l’Edizione gratuita per scoprire tutti gli strumenti e le funzionalità avanzate.

Try NAKIVO Backup & Replication

Try NAKIVO Backup & Replication

Get a free trial to explore all the solution’s data protection capabilities. 15 days for free. Zero feature or capacity limitations. No credit card required.

Le persone leggono anche