Backup di Hyper-V a livello di host o guest
Quando si utilizza la piattaforma di virtualizzazione Hyper-V di Microsoft, il backup delle VM riveste un’importanza fondamentale. Per garantire la sicurezza dei dati delle VM, è necessario conoscere i diversi metodi di backup disponibili per le VM Hyper-V e individuare quelli più adatti alle proprie esigenze. Esistono due approcci diversi al backup delle macchine virtuali Hyper-V: a livello di guest e a livello di host.
Il metodo a livello di guest è simile al backup di macchine fisiche, poiché opera a livello di macchina virtuale con l’ausilio di agenti VM installati su ciascuna di esse. Il backup a livello di host offre maggiori vantaggi, poiché opera a livello di hypervisor ed esegue il backup delle macchine virtuali nella loro interezza, comprese le configurazioni, facilitando così il ripristino. Entrambi gli approcci sono illustrati in dettaglio in questo articolo del blog, insieme alle funzioni di NAKIVO Backup & Replication per il backup a livello di host.
Backup Hyper-V a livello di guest
Il backup delle macchine virtuali (VM) a livello di guest è simile al backup di un host fisico. Per eseguire il processo di backup, sul sistema operativo (OS) guest viene installato un software speciale basato su agent. Quasi tutti i prodotti di backup per Windows utilizzano il Volume Shadow Copy Service (VSS) di Microsoft (noto anche come Volume Snapshot Service). VSS è una tecnologia sviluppata per creare backup coerente con le applicazioni copie dei dati tramite snapshot. Per questo processo vengono utilizzati componenti speciali di VSS chiamati “VSS writer”. In Linux, le istantanee LVM (Logical Volume Manager) possono essere utilizzate per uno scopo simile.
Il ruolo degli agenti
Un agente è un componente del software di backup installato su un computer fisico o su una VM per interagire con il file system e le applicazioni. Gli agenti possono essere utilizzati per creare copie dell’intero sistema o di singoli file o programmi. Gli agenti di solito vengono eseguiti come processo di sistema all’interno del sistema operativo guest; stabiliscono una connessione di rete con un server sul quale è possibile gestire i backup. Le soluzioni di backup che utilizzano agenti sono spesso denominate soluzioni di backup tradizionali.

Casi d’uso del backup a livello di guest nell’ambiente virtuale
Il backup a livello di guest può essere utilizzato per i seguenti motivi:
- Se un sistema operativo guest non è ufficialmente supportato dall’hypervisor, il che significa che non è possibile eseguire un backup coerente con le applicazioni utilizzando un metodo a livello di host.
- Se una macchina virtuale (VM) è collegata a uno storage condiviso a livello del sistema operativo guest o dispone di un disco fisico collegato direttamente (incluso un disco pass-through) che non è supportato dal software di backup a livello di host. Ad esempio, supponiamo che una VM sia collegata a un LUN (Logical Unit Number) di una SAN (Storage Area Network) tramite il protocollo iSCSI (utilizzando un iniziatore iSCSI all’interno del sistema operativo guest) e che un software, come un server di database o un file server, stia utilizzando quel volume. In questo caso, il VSS writer di Hyper-V non sarebbe in grado di eseguire un backup completamente coerente di tutti i dischi utilizzati dalla VM (i volumi all’interno dei dischi virtuali VHD e i volumi dei dischi fisici collegati direttamente). Ciò è dovuto al fatto che, per eseguire un backup corretto, le applicazioni ed entrambi i tipi di disco devono essere messi in stato di quiescenza al momento dell’acquisizione dello snapshot. I dischi pass-through possono essere convertiti in dischi virtuali VHD allo scopo di eseguire backup a livello di host. Si noti che la macchina virtuale può trovarsi su uno storage condiviso, come un dispositivo NAS (Network Attached Storage) o una SAN. Queste soluzioni vengono utilizzate per eseguire il backup a livello di host con clustering.

- Alcune organizzazioni con ambienti virtualizzati di piccole dimensioni ricorrono al backup delle VM a livello di guest per contenere i costi. Tuttavia, questo approccio non è consigliato. Sebbene in passato potesse avere senso, poiché le soluzioni legacy basate su agent erano più economiche per ambienti con poche VM, oggi esistono soluzioni di backup delle VM a livello di host altrettanto (o più) convenienti per i piccoli ambienti Hyper-V.
Svantaggi del backup a livello di guest
- È necessario installare gli agenti VM su ogni VM, il che risulta scomodo e richiede tempo.
- Il processo di ripristino è più complesso. Occorre innanzitutto creare una VM vuota, quindi configurarne le impostazioni (CPU virtuale, memoria, dischi, rete, ecc.). Solo a questo punto è possibile ripristinare la VM, e per riavviarla è necessario disporre di un supporto di ripristino.
- Il consumo di risorse di calcolo è molto più elevato, specialmente quando si esegue il backup contemporaneo di diverse VM residenti su un unico host Hyper-V.
- I software di backup basati su agenti richiedono l’uso di credenziali di root o amministrative per configurare gli agenti, il che può rappresentare un rischio per la sicurezza.
- Nessuna snapshot a livello di VM.
Backup di Hyper-V a livello di host
I metodi di backup a livello di host sono preferibili per il backup delle VM di Hyper-V. I metodi di backup a livello di host operano a livello di hypervisor anziché a livello della macchina virtuale ospite e consentono di eseguire il backup delle VM indipendentemente dal sistema operativo in esecuzione al loro interno. È possibile eseguire il backup completo delle macchine virtuali, inclusi i file del disco virtuale (indicati dal formato VHD in Hyper-V) e i file di configurazione in cui sono memorizzate le impostazioni della VM quali CPU, memoria, rete ecc. Esistono due tipi di metodi di backup a livello di host: il metodo dello stato salvato e il metodo dello snapshot della macchina virtuale secondaria.

Metodo dello stato salvato
Il Metodo dello stato salvato è un metodo offline che non è coerente con le applicazioni. Quando si utilizza questo metodo, il Volume Shadow Copy Service (VSS) di Hyper-V assegna lo scrittore VSS per eseguire il processo di backup. Se la VM è in esecuzione in quel momento, viene messa in uno “stato salvato”. Ciò significa che la VM viene disconnessa per un breve periodo mentre viene acquisita l’istantanea. Il writer VSS di Hyper-V mette la VM in uno stato di ibernazione. Ciò garantisce che i file aperti possano essere salvati e che lo stato delle applicazioni in esecuzione possa essere registrato sul disco rigido virtuale.
Come funziona il metodo “Saved State”?
Analizzato in dettagli, questo processo si articola nelle seguenti fasi:
- PrepareForSnapshot evento. A questo punto, il software di backup avvia la preparazione della VM per il backup e lo stato della VM viene salvato utilizzando la modalità di ibernazione.
- Acquisizione dello snapshot. In questa fase viene utilizzato il writer VSS di Hyper-V, che viene eseguito come processo VMMS.exe (Virtual Machine Management Service). Viene acquisita l’istantanea (nota anche come punto di controllo della VM nell’ambiente Hyper-V); il software di backup crea un backup basato sull’istantanea. La creazione dell’istantanea consente di eseguire il backup dei dati della VM evitando qualsiasi modifica dei dati durante il processo di copia. Al termine di questa operazione, viene attivato l’evento PostSnapshot.
- PostSnapshot evento. La VM viene riportata allo stato precedente (ovvero si riattiva dalla modalità di ibernazione).
Metodo dello snapshot della VM figlia
Il metodo dello snapshot della VM figlia è un metodo coerente con le applicazioni ed è preferibile per il backup delle VM in esecuzione. Questo metodo può essere utilizzato per ambienti di produzione ad alta disponibilità. La VM rimane online durante l’operazione di backup, ma il backup creato è comunque transazionalmente coerente. Mentre il metodo “Stato salvato” utilizza Hyper-V VSS al di fuori delle VM figlie, il metodo “Snapshot della VM figlia” utilizza il meccanismo VSS all’interno della VM figlia (il termine “VM figlia” è sinonimo di “VM ospite”) per creare i backup.
Come funziona il metodo “Snapshot della VM figlia”?
La sequenza degli eventi è in parte simile a quella del metodo “Stato salvato”.
- Evento PrepareForSnapshot . Il servizio VSS Requestor di Hyper-V nella VM figlia attiva l’evento PrepareForSnapshot per avviare la creazione del backup.
- Evento di acquisizione dello snapshot. Dopo aver ricevuto la richiesta dal servizio VSS Requestor, viene creato lo snapshot. Successivamente, il controllo viene restituito dal servizio VSS Requestor di Hyper-V al VSS Writer di Hyper-V.
- Evento PostSnapshot . Il VSS Writer attiva l’evento PostSnapshot per informare il software di backup che la creazione dello snapshot della VM è stata completata. Il software di backup può quindi copiare lo snapshot come parte del processo di backup della VM.
Il ruolo dei Servizi di integrazione Hyper-V
I Servizi di integrazione Hyper-V vengono utilizzati per eseguire backup con il metodo dello snapshot della VM figlia; essi garantiscono un’interazione speciale tra l’hypervisor e la VM figlia. Questi servizi comprendono una serie di driver e servizi che possono essere abilitati o disabilitati singolarmente a seconda delle esigenze. Il servizio VSS Requestor, descritto in precedenza, fa parte della suite di Integration Services, che deve essere installata sulla VM per poter eseguire il backup a livello di host.
A partire da Windows Server 2008 R2 e Windows 7, gli Integration Services sono inclusi nel sistema operativo. Se si desidera installare o aggiornare manualmente i Servizi di integrazione sulla macchina virtuale, è possibile farlo utilizzando Hyper-V Manager e montando l’immagine del disco virtuale vmguest.iso sull’unità virtuale della macchina virtuale. Per aggiornare manualmente i Servizi di integrazione su un host Hyper-V, è possibile scaricarli dal sito di Microsoft e installarli tramite PowerShell. Windows 10 e Windows Server 2016 possono aggiornare i servizi di integrazione sia sugli host che sulle macchine guest tramite il servizio Windows Update.
Requisiti per l’utilizzo del metodo dello snapshot della macchina virtuale figlia
Per eseguire il backup con il metodo dello snapshot della macchina virtuale figlia devono essere soddisfatte le seguenti condizioni:
- I servizi di integrazione Hyper-V, incluso Hyper-V VSS Requestor, devono essere installati nella macchina virtuale figlia.
- Tutti i volumi all’interno della VM devono essere configurati come dischi di base anziché dinamici. I file system dei dischi all’interno della VM figlia devono supportare le istantanee (ad esempio, il file system NTFS soddisferebbe questo criterio).
- I file di snapshot della VM devono trovarsi nello stesso volume dei file VHD.
- La VM figlia deve essere in esecuzione.
Se una qualsiasi delle condizioni sopra elencate non è soddisfatta, non è possibile utilizzare il metodo dello snapshot della VM figlia. In questo caso verrebbe utilizzato il metodo “Stato salvato” come metodo predefinito.
Vantaggi dei metodi di backup a livello di host
Come illustrato sopra, i metodi di backup a livello di host sono preferibili per il backup delle VM Hyper-V e offrono numerosi vantaggi rispetto al metodo a livello di guest. Questi vantaggi possono essere riassunti come segue:
- Un backup a livello di hypervisor è più facile da gestire. Non sono necessari agenti. Il prodotto di backup è in grado di gestire l’intero host Hyper-V e tutte le VM presenti su tale host. È possibile selezionare le VM specifiche di cui eseguire il backup.
- Durante il processo di backup viene acquisito l’intero contenuto della VM, inclusi i dischi virtuali, le istantanee e le impostazioni della VM. È sufficiente selezionare l’hypervisor e una ubicazione di archiviazione per il ripristino della VM; Non è necessario creare e configurare manualmente una nuova VM.
- Possibilità di eseguire backup online “coerenti con le applicazioni” delle VM Hyper-V utilizzando il metodo dello snapshot della VM figlia, che riveste un’importanza fondamentale per gli ambienti di produzione. Non si verificano interruzioni nel funzionamento della VM e il backup è transazionalmente coerente.
- Risparmio di risorse (processore, memoria e spazio su disco).
Utilizzo di NAKIVO Backup & Replication per migliorare il backup di Hyper-V
NAKIVO Backup & Replication utilizza metodi a livello di host per eseguire il backup delle VM di Hyper-V e semplifica il processo di configurazione dei lavori di backup. NAKIVO Backup & Replication offre il backup nativo per Hyper-V Server 2012 R2 e Hyper-V Server 2016 ed è in grado di eseguire backup basati su immagini a livello di blocco delle VM in esecuzione senza tempi di inattività.
Il prodotto utilizza inoltre diverse tecnologie per il risparmio di spazio di storage. I backup di Hyper-V sono incrementali grazie alla tecnologia RCT ( Tracciamento delle modifiche resiliente ), che tiene traccia dei blocchi di dati modificati dall’ultimo backup. I dati di backup di Hyper-V vengono archiviati nel repository utilizzando modalità completamente sintetica. I file di swap vengono esclusi durante il processo di backup di Hyper-V e i dati vengono deduplicati a livello globale per ridurne ulteriormente le dimensioni.
Funzionalità di NAKIVO Backup & Replication che migliorano il backup di Hyper-V
- La modalità coerente con le applicazioni consente di eseguire backup coerenti delle VM su cui sono in esecuzione Microsoft Exchange, SQL Server, Active Directory e altre applicazioni o database.
- L’archiviazione remota dei backup di Hyper-V nel cloud Azure o AWS offre un ulteriore livello di protezione contro i disastri.
- La verifica del backup integrata controlla che il backup sia coerente e aiuta a garantire che i dati di backup archiviati nel repository siano identici a quelli della macchina virtuale di origine. Con la funzione di verifica degli screenshot, le schermate dei sistemi operativi caricati sulle VM figlie sottoposte a recupero di prova vengono inviate via e-mail immediatamente dopo l’esecuzione del backup, in modo automatico.
- Le funzionalità ottimizzate per i cluster consentono di eseguire il backup delle VM nei cluster di failover Hyper-V. Le VM possono cambiare la propria posizione tra i diversi host all’interno del cluster. Il prodotto tiene traccia automaticamente dell’ubicazione delle VM, garantendone il backup in ogni momento.
Conclusione
Abbiamo illustrato i metodi di backup a livello di guest e a livello di host per le VM Hyper-V. Il backup a livello di guest richiede l’uso di agenti, mentre quello a livello di host offre una serie di vantaggi, tra cui un ripristino più semplice e un risparmio di risorse. Ecco perché NAKIVO Backup & Replication esegue il backup di Hyper-V a livello di host con un approccio coerente con le applicazioni.
Il metodo dello snapshot della VM figlia è in genere preferito per gli ambienti di produzione grazie alla possibilità di creare backup online transazionalmente coerenti senza interrompere il funzionamento della VM. Quando una VM è offline, è possibile utilizzare il metodo dello stato salvato. Se non è possibile utilizzare nessuno dei due metodi di backup a livello di host, sia per motivi di compatibilità che per altre restrizioni, è possibile eseguire il backup a livello di guest.