Datensicherung und Hyper-V

Windows Server 2012 / 2008 R2 - Snapshots von virtuellen Servern

28.09.2012 von Thomas Joos
Snapshots können bei der Sicherung von virtuellen Servern auf Basis von Hyper-V gute Dienste leisten. Beim Erstellen von und Arbeiten mit Snapshots gilt es einige Punkte zu beachten. Zudem werfen wir einen Blick auf die Unterschiede zwischen Windows Server 2012 und Windows Server 2008 R2.

Natürlich lassen sich auch virtuelle Server mit herkömmlichen Sicherungsstrategien sichern. Dazu installieren Sie auf den virtuellen Servern die Agenten der entsprechenden Sicherungslösung. Dadurch behandelt das Datensicherungsprogramm diese Server genauso wie normale physische Server. Diese Art der Datensicherung sichert aber nicht die Konfiguration der virtuellen Maschine und verwendet auch nicht die optimierten Methoden, die Hyper-V zur Verfügung stellt.

Die Agenten entsprechender Programme nutzen außerdem nicht den Hypervisor und können daher weder die Schattenkopien noch Schnappschüsse zur Sicherung nutzen. Das erhöht die zu sichernde Datenmenge und die Dauer der Datensicherung. Datensicherungen, die Hyper-V unterstützen, nutzen Schnittstellen von Hyper-V zur optimalen Sicherung. In diesem Zusammenhang kann die Software Snapshots der virtuellen Server zur Sicherung verwenden, ebenso den Schattenkopiedienst. Das ist wesentlich effizienter, schneller und auch stabiler als herkömmliche Sicherungen.

Die Anwendung erstellt Snapshots im laufenden Betrieb automatisch, und die virtuellen Server stehen weiterhin den Anwendern zur Verfügung. Solche Online-Sicherungen belasten die Hardware des Hosts nicht und ermöglichen auch Sicherungen während der Arbeitszeit.

Müssen Sie mehrere virtuelle Server auf einem Host sichern, kann eine kompatible Lösung auch gemeinsame Dateien erkennen und muss diese nicht doppelt sichern. Laufen auf einem Hyper-V-Host zum Beispiel zehn Server mit Windows Server 2008 R2/2012, kriegt das die Software mit und sichert die Daten nicht doppelt, sondern sie erkennt identische Systemdateien und sichert nur unterschiedliche Dateien.

Snapshots von virtuellen Servern erstellen

Hyper-V ermöglicht die Erstellung von Snapshots, auch ohne dass Sie Zusatzanwendungen installieren. Sie können für jeden virtuellen Computer in Hyper-V maximal 50 Snapshots erstellen. Den entsprechenden Befehl finden Sie im Kontextmenü der virtuellen Computer im Hyper-V-Manager.

In Windows Server 2012 hat Microsoft Snapshots verbessert. So besteht jetzt die Möglichkeit, Snapshots zusammenzuführen, ohne dass virtuelle Server heruntergefahren werden müssen. Diese Online-Merges (Zusammenführungen) sollen die Ausfallzeiten von virtuellen Servern reduzieren. Wenn Sie die neue Hyper-V-Replikation in Windows Server 2012 verwenden, überträgt der Assistent die Daten auf Basis von Snapshots und erstellt für bereits übertragene virtuelle Server auf dem Zielserver erneut Snapshots.

Bildergalerie:
Snapshots von virtuellen Servern
Hier legen Sie den Speicherort für die Snapshots fest. Ist der Snapshot erstellt, können Sie das Verzeichnis nicht mehr ändern.
Snapshots von virtuellen Servern
So erstellen Sie einen Snapshot oder setzen einen Computer per Snapshot zurück.
Snapshots von virtuellen Servern
Die Verwaltung von Snapshots ist übersichtlich.

Während der Erstellung des Snapshots bleibt der Computer online und steht weiterhin den Anwendern zur Verfügung. Die erstellten Snapshots zeigt der Hyper-V-Manager im mittleren Bereich der Konsole an. Hyper-V speichert die Snapshots in dem Verzeichnis, das Sie in den Einstellungen des virtuellen Computers im Bereich Speicherort für Snapshotdateien angeben. Sobald ein Snapshot erstellt ist, können Sie das Verzeichnis nicht mehr ändern.

Mit Windows Server 2012 und dem neuen Hyper-V hat Microsoft das Dateiformat der virtuellen Festplatten von vhd zu vhdx geändert. Platten im .vhd-Format unterstützen nur eine Größe von 2 TByte. Beim Erstellen neuer Harddisks können Administratoren das Format auswählen. Im folgenden Beitrag weisen wir gegebenenfalls immer auf die jeweiligen Formate hin.

Mit Snapshots arbeiten

Wenn Sie den Befehl Zurücksetzen im Kontextmenü des virtuellen Computers aufrufen, wendet Hyper-V den letzten erstellten Snapshot an und setzt den Computer auf diesen Stand zurück. Snapshots ersetzen allerdings keine Datensicherung, sondern bieten nur eine Rückversicherung vor einer Konfigurationsänderung auf dem Server. Snapshots selbst erstellen Sie über den Befehl Snapshot im Kontextmenü. Durch diesen Vorgang erstellt der Server eine neue differenzierende Festplatte der aktuellen Systemfestplatte. Beim Zurücksetzen gehen aber keine Änderungen verloren, vielmehr werden diese in einem anderen Snapshot erfasst.

Rechtsklick: Über das Kontextmenü der Snapshots verwalten Sie selbige und wenden sie an.

Wenn Sie einen Server zurücksetzen oder einen älteren Snapshot anwenden beziehungsweise Snapshots löschen und die differenzierende Festplatte des Snapshots in die übergeordnete VHDX-Datei überführen, vergrößert sich unter Umständen diese Datei. In diesem Fall sollten Sie diese im Hyper-V-Manager bearbeiten und verkleinern lassen. Sie finden dazu im Aktionsbereich den Menüpunkt Datenträger bearbeiten.

Auch für die einzelnen Snapshots steht ein Kontextmenü zur Verfügung, über das Sie diese steuern. Setzen Sie eine Hyper-V-kompatible Datensicherung ein, kann diese ebenfalls automatisiert einen solchen Snapshot erstellen und dessen Daten sichern.

Im Kontextmenü von Snapshots stehen verschiedene Möglichkeiten zur Verfügung:

Einstellungen - Hierüber rufen Sie die Einstellungen des virtuellen Computers auf, zu dem dieser Snapshot gehört. Es handelt sich dabei um die Einstellungen, die zum Zeitpunkt des Erstellens gültig waren. Haben Sie Einstellungen nach dem Erstellen des Snapshots geändert, sind diese an dieser Stelle nicht zu sehen. Auf diese Weise schützen Sie auch die Einstellungen von virtuellen Servern.

Anwenden - Wenn Sie diese Option auswählen, setzt der Assistent den virtuellen Computer wieder auf den Stand zurück, an dem Sie diesen Snapshot erstellt haben. Vorher erscheint aber ein Abfragefenster, das Sie auf die Folgen hinweist. Außerdem können Sie vorher noch mal einen aktuellen Snapshot erstellen. Dieser sichert dann den aktuellen Zustand. Im Gegensatz zum Zurücksetzen über das Kontextmenü der VM können Sie hier nicht nur den letzten Snapshot verwenden, sondern beliebige Snapshots.

Umbenennen - Mit dieser Option geben Sie dem Snapshot einen anderen Namen. Hyper-V verwendet als Namen normalerweise Datum und Uhrzeit. Über diesen Menübefehl können Sie zum Beispiel noch Informationen hinzufügen, warum Sie den Snapshot erstellt haben.

Snapshot löschen - Löscht den Snapshot und die dazugehörigen Daten vom Server und überführt die notwendigen Daten in die produktive Festplatte. Die Zusammenhänge erklären wir im nächsten Abschnitt. Beim Löschen eines Snapshots gehen daher keine Daten verloren, vielmehr werden alle Änderungen, die seit dem Erstellen des Snapshots durchgeführt wurden, in die virtuelle Festplatte des Servers geschrieben, und anschließend werden der Snapshot und seine differenzierende Festplatte gelöscht (*.avdx). In Windows Server 2008 R2 ist dazu ein Neustart notwendig, Windows Server 2012 beherrscht diesen Vorgang auch online. Das heißt, der virtuelle Server kann weiterhin in Betrieb sein.

Snapshot-Unterstruktur löschen - Diese Option löscht den aktuellen Snapshot sowie alle Sicherungen, die Sie nach dem Snapshot erstellt haben und auf diesem aufbauen. Der Vorgang ist ähnlich zu Snapshot löschen, führt aber alle zusammengehörigen Snapshots zusammen.

Wie Snapshots funktionieren - Aufbau und Dateien

Erstellen Sie einen Snapshot, sperrt Hyper-V die *.vhd(x-)-Datei des virtuellen Servers vor künftigen Änderungen und speichert alle zukünftigen Daten in eine neue differenzierende Festplatte (*.avdx).

Wenn Sie auf Basis dieses Snapshots einen weiteren Snapshot erstellen, verwendet auch dieser eine neue *avdx-Datei, die wiederum auf die vorangegangene *avdx-Datei verweist. Je mehr Snapshots Sie erstellen, desto mehr *.avdx-Dateien gibt es, was die Leistung des Servers beeinträchtigt.

Ist ein Snapshot erstellt, finden Sie in diesem Verzeichnis mehrere Dateien, darunter eine .xml-Datei für jeden Snapshot. Standardmäßig besteht ein virtueller Server aus einer .vhd(x)-Datei (seiner Festplatte), einer .xml-Datei, die die Einstellungen des Servers enthält, sowie aus den Statusdateien mit den Endungen .bin und .vsv. Erstellen Sie einen Snapshot, legt der Server zunächst eine neue virtuelle Platte (eine .avhd(x)-Datei) an. Diese Datei verwendet als Basis die .vhd (x)-Datei. Der Snapshot schreibt künftige Änderungen des Servers in die .avhd(x)-Datei. Ab jetzt verweist die .xml-Datei des virtuellen Servers auf die .avhd(x)-Datei, die die Änderungen seit dem Snapshot enthält. Diese verwendet wiederum die .vhd(x)-Datei als Grundlage.

Setzen Sie den Server zum Stand eines Snapshots zurück, verwendet Hyper-V die .avhd(x)-Datei nicht mehr und verwendet wieder die originale .vhd(x)-Datei. Sie sehen den Verweis zur .avhd(x)-Datei auch in der .xml-Konfigurationsdatei des Servers. Ein Snapshot eines virtuellen Servers besteht aus der .bin- und .vsv-Datei mit der Konfiguration des Servers zum Zeitpunkt des Snapshots. Auf diese Dateien verweist die .xml-Datei des Snapshots. Das heißt, ein Snapshot eines virtuellen Servers enthält folgende Dateien:

Unterschiede zwischen Windows Server 2012 und Windows Server 2008 R2

Erstellen Sie einen weiteren Snapshot, der auf den Stand des ersten Snapshots aufbaut, verwendet dieser ebenfalls eine neue differenzierende Festplatte (.avhd(x)). Diese erhält als Quelle aber nicht die produktive virtuelle Festplatte des Servers (.vhd(x)), sondern die .avhd(x)-Datei des vorherigen Snapshots. Das liegt daran, dass der neue Schnappschuss auf dem alten Schnappschuss aufbaut; daher muss hier ein stufenweiser Aufbau erfolgen.

Da heißt, je mehr Schnappschüsse eines Servers Sie erstellen, umso mehr differenzierende Festplatten (.avhd(x)) setzen Sie ein, die aufeinander aufbauen. Durch diesen Aufbau kann die Leistung eines Servers stark einbrechen.

Bewahren Sie Schnappschüsse also nur so lange auf, wie es sein muss. Löschen Sie einen Schnappschuss, löscht Hyper-V auch die erstellten .xml, .vsv- und .bin-Dateien. Die differenzierenden Festplatten (.avhd(x)) schreibt Hyper-V in Windows Server 2008 R2 aber erst dann in die produktive virtuelle Festplatte (.vhd(x)), wenn Sie den Server einmal ausschalten, nachdem Sie den Schnappschuss gelöscht haben. In Windows Server 2012 findet dieser Vorgang online statt, der Server muss dazu nicht neu gestartet werden (Online-Merge).

Löschen Sie einen oder mehrere Schnappschüsse eines virtuellen Servers, fahren Sie in Windows Server 2008 R2 den Server einmal herunter und schalten ihn aus. Bei diesem Vorgang schreibt Hyper-V die Daten der differenzierenden virtuellen Festplatten (.avhd) in die produktive Festplatte (.vhd) und löscht anschließend die .vhd-Datei. Erst nach diesem Vorgang steigt die Leistung des virtuellen Servers wieder an. Löschen Sie mehrere Schnappschüsse auf einmal, kann das Herunterfahren und Ausschalten eines Servers auch länger dauern. In Windows Server 2012 können Sie sich diesen Vorgang sparen.

Datensicherung und Snapshots bei Hyper-V im Cluster

Setzen Sie Hyper-V im Cluster ein, um beispielsweise die Live-Migration zu nutzen, müssen Sie bei der Datensicherung und der Erstellung von Snapshots einige wichtige Punkte beachten. Sie sollten es möglichst vermeiden, Snapshots von laufenden virtuellen Maschinen in Clustern zu erstellen.

Setzen Sie nämlich einen solchen Snapshot zurück, setzt dieser nicht nur den Inhalt der virtuellen Festplatte zurück, sondern auch den des Arbeitsspeichers der VM. Dieser Umstand macht vor allem im Zusammenhang mit der Live-Migration Probleme. Wenn Sie also Snapshots von VMs in einem Cluster durchführen wollen, fahren Sie die VM herunter: Das sollten Sie auch tun, wenn Sie einen Snapshot auf eine VM anwenden wollen.

Domänencontroller und Snapshots

Bei Domänencontrollern (DCs) sichern Snapshots auch die Active- Directory-Datenbank. Setzen Sie auf einem Domänencontroller mit Windows Server 2008 R2 einen Schnappschuss zurück, kann es zu Inkonsistenzen der AD-Datenbank kommen, die auch die anderen Domänencontroller beeinflusst. Das liegt daran, dass in einem Active Directory alle Objekte eine bestimmte Nummer besitzen, die Update Sequence Number (USN).

Jeder DC hat eine eigene Liste dieser USNs und befindet sich auch selbst in dieser Liste. Setzen Sie einen Snapshot zurück, ändern sich die USNs zahlreicher Objekte, was mit hoher Wahrscheinlichkeit zu Inkonsistenzen führt. In jedem Fall aber trennen die anderen DCs den wiederhergestellten Domänencontroller vom Netzwerk, um Fehler zu beheben.

Vermeiden Sie daher möglichst Snapshots auf Domänencontrollern. Zwar hat Microsoft das Problem in Windows Server 2012 mit der GenerationID besser im Griff, aber generell ist das Sichern von Servern, die eine Datenbank bereitstellen, nicht über Snapshots empfohlen, zumindest wenn es sich vermeiden lässt. Das Gleiche gilt übrigens für alle Server, die eine Datenbank nutzen, auch Exchange und SQL. Sie sollten solche Datenbanken niemals über Snapshots zurücksetzen.

In Hyper-V haben Sie die Möglichkeit, einem Gastsystem eine differenzierende virtuelle Festplatte zuzuweisen. Dazu bauen die Festplatten auf eine übergeordnete Festplatte mit einer Windows-Installation auf und speichern die Daten auf einer eigenen Platte. Für Domänencontroller ist das nicht empfohlen, da sich solche Festplatten zu leicht wieder in den Ursprungszustand zurückversetzen lassen. Hier existiert das gleiche Problem wie bei den Snapshots.

Migrierte Server überprüfen und Migration zurücksetzen

Nach einer Migration zu Hyper-V 3.0 in Windows Server 2012 sollten Sie zudem sicherstellen, dass alle Einstellungen der importierten virtuellen Server noch korrekt sind, und diese gegebenenfalls nachträglich anpassen. Vor allem die Konfiguration der Datenträger, die IP-Adressen, die Konfiguration des Arbeitsspeichers und die Prozessoren sowie die generelle Konfiguration der Netzwerkverbindungen sind in diesem Zusammenhang wichtig.

Stellen Sie darüber hinaus sicher, dass der Assistent alle Computer vom Quell- auf den Zielserver importiert hat. Achten Sie auch darauf, ob die Snapshots auf dem Quell- und Zielserver übereinstimmen. Stimmt die Konfiguration, starten Sie die virtuellen Server und überprüfen im Ereignisprotokoll des Zielservers über Anwendungs- und Dienstprotokolle\Microsoft\Windows\Hyper-V-Verwaltungsdienst für virtuelle Computer\Admin, ob Fehler protokolliert werden. (mje)