Protože jsme začali používat ESX servery, tak jsme začali řešit i to, jak je nějak zálohovat, na internetu jsem našel nějaké skripty a tak jsem se jimi trochu inspiroval a výsledek můžete vidět zde.
Zálohování probíhá na SMB svazek, tak je nutno velké soubory rozdělit. Během zálohování se vytvoří snapshot, který je možno zkopírovat, po kopírování se snapshot smaže a tím se změny, které proběhly během zálohování, uloží.
Problém tohoto skriptu je, že maže všechny snapshoty, zatím jsem nepřišel na to jak mazat jednotlivé snapshoty. Během kopírování se nepodaří zkopírovat swap soubor, ten však pro obnovení virtuální mašiny není nutný.
#!/bin/bash
BACKUP_PATH=/tmp/pb-fi-01-vBackup
VMWARE_COMMAND=/usr/bin/vmware-cmd
SPLITSIZE=1073741824
SERVER="$( hostname )"
DATE="$( date +%F )"
#vytvoření cesty pro mount záloh
mkdir -p "$BACKUP_PATH"
#mount zálohovacího serveru
mount -t smbfs //pb-fi-01/VBackup "$BACKUP_PATH" -o username=xxx,password=xxx,workgroup=xxx
#smazat staré zálohy (jsou na pásce)
rm -rf "$BACKUP_PATH/$SERVER"
#znovu vytvořit adresář
mkdir -p "$BACKUP_PATH/$SERVER"
#získat seznam virtuálních mašin
machines="$( vmware-cmd -l )"
for machine in $machines; do
path="$( basename $machine | cut -d. -f1 )"
dir="$( dirname "$machine" )"
mkdir -p "$BACKUP_PATH/$SERVER/$path"
#uložení seznamu suborů, ještě před vytvořením snapshotu, ostatní mě nezajímají
files="$( ls "$dir" )"
#protože createsnapshot upravuje vmx, nejdříve ho zkopíruji
cp "$machine" "$BACKUP_PATH/$SERVER/$path"
$VMWARE_COMMAND $machine createsnapshot dailybackups "Backup snapshot \"$DATE\"" 1
#zkopírovat pouze původní soubory
for file in $files; do
ffile="$dir/$file"
fsize="$( stat -c%s "$ffile" )"
if [ "$ffile" == "$machine" ]; then
continue
fi
#pokud je soubor velký, rodělit
if [ "$fsize" -gt $SPLITSIZE ]; then
split -b $SPLITSIZE "$ffile" "$BACKUP_PATH/$SERVER/$path/$file.part_"
else
cp "$ffile" "$BACKUP_PATH/$SERVER/$path/"
fi
done
#smazat snapshot
$VMWARE_COMMAND "$machine" removesnapshots
done
#odpojení záloh
umount "$BACKUP_PATH"



Komentáře u příspěvku "VMWare ESX záloha Virtuálních mašin" Sledovat RSS komentářů nebo zanechte Trackback
Napsat komentář