Le virtual machine con FT (Fault tolerance) abilitato sono tra le cose più affascinanti che VMware permetta ogni giorno. La possibilità di avere una VM con un downtime azzerato fa gola sicuramente a tanti, e anche col limite di una sola vCPU, i casi d’uso in cui questa configurazione da dei vantaggi sono numerosi.
Un ulteriore limite però ha sempre scoraggiato il suo uso diffuso: l’impossibilità di fare snapshot. Tutte le soluzioni di backup basate sulle librerie VADP di VMware poggiano il loro funzionamento sull’uso delle snapshots stesse, e Veeam non fa eccezione. Va da se che, in queste condizioni, non è possibile effettuare un backup tramite snapshot di una VM con FT abilitato.
Ma è possibile allora fare un backup in qualche altro modo?
Finora, è sempre stato suggerito innanzitutto di limitare il numero di VM in cui utilizzare FT al minimo indispensabile, sia per il problema delle snapshots, sia per il carico di lavoro ulteriore che la loro esecuzione pone sull’infrastruttura VMware, sia per l’apposita rete di comunicazione che va dedicata alla sincronizzazione tra la VM primaria e la sua secondaria.
Per farne i backup invece, si è spesso ricorsi a soluzioni classiche che prevedessero l’uso di agent all’interno del Guest OS, esattamente come si sarebbe fatto per un server fisico.
Al recente VMworld US 2012, VMware ha presentato la nuova versione di FT, che offrirà il supporto multi-processore e la possibilità di effettuare le snapshots; questo articolo potrebbe quindi tra un pò diventare obsoleto. Ma fintanto che non abbiamo a disposizione la nuova versione, dobbiamo fare i conti con l’impossibilità di fare snapshots.
Potrebbe però esserci un altro modo di fare questa cosa? Forse sì. Anzi con Veeam Backup ce ne sono due!
Metodo Normale
Se prendete una VM dove FT è configurato, e disattivate momentaneamente FT stesso, vi accorgerete che a questo punto di questa VM è possibile farne una snapshot, e quindi un backup. Stiamo ovviamente “imbrogliando”, dato che durante tutta l’esecuzione del backup la VM non è tecnicamente protetta da FT. Possono esserci casi in cui un’ora di non protezione è accettabile, magari perchè programmata in orari di scarso o nullo utilizzo, altri dove non è tollerabile nemmeno un minuto di disattivazione. A voi la scelta.
Se potete fermare FT, potrete allora automatizzare l’attività con tre blocchi di codice PowerShell in sequenza. C’è già chi ha spiegato come disabilitare e riattivare FT via PowerShell: Cody Bunch ne ha parlato in questo suo articolo. Quello che vi manca, è il comando di backup di Veeam via PowerShell, ma anche in questo caso è tutto già fatto. Sarà sufficiente infatti eseguire il cmdlet
Start-VBRJob -name job_name
per avviare il backup. Finito il backup, il codice che vi ho segnalato sopra verrà nuovamente usato, questa volta per riattivare FT.
Se possedete uno storage HP LeftHand e Veeam Backup 6.5
Quando sarà disponibile Veeam Backup and Replication 6.5, ovvero entro il quarto trimestre del 2012, per i possessori di storage HP LeftHand ci sarà la possibilità di un affascinante workaround tramite la funzione SanSnap Restore. Ho già scritto di questa soluzione che Veeam rilascerà nella prossima release 6.5 qui. Ne ho vista una demo al VMworld US 2012, ed è affascinante:
Praticamente, unisce il meglio di due soluzioni: veloci snapshot san-based, senza la complessità dei restore da san. Come può aiutare nel salvare le VM FT? Probabilmente avete capito dove voglio arrivare: potete usare la SAN snapshot per aggirare l’impossibilità di fare snapshot da vSphere, creare una copia crash consistent di quella VM, ed essere in grado in seguito di ripristinarla.
Ci sono dei limiti a questa soluzione, diversi dai primi ma non meno importanti: il più grave è che le snapshots risiedono nello stesso storage dove le VM sono eseguite. Perso lo storage, perdete sia le VM che le loro copie. Sarà vostro scrupolo prevedere anche i normali backup per mettervi al sicuro, anche se ci saranno da inventare metodi quantomeno “fantasiosi” per estrarre la snapshot. Per i ragazzi di Veeam che stessero leggendo, un suggerimento per un ulteriore miglioria da apportare a SanSnap: poter estrarre un backup direttamente dalla snapsoht ;).