VMware stellt seine Virtualisierungslösung ESX-I zwar kostenlos zur Verfügung, aber die Software enthält keine Möglichkeit, virtuelle Server zu sichern. Das freie XSI-Backup schafft Abhilfe.
XSI-Backup[1] braucht keine grafische Oberfläche, es läuft in der Shell und bietet alles, was Administratoren brauchen, um virtuelle Server zu sichern. Es kann auch laufende VMs auf einen anderen Host replizieren und ermöglicht zusätzlich zeitgesteuerte Datenbackups.
Die Installation
Das Tool installiert der Admin auf dem ESX-I-Host, der als Backupquelle dienen soll. Hier wird es auch eingerichtet und überwacht. Zusätzliche Server oder Datenbanken sind nicht nötig. Als Ziel für die Backups kann entweder ein anderer ESX-I-Server oder auch ein angebundenes NAS-System dienen.
Mit XSI-Backup lassen sich die VMs auf Wunsch auch nach einem Zeitplan auf einen anderen Host replizieren. Eine Nachricht über den Status der Datensicherung und eventuell eingetretene Fehler verschickt die Software auf Wunsch per E-Mail. Darin kann auch das Resultat eines SMART-Tests der verwendeten Festplatten eingeschlossen sein. Das Backuptool konfiguriert der Admin in der Shell. Sobald es funktioniert, muss er sich nicht mehr darum kümmern: Es läuft im Hintergrund und belastet die Hosts nicht, bis es die VMs sichert.
Damit sich XSI-Backup konfigurieren lässt, bedarf es einer SSH-Verbindung zum ESX-I-Host. Unter Linux ist das ohnehin kein Problem, unter Windows kommt dafür zum Beispiel der Open-Source-Client Putty [2] in Frage. Standardmäßig ist SSH auf dem ESX-I-Hosts allerdings deaktiviert.
Um den Dienst zu aktivieren, verbindet sich der Admin per Vsphere-Client mit dem Host und wählt die Registerkarte »Konfiguration« und dort den Link »Sicherheitsprofil« im unteren linken Bereich des Fensters. Hier lässt sich der SSH-Dienst einschalten. Dazu klickt man auf der rechten Seite auf »Eigenschaften« , markiert dann den Dienst SSH und klickt auf »Optionen« . Empfehlenswert ist die Option »Mit dem Host starten und beenden« (Abbildung 1). Damit ist SSH sowohl auf dem Quell- wie auch auf dem Zielhost zu aktivieren.
Im nächsten Schritt der Einrichtung von XSI-Backup sollte der Admin im Interesse einer einfachen Konfiguration zunächst via SSH die Firewall auf dem ESX-I-Host vorübergehend deaktivieren. Das bewerkstelligt das Kommando:
esxcli network firewall unload
Nach der Installation ist die Firewall wieder zu aktivieren. Das passiert durch:
esxcli network firewall load
Die Einrichtung des Backups ist schnell erledigt, entsprechend sollten durch die temporär abgeschaltete Firewall keine Sicherheitsprobleme zu erwarten sein.
Die Quelle einrichten
Zunächst ist XSI-Backup auf jenem Host zu installieren, von dem der Admin VMs replizieren oder sichern will. Dazu kann er sich die Datensicherungslösung auch direkt aus dem Internet herunterladen:
wget http://33hops.com/downloads/?f=xsibackup.zip -O xsibackup.zip
Damit das vom ESX-I-Host aus klappt, müssen in dessen Netzwerkkonfiguration ein DNS-Server und ein Default-Gateway eingetragen sein. Ist das nicht möglich oder nicht gewünscht, lässt sich die Zip-Datei von XSI-Backup auch manuell auf einen anderen Rechner herunterladen und danach auf den ESX-I-Host transferieren. Generell ist es empfehlenswert, dass das Tool in dem Datenspeicher liegt, in dem auch die VMs gespeichert sind, die der Anwender damit sichern will. Anschließend wird das Archiv entpackt und allein dem Root-User zugänglich gemacht: »chmod 0700 xsibackup*« .
Zielhost und Zeitpläne
Nachdem der Quellhost vorbereitet ist, geht es um den Zielhost, auf dem die replizieren VMs landen. Zunächst wird die Verbindung zwischen Quelle und Ziel angelegt. Dazu führt der Admin in der Shell des Quellhosts den folgenden Befehl aus:
./xsibackup --link-srv=IP-Adresse_des_Zielhosts
Darauf folgt eine Meldung, die besagt, dass ein Verbindungsschlüssel zu erstellen ist. Dafür ist das Root-Kennwort einzugeben.
Eine automatische Datensicherung nach Zeitplan erledigt der Scheduler von XSI-Backup auf dem Quellhost. Das Installieren gelingt mit »./xsibackup –install-cron« . Die erste Ausführung dieses Kommandos aktiviert die Zeitsteuerung. Wer die Funktion wieder deaktivieren will, verwendet die Option »–install-cron« erneut.
Die Datei »xsibackup-cron« kann beliebig viele Backupaufträge mit verschiedenen Optionen aufnehmen. Dazu trägt der Admin in jede Zeile einen XSI-Backup-Befehl mit den gewünschten Optionen ein. Um die jeweiligen Sicherungsjobs zeitgesteuert zu starten, enthalten die Zeilen jeweils die Option »–time« , etwa »–time=”Sun 19:00″« :
xsibackup --time="Sun 19:00" --backup-point=/vmfs/volumes/backup --backup-type=running
Dieser Befehl sichert alle gestarteten VMs des Hosts in das Verzeichnis »/vmfs/volumes/backup« . Die Option »–backup-type=running« legt fest, dass XSI-Backup nur gestartete VMs sichern soll. Wer stattdessen »–backup-type=all« verwendet, bei dem sichert XSI-Backup zusätzlich die ausgeschalteten VMs in das Zielverzeichnis.
Sind nur ausgewählte VMs zu replizieren, hilft die Option »–backup-type=custom« . Zusätzlich ist in diesem Fall noch die Option »–backup-vms=VM1,VM2,VM3« nötig, die definiert, welche VMs XSI-Backup replizieren soll. Außerdem lässt sich festlegen, ob die Sicherungslösung bereits vorhandene Dateien überschreiben oder nur veränderte Daten in die Dateien eintragen soll. Wer nur die geänderten Dateien übertragen will, hängt ein »:D« an die Pfadangabe an:
--backup-point="192.168.100.100:22:/vmfs/volumes/hp-test:D
Soll XSI-Backup immer alle Daten übertragen, ist an dieser Stelle die Option »:F« zu verwenden.
XSI-Backup protokolliert die Ausführung der verschiedenen Sicherungsjobs in der Datei »xsibackup-cron.log« . Zusätzlich kann es die Ausführung der Sicherungsjobs noch per E-Mail bestätigen.
Mit den beiden Optionen »–on-success« und »–on-error« lässt sich bei zeitgesteuerten Sicherungen automatisch ein anzugebendes Programm starten, wenn die Sicherung erfolgreich oder eben nicht erfolgreich war.
Bleibt ein Backupprozess hängen, muss ihn der Admin mit »kill« beenden. Die PID des laufenden XSI-Backup-Prozesses finden er in der Datei »xsibackup-pid« im XSI-Backup-Verzeichnis.
XSI-Backup testen und optimieren
Ob XSI-Backup funktioniert, lässt sich mit einer ersten Replikation testen, die die Option »-test-mode=true« verwendet. Damit ist die Funktion des Backups verifizierbar, ohne tatsächlich eine Replikation anzustoßen:
./xsibackup --backup-point=Pfad --backup-type=running --test-mode=true
Neben eventuellen Fehlern und Warnungen zeigt XSI-Backup dabei auch den notwendigen Speicherplatz für die Replikation der VMs und den freien Speicherplatz auf dem Zielhost an. Ist das Ziel ein entfernter Host, reicht eine einfache Pfadangabe bei »–backup-point« nicht, stattdessen ist der Standort so anzugeben:
--backup-point="IP_des_Zielhosts:22:/vmfs/volumes/Datastore"
Es ist dann auch darauf zu achten, dass zuvor mit »./xsibackup –link-srv=IP-Adresse_des_Zielhosts« erfolgreich eine Verbindung eingerichtet ist. Zusätzlich lässt sich steuern, dass XSI-Backup die verschiedenen Datensicherungen in eigenen Unterverzeichnisse ablegt, die nach dem Datum der Sicherung benannt sind. Dafür gibt es die Option »–date-dir=yes« . Wie schon erwähnt, kann die Backupsoftware auch E-Mails automatisch verschicken, die eine Statusmeldung enthalten. Die Einstellungen dafür werden ebenfalls über Optionen auf der Kommandozeile konfiguriert (Listing 1).
Listing 1
E-Mail-Optionen
01 ./xsibackup --backup-point=/vmfs/volumes/backup --backup-type=running --mail-from=Absender --mail-to=Empfänger, kommagetrennte_Liste --smtp-srv=E-Mail-Server --smtp-port=25 --smtp-usr=Anmeldenamen_am_Server --smtp-pwd=Kennwort --subject=Betreff
Benötigt der SMTP-Server einen TLS-Zugang, ist die Option »–smtp-sec=TLS« wichtig. Außerdem lässt sich der SMART-Status der Festplatten auf den ESX-I-Hosts in den E-Mail-Bericht einbinden. Das bewerkstelligt die Option »–smart-info=yes« . Bei regelmäßigen Sicherungen sollte der Status zumindest an einem Tag der Woche in den E-Mail-Bericht eingebunden sein.
VMs im Betrieb sichern
XSI-Backup bietet einige Möglichkeiten, die Software an individuelle Bedürfnisse anzupassen. So repliziert die Lösung standardmäßig VMs im laufenden Betrieb vom Quell- auf den Zielhost. Es besteht aber auch die Möglichkeit, die virtuellen Maschinen vor der Sicherung auszuschalten. Dazu dient die Option »–backup-how=cold« .
Wird sie verwendet, sendet XSI-Backup den Befehl zum Herunterfahren und wartet 30 Sekunden. Danach testet das Tool, ob der Shutdown erfolgreich war. Läuft die VM immer noch, wartet XSI-Backup noch einmal 30 Sekunden. Stellt XSI-Backup fest, dass die VM auch dann noch nicht heruntergefahren ist, schaltet das Sicherungstool die VM hart aus.
Für diesen mehrstufigen Prozess müssen die VMware-Tools im virtuellen Betriebssystem installiert sein. Sind keine VMware-Tools in der VM verfügbar, versucht XSI-Backup erst gar kein sanftes Herunterfahren, sondern schaltet die VM sofort hart aus. Diese Prozedur empfiehlt sich allerdings nicht als normales Vorgehen, weil sie unter Umständen zu einem Datenverlust führt.
Fazit
XSI-Backup ersetzt keine vollständige Sicherung der virtuellen Server, kann aber wertvolle Hilfe leisten, um zumindest wichtige VMs auf andere Hosts im Netzwerk zu replizieren oder Sicherhungskopien auf einem NAS-System abzulegen. Nach einem Ausfall des Quellhosts sind dann nur geringe Anpassungen nötig, um die VMs auf dem Zielsystem erneut in Betrieb zu nehmen.
Die Bedienung von XSI-Backup gestaltet sich flexibel und die Zeitsteuerung hilft individuelle Sicherungspläne zu realisieren (Abbildung 2). Einzig eine komplette Wiederherstellung der zuvor gesicherten Files, wie sie nach einem klassischen Backup üblich ist, gibt es in dieser Weise bei XSI-Backup nicht. (jcb)
Infos
- XSI-Backup: http://sourceforge.net/projects/xsibackup
- Putty: http://www.putty.org







