VMware ESXi en version gratuite ne propose pas la sauvegarde de machines virtuelles à chaud.
Un script développé par Virtuallyghetto, nommé GhettoVCB permet de contourner ce problème!
La page Github de GhettoVCB est disponible à cette adresse : GhettoVCB
Dans cet article, nous irons à l’essentiel.
Préparation de ghettoVCB
Télécharger l’ensemble des fichiers en cliquant sur Download ZIP.
Ensuite, rendez-vous sur votre hyperviseur afin de transférer ghettoVCB-master.zip.
Désormais, connectez-vous en SSH sur votre hyperviseur.
Notre répertoire de travail sera : /vmfs/volumes/datastore1/ghettoVCB.
Il est fortement conseillé de le mettre dans un datastore local et de le copier dans un dossier.
ghettoVCB dans l’hyperviseur ESXi 5
Dézipper votre fichier zip :
unzip ghettoVCB-master.zip
Rendre exécutable votre script :
chmod +x ghettoVCB.sh
Éditer votre fichier ghettoVCB.sh :
vi ghettoVCB.sh
Modifier les variables suivantes :
VM_BACKUP_VOLUME=/vmfs/volumes/52304bd6-af562afc-e5fa-08606ee5bd47/backups
VM_BACKUP_ROTATION_COUNT=2
Le « 52304bd6-af562afc-e5fa-08606ee5bd47 » correspond à mon datastore 2.
Création d’un fichier listvm :
touch listvm
Ajouter les noms des VM :
core.vyatta.master
core.vyatta.slave
srv.owncloud
srv.zimbra
srv.zpush
Rechercher le processus « crond » :
ps | grep crond | grep -v grep
==> 3255 23255 crond crond
Tuer le processus cron :
kill 3255
Modification des droits du cron :
chmod 644 /var/spool/cron/crontabs/root
chmod +t /var/spool/cron/crontabs/root
Programmer la tâche cron :
vi /var/spool/cron/crontabs/root
Ajouter cette ligne dans la cron :
0 0 * * 1 /vmfs/volumes/5230458e-84f00e58-8db6-08606ee5bd47/ghettoVCB/ghettoVCB.sh -f /vmfs/volumes/5230458e-84f00e58-8db6-08606ee5bd47/ghettoVCB/listvm
Se rendre dans le fichier rc.local :
vi /etc/rc.local
Pour la version 5.1 :
vi /etc/rc.local.d/local.sh
Ajouter ceci :
/bin/echo "0 0 * * 1 /vmfs/volumes/5230458e-84f00e58-8db6-08606ee5bd47/ghettoVCB/ghettoVCB.sh -f /vmfs/volumes/5230458e-84f00e58-8db6-08606ee5bd47/ghettoVCB/listvm" >> /var/spool/cron/crontabs/root
Redémarrage du cron :
crond
Pour tester le bon fonctionnement du script :
/vmfs/volumes/5230458e-84f00e58-8db6-08606ee5bd47/ghettoVCB/ghettoVCB.sh -f /vmfs/volumes/5230458e-84f00e58-8db6-08606ee5bd47/ghettoVCB/listvm
Vérification de mon datastore2 :
Pour avoir plus de détails sur les commandes : GhettoVCB.