Drivesnapshot

  • Quelle:
    www.drivesnapshot.de
  • Betriebssystem: Windows und DOS
  • Preis:
    Workstation 39 Euro
    Server 89 Euro
    Rabatte bis 60% bei Abnahme größerer Stückzahlen

Schon längere Zeit nutze ich eine lizenzierte Kopie von "DriveSnapShot" von Tom Ehlert. Es ist eine kleine 250kByte große Software, die ohne weitere Installation einen Windows Server per Disk-Image sichern kann. Es hat natürlich nicht den Funktionsumfang wie die großen Imageprodukte der Branche (z.B. Acronis TrueImage, Symantec V2I etc.), aber dafür ist es günstig und läuft auch ohne Installation. Ideal also um "mal schnell" ein Image eines Servers auf das LAN zu machen. Da das Programm sowohl unter Windows als auch unter DOS läuft, kann ein Restore der Systemplatte eines Server z.B. über eine Boodiskette (Bart universal Bootdisk) oder  Remote Installation Services erfolgen. Natürlich kann man auch eine der Windows PE oder Bart BootCD-basierten Images nehmen. Drivesnapshot ist aber weder eine fertige BootCD noch kann es selbst auf CD/DVD brennen.

DriveSnapshot hat es aber nicht nur auf die MSXFAQ geschafft, weil es klein, günstig und einfach pfiffig ist, sondern Anfang 2008 habe ich beim umstieg auf Vista auch die aktuelle Version von Drivesnapshot geladen und zufällig entdeckt, dass Version 1.38 auch VSS unterstützt und sogar explizit den Exchange Writer

Erweiterte Optionen mit VSS Einstellungen

Das hat dann meine Neugier geweckt und laut Herrn Ehlert ist diese Funktion schon seit Anfang 2007 beinhaltet und es gibt keine Meldungen, dass es nicht funktionieren würde. Also musste ich eine kleine Testreihe starten:

Achtung:
Dieser Test mit virtuellen Maschinen ohne hohe last und wenig Daten ist nur bedingt aussagekräftig. Wie mit jeder Sicherungssoftware sollten Sie auch ein Restore üben.

VSS und SBS
Auf dem Small Business Server müssen Sie den VSS-Service erst starten. Er ist hier per default auf "disabled".
838183 How to turn on the Exchange writer für the Volume Shadow Copy service in Windows Small Business Server 2003

vssbackup.wmv (33MB)

Imagebackup - Die Hintergründe

Es ist offensichtlich, dass Exchange zukünftig besser per Image gesichert werde sollte. Die Streaming-API ist in Exchange 2007 noch vorhanden aber mit SP1 nicht mehr per LAN anzusprechend und Produkte wie DPM2007 sichern per Images und Schattenkopien. Auch der passive Knoten eines CCR-Clusters kann nur per VSS gesichert werden. Aber allein mit einem "Image" einer Festplatte ist es nicht getan:

  • Snapshot der Datenbank und Transaktionsprotokolle
    Speziell wenn auch die Dateien auf mehreren Festplatten abgelegt sind, muss die Software hier alle Disks "zeitgleich" schnappen. Das geht offiziell nur mit dem Zugriff auf den Exchange VSS-Provider.
  • Konsistenzprüfung
    Eine VSS-Kopie ist einfach eine "kopierte Datei", die nicht per Streaming gelesen wird. Insofern sollte man zumindest ab und an per ESEUTIL die Checksummen und die Integrität der Kopie prüfen lassen.
  • Transaktionsprotokolle abschneiden
    Wenn man sie Sicherung sauber per VSS macht, dann kann die Software am Ende Exchange auch den Erfolg der Sicherung anzeigen. Exchange löscht dann die alten Transaktionsprotokolle und setzt das "LastbackupDate" in den Eigenschaften des Store
  • Wiederherstellung
    Eine Kopie der Datenbank ist noch kein Restore. Gerade beim Disk-Layout muss man hier gut planen, da ein Image immer nur komplette Partitionen sichern aber auch restaurieren kann. Drivesnapshot könnte aber auch das Image "mounten", so dass man einzelne Dateien heraus kopieren kann.

Diese Einschränkungen und Bedingungen gelten aber für alle Sicherungsprodukte, die auf VSS aufsetzen.

Das erste Backup

Ich habe dazu meine Windows 2003/Exchange 2007-VM hergenommen, der ich erst mal zwei weitere Festplatten verpasst habe. So konnte ich die Datenbank auf eine eigene Festplatte ablegen und eine zweite Disk als "Backup-Ziel" nutzen. Hier ein Blick auf den Explorer

Verzeichnisse vor dem Backup

Sie können die Datenbank und ein paar Transaktionsprotokolle sehen. Natürlich sollte man in einer produktiven Umgebung Datenbank und Transaktionsprotokolle strikt trennen.

Hinweis für Small Business Server
Hier muss der VSS-Service erst aktiviert werden, da er hier per Default "diabled" ist.

Die Bedienung von DriveSnapShot ist trivial: Zuerst wähle ich aus, dass ich ein "Backup Disk to File" machen möchte:

Im nächsten Fenster wähle ich die Quellpartition aus:

Quelle auswählen

Im nächsten Fenster geben ich den Ziel als Datei an. Das ist hier eine zweite Partition auf dem Server, kann aber ebenso ein iSCSI-Laufwerk oder ein UNC-Laufwerk sein:

Ziel angeben

Hier muss man unter den "Advanced Options"  sicherstellen, dass VSS aktiv ist, wenn ein Exchange Writer gefunden wird. (Default an, siehe ersten Bild auf dieser Seite). Ein Druck auf "Start Copy" und DriveSnapShot legt los. Natürlich ist die Sicherung einer kleinen Datenbank schnell erledigt:

VSS Sicherung von Exchange

Natürlich hat mich zuerst der Blick in das Verzeichnis interessiert. Auf meiner Exchange 2003 VM waren die Transaktionsprotokolle NICHT gelöscht. Auch das DatUmfeld in der Datenbank war natürlich nicht aktualisiert. Auf meiner Exchange 2007 VM allerdings hat Drivesnapshot keinen Fehler gemeldet hat, obwohl die Schattenkopie im Eventlog nicht erfolgreich war. Hier müssen Sie also noch zusätzlich die Funktion kontrollieren. Ein Blick ins Eventlog zeigt, was während der Sicherung passiert ist:

Eventlog mit Exchange VSS

Hier protokollieren die Exchange-Dienste jede kleine Aktion vom Beginn der Schattenkopie bis zu deren Abschluss. Hier das ganze mit den Textdetails: (Die letzte Meldung steht eventlogtypisch OBEN !)

Quelle Typ Event id Text

MSExchangeIS

Informationen

Exchange VSS Writer

9648

Exchange VSS Snapshot-Sicherung wurde heruntergefahren.

ESE

Informationen

Schattenkopie

2006

Information Store (2304) Schattenkopieinstanz 1 wurde erfolgreich beendet.

MSExchangeIS

Informationen

Exchange VSS Writer

9612

Exchange VSS Snapshot hat die Fixierung der Speichergruppen erfolgreich aufgehoben.

ESE

Informationen

Schattenkopie

2003

Information Store (2304) Schattenkopieinstanz 1 Fixierung wurde beendet.

ESENT

Informationen

ShadowCopy

2003

lsass (380) Schattenkopie 1: Fixierung wurde abgebrochen.

ESENT

Informationen

Allgemein

101

svchost (856) Das Datenbankmodul wurde beendet.

MSExchangeIS

Informationen

Exchange VSS Writer

9610

Exchange VSS Snapshot hat die Speichergruppen erfolgreich fixiert.

ESE

Informationen

Schattenkopie

2001

Information Store (2304) SG2: Schattenkopieinstanz 1 Fixierung wurde gestartet.

ESE

Informationen

Schattenkopie

2001

Information Store (2304) Schattenkopieinstanz 1 Fixierung wurde gestartet.

ESENT

Informationen

ShadowCopy

2001

lsass (380) Schattenkopie 1: Fixierung wurde gestartet.

MSExchangeIS

Informationen

Exchange VSS Writer

9608

Exchange VSS Snapshot hat die Vorbereitungen für den Snapshot erfolgreich abgeschlossen.

ESE

Informationen

Schattenkopie

2009

Information Store (2304) Schattenkopieinstanz 1 wird gestartet. Dabei handelt es sich um eine Schattenkopie vom Typ "Kopie".

MSExchangeIS

Informationen

Exchange VSS Writer

9606

Exchange VSS Snapshot hat die Vorbereitungen für die Sicherung erfolgreich abgeschlossen.

MSExchangeIS

Informationen

Exchange VSS Writer

9604

Ein Exchange VSS Snapshot-Metadatendokument wurde zusammengestellt.

Kontrolle des Image

Ich habe aber am Anfang auch geschrieben, dass sie ihr Image überprüfen sollten. Genau das sollten Sie ab und an machen. DriveSnapShot unterstützt Sie dabei derart, dass Sie das Image als "Laufwerk" verbinden können. Genau das mache ich nun.

Snapshot als Laufwerk verbinden

Auf dem nun verbundenen Laufwerk können Sie natürlich nur "Lesen", was aber für einen Blick auf das Laufwerk und ein ESEUTIL ausreicht:

Blick auf das Image als Laufwerk Z

Die Konsistenz der Datenbank prüfe ich am Besten mit ESEUTIL. Ein einfacher "Prüfsummentest" ist eine Möglichkeit:

ESEUTIl /K test

Man kann sehr gut erkenne, dass "0 bad Checksums" schon mal ein guter Anfang ist. Erschrecken könnte Sie aber, dass der Header (ESEUTIL /mh) einen Dirty Shutdown meldet:

Das ist aber bei VSS.Sicherungen normal, da Exchange die Datenbank ja nicht "herunterfährt" sondern nur kurz pausiert. Um diese Datenbank also wieder "live" zu bekommen, muss man die Datenbanken und die erforderlichen Transaktionsprotokolle beisteuern. Dazu kopiere ich die Datenbank samt Transaktionsprotokollen aus dem Archiv auf die Festplatte um Sie dort "konsistent" zu bringen.

Ich verwende dazu "ESEUTIL /R E02 /d", welches folgende Bedeutung hat:

  • /R
    Recovery wird angefordert, d.h. ESEUTIL soll die Logs in die Dirty Shutdown" Datenbank einbauen, damit diese "clean" wird
  • E02
    Meine Logdateien hatten den Präfix E02*.log. Wenn man mehrere Datenbanken hat, dann heißen die Logdateien nicht immer E00*.log
  • /D
    Hiermit teile ich ESEUTIL mit, dass er die Datenbanken im lokalen Verzeichnis nutzen soll anstelle des Pfads, der in den Protokolldateien hinterlegt ist. Ansonsten versucht ESEUTIL mit den Transaktionsprotokolle der Wiederherstellung in die produktive Datenbank einzubauen. Das ist sinnvoll, wenn die produktive Datenbank defekt ist und Sie eine Wiederherstellung an den ursprünglichen Pfad durchgeführt haben. Wenn Sie aber ein Wiederherstellung an einen anderen Pfad oder eine Wiederherstellungsgruppe durchführen, dann müssen Sie hier den Pfad zur wieder hergestellten Datenbank angeben.

Optional könnte es sein, dass sie noch folgende Parameter benötigen:

  • /8
    da Exchange 2007 per Default 8k Pages verwendet. ESETUTIL beschwert sich aber bei der Verwendung der "falschen" Pagesize
  • /i
    Wenn wirklich Transaktionsprotokolle fehlen oder defekt sind, dann können Sie mit "/i" angeben, dass ESEUTIL dann eben aufhören soll.

Sie sehen schon, dass ohne grafische Unterstützung die ein oder andere Kommandozeile erforderlich ist:

Recovery der Datenbank 

Danach ist die Datenbank aber im Status "Clean Shutdown" und kann sowohl als Restore einer produktiven Datenbank als auch als Wiederherstellungsdatenbank genutzt werden.

Zusammenfassung

Drivesnapshot ist ein kleines günstiges Werkzeug, um mal schnell eine "Sicherung" eines Exchange Servers über Schattenkopien zu machen. Sie können es auch problemlos einsetzen, um von einem Server vor einem Update ein Image zu ziehen, um im Fehlerfall schnell wieder "online" zu gehen. Die Möglichkeit, Drivesnapshot per Kommandozeile sogar automatisch zu steuern ist gut aber kein Ersatz für die Zeitplaner und Managementwerkzeuge großer Backupprogramme. Zumal ein "OK" von Drivesnapshot nicht immer ein erfolgreiches Backup verspricht. Von einer großen Backuplösung trennen Drivesnapshot Welten, das es kein Bandlaufwerke ansteuern kann und keine Berichte und Restore-Unterstützung enthält. Aber dafür ist der Preis unschlagbar, um mal eben manuell eine Sicherung durchzuführen oder VSS zu testen. Ich würde mit bezüglich der Exchange-Unterstützung aber noch die Funktion wünschen, eine Wahl zwischen "Backup" und "Copy" zu haben, also ob die Transaktionsprotokolle am Ende abgeschnitten werden oder nicht.

Drivesnapshot ist daher nicht nur ein unverzichtbares Werkzeug für Endbenutzer, die ihren PC auf eine USB-Festplatte sichern wollen, sondern auch für Administratoren, die Server und Exchange betreuen. Es ist sogar aktuell eine der günstigsten Möglichkeiten, einen Exchange 2007 Server auf Windows 2008 zu sichern, da hier NTBACKUP fehlt und das Windows Backup kein Exchange sichern kann.

Ausstehend sind natürlich Langzeiterfahrungen und der umgang mit großen Datenmengen. Auch die Sicherung eines passiven CCR-Clusters ist noch offen.

Weitere Links