====== Ghetto VCB Backup - Backup von VM's auf ESX Ebene ====== **1.) SSH auf dem ESX aktivieren** Dies kann man ganz einfach in dem VCenter des ESX machen ---- **2.) Ghetto VCB auf ESX kopieren/installieren** mkdir /ghettovcb Files per SCP hin kopieren Die Files bekommt man hier: [[https://github.com/lamw/ghettoVCB/tarball/master]] ---- **3.) Editieren der Config** Die Config ist selbsterklärend Zwei Tips: * Compression bring nichts * Für den Mail-Versand muss man die Firewall noch bearbeiten ---- **4.) Firewall Regel auf dem ESX anlegen für den Mail-Versand** Das Firewall-Files MUSS kopiert werden um es zu editieren cd /etc/vmware/firewall cp service.xml service.xml_rw chmod u+w service.xml_rw vi service.xml_rw Ganz unten in der Config dies einfügen. Es ist auch recht Selbsterklärend Wichtig ist nur das die "service id" nicht schon vorhanden ist. Mail outbound tcp dst 25 true false cp service.xml_rw service.xml chmod a-w service.xml rm -f service.xml_rw esxcli network firewall refresh esxcli network firewall ruleset list Danach kann man die Regel auch im VCenter sehen nach einem Refresh der Liste im VCenter. ---- **5.) Das Backup selbst** Man kann alle VM's auf dem ESX-Host Backupen oder man nimmt nur spezielle VM's ins Backup auf. Backup von allen VM's /ghettovcb/ghettoVCB.sh -g /ghettovcb/ghettoVCB.conf -a Backup von speziellen VM's vi /ghettovcb/backup_vm_list.conf Die VM's die man ins Backup aufnehmen möchte mit dem genauen Namen im VCenter untereinander in das File schreiben und speichern. /ghettovcb/ghettoVCB.sh -g /ghettovcb/ghettoVCB.conf -f backup_vm_list.conf ---- **6.) Cron-Job einrichten - nicht persistent ** Man muss aufpassen ob die Zeit am ESX richtig gesetzt ist. Am bessten man kontrolliert dies mit "date" cd /var/spool/cron/crontabs cp root root_rw chmod u+w root_rw vi root_rw Editieren wie eine normaler Crontab cp root_rw root chmod u-w root rm -f root_rw Crontab neu starten < ESXi 3.5u3 kill $(ps | grep crond | cut -f 1 -d ' ') >= ESXi 3.5u3 kill $(pidof crond) crond ESXi 4.x und 5.x kill $(cat /var/run/crond.pid) /usr/lib/vmware/busybox/bin/busybox crond ---- ** 7. Cronjob persistent machen ** vi /etc/rc.local.d/local.sh # Write Cron after reboot /bin/echo "0 2 * * * /vmfs/volumes/datastore1/BACKUP/scripts/ghettoVCB.sh -g /vmfs/volumes/datastore1/BACKUP/scripts/ghettoVCB.conf -f /vmfs/volumes/datastore1/BACKUP/scripts/backup_vm_list.conf" >> /var/spool/cron/crontabs/root # Restart Cron after new Cronjob /usr/lib/vmware/busybox/bin/busybox crond