Jump to content
lmerega

Full backup (snapshot?) del mio VPS

Recommended Posts

Ciao a tutti.

Ho un VPS su OVH.

Mi serve fondamentalmente per testing, quindi ne sono felicissimo.

Se attivo la modalità rescue, mi vengono fornite delle credenziali che mi permettono di entrare nell'host del mio VPS e trovarne il contenuto in un folder /mnt/vdb.

Ciò premesso, volevo fare uno snapshot del mio VPS per quando testo versioni alpha o roba simile.

Non uso la loro funzione perché prevede un costo di 2,50 euro al mese.

Ho quindi fatto, da rescue:  

tar cvzf - /mnt/vdb1/ | ssh root@indirizzio_ip_mio_nas -"cat > /volume1/VPSBackup/myserver.tar.gz"

 

Questo crea un tar.gz contenente tutto il mio server... o no?

Ossia, se spiano tutto e faccio un restore del .gz nella cartella /mnt/vdb1 ci possono essere problemi? Se sì, quali? Pensavo eventualmente ai link simbolici, ma in realtà dovrebbero permanere nel tar.

 

Grazie in anticipo.

 

.luca

 

 

Share this post


Link to post
Share on other sites

Ciao Luca,

solo una precisazione, non stai accedendo all'host ma solo ad una live distro che monta il tuo disco.

Riguardo al backup io non sono un gran fan del tar in streaming, un modo molto rozzo ma che funziona di far la stessa cosa è fare un rsync di / su un server remoto, dopo aver fatto dump dei db in una cartella locale. Questo ti permette anche di syncare il backup senza doverlo rifare da zero.

Questo puoi farlo senza rescue. Una cosa che puoi fare via rescue è un dd, sempre in streaming verso remoto. Molto poco efficiente, ma ti permette un restore "as is" (comando inverso), mentre per il primo (sia fatto a modo tuo che a modo mio) sarebbe molto rischioso e da provare.

Share this post


Link to post
Share on other sites

Concordo con GrG.

 

Personalmente, a meno di necessità particolari, utilizzerei delle tecniche più "smart".

Per farti un piccolo esempio: potresti salvare solo le cartelle modificate e i pacchetti installati, in questo modo al restore dovresti ripartire dallo stesso sistema operativo, installare i pacchetti e restorare i file.

 

Alternativamente, se pensi che utilizzerai spesso questa procedura, potresti cominciare ad utilizzare dei configuration management (es: puppets, chef, ansible..)

Share this post


Link to post
Share on other sites

Ho provato:

dd if=/mnt/vdb1 | gzip -1 - | ssh root@rindirizzio_ip_mio_nas dd of=/volume1/Download/image.gz

Purtroppo mi torna: 

dd: reading `/mnt/vdb1': Is a directory
E questo mi lascia perplesso perché non so come fargli pensare che sia un disco... idee?
 

 

Alternativamente, se pensi che utilizzerai spesso questa procedura, potresti cominciare ad utilizzare dei configuration management (es: puppets, chef, ansible..)

 

Lo dovrò utilizzare molto spesso. Ho guardato i configuration management, ma non avendo accesso all'host non saprei come utilizzarli, onestamente.

Share this post


Link to post
Share on other sites

Ho provato:

dd if=/mnt/vdb1 | gzip -1 - | ssh root@rindirizzio_ip_mio_nas dd of=/volume1/Download/image.gz

Purtroppo mi torna: 

dd: reading `/mnt/vdb1': Is a directory
E questo mi lascia perplesso perché non so come fargli pensare che sia un disco... idee?
 

Lo dovrò utilizzare molto spesso. Ho guardato i configuration management, ma non avendo accesso all'host non saprei come utilizzarli, onestamente.

 

Per vedere il volume di root tramite il comando di mount:

sudo mount |grep " / " |awk '{print $1}'

Ti dovrebbe ritornare un qualcosa del genere:

/dev/xvda1

E quello corrisponde al tuo volume di root.

 

Personalmente come configuration management ti consiglio Ansible per il fatto che è agent-less e la sua semplicità d'uso, puoi cominciare partendo dalla sua documentazione.

Share this post


Link to post
Share on other sites
sudo mount |grep " / " |awk '{print $1}'

 

Mi torna /dev/vda1,  ma non è il volume della partizione di boot della distro live?

A cosa mi serve? 

peraltro nella tabella di mount trovo:

/dev/vdb1 on /mnt/vdb1 type ext3 ecc. eccc.

Non posso fare un dd di /mnt/vdb1 che è il contenuto del mio disco?

Cosa non sto capendo? :-(

Share this post


Link to post
Share on other sites

Non avevo capito che eri già nella distro live, errore mio.

DD lavora su file, se vuoi solo il contenuto puoi usare rsync o tar come già indicato precedentemente.

 

Ah, ok... rsync non lo conosco, lo devo studiare.

Tar, per ora, è quello che sto usando (a proposito, secondo voi funziona il restore o perdo tutto?).

Continuo la lettura di Ansible

Share this post


Link to post
Share on other sites

Ah, ok... rsync non lo conosco, lo devo studiare.

Tar, per ora, è quello che sto usando (a proposito, secondo voi funziona il restore o perdo tutto?).

Continuo la lettura di Ansible

 

Quando si implementano soluzioni di backup/restore vanno testate prima di poterle "certificare" come tali, avvia una vm localmente e fai un restore.

PS: quando effettuerai il restore in "prod" ricordati di cambiare ip, gw e simili perchè immagino cambieranno.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×