virtnbdbackup il tool moderno per backup online delle VM KVM/QEMU

virtnbdbackup nasce per superare i limiti degli script tradizionali dedicati ai backup delle macchine virtuali gestite da libvirt.

Molte soluzioni esistenti si basano ancora sugli snapshot esterni, spesso richiedono pause della VM o addirittura lo spegnimento, con un impatto evidente sui servizi in produzione. Le recenti evoluzioni di libvirt e qemu hanno introdotto un sistema più avanzato per tracciare i blocchi modificati, permettendo backup realmente online e molto più efficienti. Questo strumento sfrutta proprio queste nuove capacità per creare copie complete, incrementali o differenziali senza interrompere il funzionamento delle VM.

Il cuore del progetto è l’uso dei dirty bitmaps, una funzione che consente di identificare con precisione quali blocchi del disco sono cambiati dall’ultimo backup. Grazie a questo meccanismo, virtnbdbackup può generare catene di backup sottili e veloci, riducendo lo spazio occupato e accelerando le operazioni. Il tool gestisce automaticamente la creazione dei checkpoint necessari e rimuove quelli obsoleti quando si avvia una nuova catena, mantenendo un flusso di lavoro ordinato e prevedibile.

La modalità automatica è pensata per chi vuole semplificare la gestione: se la cartella di destinazione è vuota, viene creato un backup completo, altrimenti il processo passa automaticamente a un backup incrementale. Per chi preferisce un controllo più preciso, sono disponibili modalità dedicate. Il backup completo crea una nuova base sottile della VM, mentre la modalità copy produce una copia completa senza checkpoint, utile per immagini qcow che non supportano bitmap persistenti. Le modalità incrementale e differenziale permettono invece di salvare solo le modifiche rispetto ai backup precedenti, riducendo tempi e dimensioni.

Tutte le informazioni necessarie al ripristino vengono salvate nella stessa directory, incluse configurazioni della VM, checkpoint, dati dei dischi e log. Questo approccio rende il ripristino più semplice e lineare. Per ricostruire un’immagine completa a partire dai backup sottili è disponibile virtnbdrestore, mentre virtnbdmap permette di mappare un backup direttamente come dispositivo a blocchi, utile per recuperare singoli file o avviare una VM direttamente dall’immagine di backup.

Quando la VM è attiva, libvirt avvia un job di backup che crea un backend NBD locale. Questo backend fornisce accesso coerente ai dischi e ai blocchi modificati, garantendo un processo affidabile anche in presenza di carichi elevati. È possibile eseguire backup simultanei di più VM sullo stesso host, purché ogni operazione utilizzi una directory separata.

Il supporto ai backup incrementali dipende dal formato delle immagini. Le versioni più recenti di qcow2 supportano i dirty bitmaps, mentre le versioni più vecchie richiedono la modalità copy. In questi casi è possibile convertire le immagini a un formato più moderno tramite qemu-img, così da sfruttare tutte le funzionalità avanzate del tool.

Installare virtnbdbackup

virtnbdbackup è disponibile per Linux attraverso pacchetti deb e rpm per una facile installazione nelle principali distribuzioni.

Home virtnbdbackup

Lascia un commento