Con l’adozione definitiva da parte di Red Hat e altri vendor di kvm/qemu quale piattaforma di virtualizzazione con hypervisor l’evoluzione software a contorno di questa tecnologia ha fatto grandi passi, consentendo ad oggi di ottenere una perfetta architettura di virtualizzazione di livello enterprise anche a casa vostra gratuitamente (mediante distro quali Ubuntu, Fedora, ecc).
La scalabilità dell’architettura viene garantita dalla infrastruttura costruita a partire dalla libvirt: un demone per il controllo anche remoto dell’hypervisor, una interfaccia amministrativa grafica e una testuale e altro a corollario.
Da questa complessa architettura risulta ancora assente uno strumento integrato e completo per il salvataggio e ripristino delle VM.
Assenza però non significa impossibilità: con strumenti disponibili e standard si può realizzare un semplice ma efficace e sicuro software per la realizzazione di procedure di salvataggio e ripristino automatico di VM gestite da libvirt.
Questo sarà oggetto di questa serie di articoli.
Gli strumenti disponibili
La console amministrativa virsh ha i comandi dumpxml e define atti a salvare e ripristinare la definizione di una VM (un dominio, nella nomenclatura libvirt). Questo è un buon punto di partenza.
Quello che manca è il salvataggio della componente storage della VM. Questa è descritta nel file XML di definizione, ed in ogni caso è uno o più file collocati nel percorso /var/lib/libvirt/images/.
Questo percorso è accessibile solo da utente amministratore (l’hypervisor che ne gestisce l’accesso è un servizio di sistema), e questo diviene un requisito per una costruenda procedura automatica.
Il salvataggio di una VM è dunque la copia della sua definizione e dei file delle immagini disco.
Per realizzarlo è sufficiente dunque copiare questi files in un archivio (magari compresso) su un supporto esterno.
Vedremo della prossima puntata il codice (script shell) con cui realizzare questo compito.