Backup e Ripristino · 4 min read · Jan 07, 2026

Clonare/Backup/Restaurare VM OpenVZ Con vzdump

Clonare/Backup/Restaurare VM OpenVZ Con vzdump

Versione 1.0
Autore: Falko Timme

vzdump è un’utilità di backup e ripristino per le VM OpenVZ. Questo tutorial mostra come puoi usarlo per clonare/backup/restaurare macchine virtuali con vzdump.

Non fornisco alcuna garanzia che questo funzionerà per te!

1 Nota Preliminare

Sto usando due server OpenVZ in questo tutorial:

  • server1.example.com: IP 192.168.0.100
  • server2.example.com: IP 192.168.0.101

(Entrambi utilizzano Debian Etch e sono configurati secondo questo tutorial: Installazione e utilizzo di OpenVZ su Debian Etch - ma funziona anche con qualsiasi altra distribuzione.)

Sto eseguendo una macchina virtuale con il nome host test.example.com, l’indirizzo IP 192.168.0.102 e il VEID 102 su server1.example.com, e voglio eseguire il backup di quella macchina e ripristinarla su server2.example.com.

Possiamo ripristinarla su server2.example.com senza modifiche (ad es. stesso indirizzo IP e nome host), ma in tal caso dobbiamo fermare la VM su server1.example.com perché altrimenti l’indirizzo IP e il nome host sarebbero in conflitto; la seconda possibilità è ripristinarla su server2.example.com, ma cambiare alcuni parametri come l’indirizzo IP e il nome host con il comando vzctl set - in questo caso possiamo eseguire entrambe le VM (quella originale su server1.example.com e la clone su server2.example.com) contemporaneamente. Questo è un ottimo metodo per clonare le VM.

2 Preparazione Dei Server OpenVZ

Prima dobbiamo installare vzdump e rsync che è una dipendenza. Su Debian, il comando è il seguente:

server1/server2:

apt-get install vzdump rsync  

3 Creazione Di Un Backup Di Una VM

(Questo capitolo è solo per server1!)

Su server1.example.com, voglio creare un backup della mia VM con il VEID 102. Dai un’occhiata a

man vzdump

per imparare come usare vzdump.

Per eseguire il backup di tutte le VM sul tuo server, useresti qualcosa come

vzdump --compress --dumpdir /home/backup --stop --all

–compress significa: comprimi il file di dump (risultati in a.tgz).

–dumpdir specifica la directory in cui vuoi memorizzare il dump. Se non specifichi un dumpdir, di default è /vz/dump o /var/lib/vz/dump (dipende dalla tua distribuzione).

–stop ferma la VM, crea il backup e la riavvia successivamente. La tua VM può essere inattiva per alcuni minuti se usi –stop. Una soluzione più veloce sarebbe usare…

–suspend: sospende la VM; la VM viene quindi copiata tramite rsync in una directory temporanea. La VM viene ripresa subito dopo in modo che sia inattiva solo per pochi secondi, e poi il dump viene creato utilizzando la copia nella directory temporanea. Ti consiglio di usare questa opzione se non puoi permetterti lunghi tempi di inattività.

Puoi anche omettere –stop e –suspend e dumpare una VM in esecuzione. Nella maggior parte dei casi questo non crea problemi, ma è possibile che il dump sia incoerente, quindi fai attenzione!

–all crea un dump di tutte le VM disponibili. Se vuoi dumpare solo una VM specifica, sostituisci –all con il VEID della VM.

Per creare un dump della nostra VM 102 in /home/backup e fermare la VM durante il backup, usa

vzdump --compress --dumpdir /home/backup --stop 102

Per creare un dump nella directory predefinita (/vz/dump o /var/lib/vz/dump), usa

vzdump --compress --stop 102

L’output potrebbe apparire come segue:

server1:/vz/dump# vzdump –compress –stop 102
INFO: avvio del backup per VPS 102 (/var/lib/vz/private/102)
INFO: avvio della prima sincronizzazione /var/lib/vz/private/102 a /var/lib/vz/dump/tmp9009
INFO: fermare vps
Fermare il contenitore …
Contenitore fermato
Contenitore smontato
INFO: sincronizzazione finale /var/lib/vz/private/102 a /var/lib/vz/dump/tmp9009
INFO: riavvio vps
Avvio del contenitore …
Contenitore montato
Aggiunta indirizzo(i) IP: 192.168.0.102
Impostazione unità CPU: 1000
Configurare meminfo: 65536
Imposta nome host: test.example.com
File resolv.conf è stato modificato
Avvio contenitore in corso…
INFO: vps è di nuovo online dopo 15 secondi
INFO: Creazione archivio ‘/var/lib/vz/dump/vzdump-102.tgz’ (/var/lib/vz/dump/tmp9009/102)
Byte totali scritti: 340428800 (325MiB, 11MiB/s)
INFO: backup per VPS 102 completato con successo (1.37 minuti)
server1:/vz/dump#

Per non fermare, ma sospendere la VM, usa

vzdump --compress --suspend 102

Questo è un output di esempio:

server1:~# vzdump –compress –suspend 102
INFO: avvio del backup per VPS 102 (/var/lib/vz/private/102)
INFO: avvio della prima sincronizzazione /var/lib/vz/private/102 a /var/lib/vz/dump/tmp10842
INFO: sospendere vps
Impostazione checkpoint…
sospendere…
ottieni contesto…
Checkpointing completato con successo
INFO: sincronizzazione finale /var/lib/vz/private/102 a /var/lib/vz/dump/tmp10842
INFO: riprendere vps
Riprendere…
INFO: vps è di nuovo online dopo 4 secondi
INFO: Creazione archivio ‘/var/lib/vz/dump/vzdump-102.tgz’ (/var/lib/vz/dump/tmp10842/102)
Byte totali scritti: 340428800 (325MiB, 24MiB/s)
INFO: backup per VPS 102 completato con successo (1.57 minuti)
server1:~#

Dopo il backup, dai un’occhiata alla directory di dump…

ls -l /vz/dump/

… e dovresti vedere un file a.tgz:

server1:~# ls -l /vz/dump/
totale 147864
-rw-r–r– 1 root root 1170 2008-11-20 17:40 vzdump-102.log
-rw-r–r– 1 root root 151249685 2008-11-20 17:40 vzdump-102.tgz
server1:~#

Puoi ora copiare il dump sull’altro server OpenVZ, ad es. con scp (questo copia /vz/dump/vzdump-102.tgz nella directory /home su server2.example.com):

scp /vz/dump/vzdump-102.tgz [email protected]:/home 

4 Ripristino Di Una VM

(Questo capitolo è solo per server2!)

Su server2.example.com, puoi ora ripristinare la VM come segue…

vzdump --restore /home/vzdump-102.tgz 250

… dove 250 è il nuovo VEID della VM ripristinata - puoi usare qualsiasi VEID che non sia utilizzato su server2.example.com - potresti persino usare di nuovo 102 se non è utilizzato su server2.example.com.

Se non vuoi modificare le impostazioni della VM (ad es. indirizzo IP, nome host), puoi avviarla ora, ma assicurati che la VM originale sia fermata su server1.example.com perché altrimenti gli indirizzi IP sarebbero in conflitto:

vzctl start 250

Se vuoi eseguire entrambe le VM (quella originale e la clone) contemporaneamente, devi cambiare l’indirizzo IP e il nome host della clone prima di avviarla.

Per impostare un nuovo nome host, esegui qualcosa del genere:

vzctl set 250 --hostname test2.example.com --save

Per impostare un nuovo indirizzo IP, dobbiamo prima eliminare quello originale…

vzctl set 250 --ipdel 192.168.0.102 --save

… e poi impostarne uno nuovo:

vzctl set 250 --ipadd 192.168.0.250 --save   

Dopo di che possiamo avviare la clone:

vzctl start 250

5 Link

Share: X/Twitter LinkedIn

Ricevi i nuovi post nella tua casella di posta.

Nessuno spam. Disiscriviti in qualsiasi momento.