Script zum sichern von *.vmx/*.vmxf Dateien aus dem COS
Verfasst: 19.08.2010, 17:08
Moin,
ich musste neulich feststellen das unser momentan eingesetztes Backupprogramm* zwar durchaus alles sichert beim wiederherstellen
aber sich nicht um das Original schert sondern eine Interpretation dessen vornimmt. Gleiches gilt auch fuer VMDKs und ich habe noch
nicht entschieden was ich bedenklicher finde.
Aus diesem Grunde ein simples Script was alle *.vmx und *.vmxd Dateien aus der COS des ESX Hosts heraus erfragt, in einen Tarball
schreibt und hinterher das ganze per SMTP an eine E-Mail Adresse schickt.
Es setzt vorraus das man Erfolgreich "smtp_send_html.pl" implementiert hat und sich davon eine modifizierte Form als "smtp_send_plain.pl"
erstellt hat damit der MIME Typ auch passt.
Das ganze wird dann als CRON Job hier einmal in der Woche ausgefuehrt.
Inhalt backup_VMX.sh:
Rechte anpassen:
Das ganze dann fuer einen woechentlichen automatisierten Aufruf:
Da der Weekly Cron als root ausgefuehrt wird brauchts es bei dem vmware-cmd Aufruf keine weiteren Credentials und im Script muss nichts hinterlegt werden. Da hier nun aber die ESXi Hosts wie Pilze aus dem Boden schiessen bin ich an einer Version dran welche das ganze dann mittel PowerCLI macht.
* Falls die lieben Freunde von Vizioncore mitliesen. Ja, wenn ich eine VM als HW4 gesichert habe dann ist anzunehmen das ich diese
in dieser Form auch wiederherstellen moechte! Eure Marktbegleiter koennen dies und bieten sogar ein Auswahlmenu dafuer an
Gruss
Joerg
ich musste neulich feststellen das unser momentan eingesetztes Backupprogramm* zwar durchaus alles sichert beim wiederherstellen
aber sich nicht um das Original schert sondern eine Interpretation dessen vornimmt. Gleiches gilt auch fuer VMDKs und ich habe noch
nicht entschieden was ich bedenklicher finde.
Aus diesem Grunde ein simples Script was alle *.vmx und *.vmxd Dateien aus der COS des ESX Hosts heraus erfragt, in einen Tarball
schreibt und hinterher das ganze per SMTP an eine E-Mail Adresse schickt.
Es setzt vorraus das man Erfolgreich "smtp_send_html.pl" implementiert hat und sich davon eine modifizierte Form als "smtp_send_plain.pl"
erstellt hat damit der MIME Typ auch passt.
Das ganze wird dann als CRON Job hier einmal in der Woche ausgefuehrt.
Inhalt backup_VMX.sh:
Code: Alles auswählen
#!/bin/sh
########################################################
# backup_VMX.sh - Collect VM configuration files #
# #
# Query the local ESX host for all registered VMs and #
# creating a tarball of all *.vmx and *.vmxf files and #
# sending the archiv via SMTP. #
# #
# Author: Joerg Behrens <behrens@takenet.de> #
# #
########################################################
input=/tmp/VMX.list
archiv=/tmp/`hostname -s`-VMX-`date +%Y%m%d`.tgz
address=admin@example.com
subject="[`hostname -s`][backup] Virtual Machine Configurations"
sender=`hostname -s`@`hostname -d`
smtpserver="smtp.example.com"
vmware-cmd -l |grep ".vmx" > $input
sed -e "s/.vmx/\.vmxf/g" $input >> $input
tar czvf $archiv -T $input
/root/bin/smtp_send_plain.pl -t $address -s "$subject" -m " List of all VMX Files : `cat $input`" -f $sender -r $smtpserver -a $archiv
rm -rf $input
rm -rf $archivRechte anpassen:
Code: Alles auswählen
chmod 700 backup_VMX.shDas ganze dann fuer einen woechentlichen automatisierten Aufruf:
Code: Alles auswählen
cd /etc/cron.weekly/
ln -s ~root/bin/backup_VMX.sh .
Da der Weekly Cron als root ausgefuehrt wird brauchts es bei dem vmware-cmd Aufruf keine weiteren Credentials und im Script muss nichts hinterlegt werden. Da hier nun aber die ESXi Hosts wie Pilze aus dem Boden schiessen bin ich an einer Version dran welche das ganze dann mittel PowerCLI macht.
* Falls die lieben Freunde von Vizioncore mitliesen. Ja, wenn ich eine VM als HW4 gesichert habe dann ist anzunehmen das ich diese
in dieser Form auch wiederherstellen moechte! Eure Marktbegleiter koennen dies und bieten sogar ein Auswahlmenu dafuer an
Gruss
Joerg