Exchange Backup und Restore mit NTBACKUP

Exchange installiert bei der Einrichtung auf dem Server auch eine neue Version von NTBACKUP. Damit wird aus dem Sicherungsprogramm nun auch eine Version ,die Microsoft Exchange richtig online über die API sichern kann. Siehe auch Backup und Restore.

Achtung:
Exchange 2007 SP1 schaltet per Default "Enable Remote Streaming Backup" ab, so dass Sie nur noch lokal sichern können. Über die Registrierung können Sie diese Funktion wieder aktivieren. Siehe auch SP 2007 SP1

Windows 2008 und NTBACKUP
NTBackup ist nicht mehr Bestandteil von Windows 2008 und wurde durch das imagebasiertes "Windows Server Backup" abgelöst. Erst am Exchange 2007 SP2 kann damit wieder ein Exchange Server gesichert werden. Siehe Exchange Backup und Restore mit Windows Server Backup

Wenn wie bislang unter Windows XP oder Windows 2000/2003 mit NTBACKUP gesichert haben dann benötigen Sie folgenden Download, um einen Restore unter Vista oder Windows 2008 zu erhalten:
Windows NT Backup - Restore Utility
http://www.microsoft.com/downloads/details.aspx?FamilyID=7DA725E2-8B69-4C65-AFA3-2A53107D54A7&displaylang=en

Wenn ihr Backupserver nicht auch der Exchange Server ist, dann können Sie trotzdem auch über das LAN den entfernten Exchange Server sichern. Sie müssen dazu einfach nur das Exchange Setup aufrufen und nur die Administrativen Komponenten installieren. Denken Sie auch daran, auf solchen Systemen das Exchange Service Pack zu installieren

Was kann NTBackup ?

NTBackup ist die Datensicherung, die Bestandteil des Betriebssystems ist und folgende Funktionen erfüllt

Damit ist auf jeden Fall ein korrektes funktionierendes Backup von Exchange und dem Betriebssystem möglich.

Grenzen von NTBACKUP

Ehe nun gleich die Fragen kommen, warum Sie Geld für kommerzielle Produkte ausgeben sollten, wenn NTBACKUP doch das gleiche leisten kann, sollten Sie die Grenzen von NTBACKUP kennen:

NTBACKUP ist übrigens eine abgespeckte Version von Veritas BackupExec. Die Sicherung mit NTBACKUP ist daher nicht gerade "einfach", wenn Sie automatisiert erfolgen soll.

Sicherung per Kommandozeile

Das einfachste die der Aufruf von NTBACKUP über die Kommandozeile. Hier können Sie nahezu alles steuern. Das Programm NTBACKUP ab Windows 2000 erlaubt ihnen auch über die GUI eine Planung und Erstellung Jobs, aber einige Optionen sind dabei nicht einstellbar. Siehe auch

Beim Aufruf von NTBACKUP können in der Kommandozeile die verschiedenen Datenquellen angegeben werden. Sinnvoll ist es aber auch hier, eine Textdatei mit der Auswahl der Quellen anlegen zu lassen und diese anzugeben.

Betriebssystem sichern

Ehe sie Exchange alleine sichern, sollten Sie auch die Seiten MSXFAQ - Backup und Restore gelesen haben, denn zum erfolgreichen Backup gehört auch eine Sicherung der Domäne bzw. des AD und des Betriebssystems, der Metadatenbank etc. NTBACKUP kann dies alles mit sichern, wenn es mit angegeben wird.

ntbackup.exe backup SYSTEMSTATE /v /d "Systemstatebackup" /b /t Normal /l c:\backup.log

Trotzdem müssen sie auch die Dateien auf lokalen Festplatten (außer M: !) sichern, damit eine Wiederherstellung möglich ist.

Exchange 5.5 sichern

Für die Sicherung von Exchange 5.x ist der Verzeichnisdienst und der Informationsspeicher wichtig. Eine Unterteilung des Informationsspeichers nach Postfächern und öffentlichen Ordnern ist nicht möglich.

Der Aufruf lautet dann:

ntbackup.exe backup DS \\Server IS \\Server /v /d "Exchange Backup" /b /t Normal /l c:\backup.log

Die Optionen bedeuten:

Option Bedeutung
DS \\SERVER Sicherung des Verzeichnisdienstes  (DIR.EDB)
IS \\SERVER Sicherung des Informationsspeichers (PRIV.EDB/PUB.EDB)
/v Verbose, d.h. Details ins Protokoll schreiben
/d "Exchange Backup" Beschriftung des Bandes
/b  
/t Normal Sicherungsart "NORMAL", d.h. volle Sicherung mit Zurücksetzung der Transaktionsprotokolle
/l c:\backup.log Pfad für die Protokolldatei

Dieser Aufruf sichert die Exchange 5.5 Datenbanken "online" auf das eingelegte Band.

Sicherung Exchange 2000/2003

Exchange 2000 kennt keinen Verzeichnisdienst mehr. Sie müssen daher für ein vollständiges Backup auch das Active Directory sichern. Exchange 2000/2003 lässt sich nicht mehr alleine mit einer Kommandozeile sichern. Mehr im folgenden Abschnitt.

Automatisches Sichern mit dem Zeitplaner

Die manuelle Sicherung ist anfangs einfach möglich und der Aufruf einer einzelnen Kommandozeile mag funktionieren, aber eine Backuplösung sollte mehr können. Sie sollte:

Damit all dies funktioniert, sind einige Vorbereitungen und Zwischenschritte notwendig:

Auswahlliste anlegen

Das Windows 2000 Backup unterstützt nur noch den SYSTEMSTATE oder eine BKS-Datei zur Angabe der Quellen. (Siehe auch NTBACKUP /?). Daher müssen wie zuerst eine BKF-Datei anlegen. Dies erfolgt am besten über NTBACKUP selbst.

Brechen Sie den Assistenten ab und wählen sie manuell die einzelnen Quellen:


Klicken zum Vergrößern

mit "Auftrag Speichern" legen Sie diese Auswahl als Datei ab.

Diese Datei wird später beim Aufruf angegeben. Die Datei enthält z.B.:

C:\
C:\System Volume Information\ /Exclude
C:\Programe\Exchsrvr\MDBDATA\ /Exclude
C:\WINNT\System32\spool\printers\ /Exclude
C:\WINNT\System32\wins /Exclude
JET W2003DC\Microsoft Information Store\Erste Speichergruppe\
SystemState

So wird die komplette Festplatte gesichert aber bestimmte Verzeichnisse ausgespart, die nicht gesichert werden müssen oder können. Diese Datei können Sie daher sehr einfach auch manuell erstellen oder anpassen und sichert in diesem Beispiel

Skript anlegen

Da wird nicht nur das Backup starten wolle, sondern auch einige Zusatzfunktionen wünschen, nutzen wir ein Skript zum Start der Sicherung. Das Skript legt eine Protokolldatei für spätere Analysen an und sendet das Ergebnis als Mail.

echo off
cls
echo %DATE% %TIME% BACKUP.CMD: Sicherung startet >> c:\backup.log

NTBACKUP BACKUP "c:\quelle.bks" /J "Exchange Backup" /L:f /M normal /HC:on

echo %DATE% %TIME% BACKUP.CMD: NTBACKUP Ende >> c:\backup.log
echo %DATE% %TIME% BACKUP.CMD: Sicherung Ende >> c:\backup.log

Dies ist ein einfaches Muster und ohne Anpassungen nicht einsetzbar !!. Sie müssen auf jeden Fall als Parameter noch das Bandlaufwerk oder den Pool angeben.

Es steht natürlich jedem frei, eigene Skripte in verschiedenen Sprachen zu entwickeln, die sehr viel ausführlicher die Protokolldatei nach Fehlern durchsuchen und entsprechende Meldungen per SNMP, SMTP, Pager, SYSLOG, EVENTLOG und andere Wege absetzen. Wenn sie ihr Skripte gerne anderen bereit stellen, dann Sie es mir einfach mit einer kurzen Beschreibung oder Dokumentation im Skript, so dass ich es hier mit aufnehme kann oder einen Link zu ihrer Seite mit der Lösung.

Leider stehen die Backup Logs ab Windows 2000 nicht mehr in einer Datei, die mit angegeben werden kann, sondern NTBACKUP erstellt die Logs selbst und legt diese ab. Siehe auch

Damit wird eine Batchauswertung schon etwas aufwändiger.

Task Planen

Mit dem Taskplaner von Windows 2000 wird der Aufruf nun eingestellt. Sie müssen das Skript unbedingt mit einem Benutzerkonto starten lassen, welches ausreichend Rechte aus alle Quellen und das Ziel hat. Und nutzen Sie dazu bitte nicht den Administrator. Sobald sie dessen Kennwort ändern, läuft auch das Backup nicht mehr. Richten Sie daher ein eigenes Dienstkonto für die Sicherung ein. Die Planung erfolgt dann über den Assistenten des Taskplaners.

Auch hierzu gibt es von Microsoft einige Hinweise:

Wiederherstellung

Die Wiederherstellung einer Exchange Sicherung erfolgt normalerweise nicht automatisch, sondern manuell über NTBACKUP oder mit jeder anderen Software, die das Bandformat lesen kann (Veritas BackupExec, ArcServe etc.).

Wenn es ihnen nur um das Restore einer alten Datenbank auf dem produktiven Server geht, dann ist das Vorgehen sehr einfach:

Exchange 2000/2003

Achtung: Wenn Sie wirklich "nur" eine Recovery Storage Group restaurieren wollen, dann sollten Sie diese anlegen und bei den Produktiven Datenbanken die Checkbox "Darf durch Restore überschrieben werden" natürlich nicht setzen.

In der grafischen Oberfläche von NTBACKUP sieht das dann wie folgt aus. Hier habe ich eine Datei anstelle eines Bandes als "Quelle" des Backups genutzt und wähle den Exchange Informationstore aus.

Nun kommt der wichtige Bereich für Exchange: Ich kann hier den Restoreserver angeben, (also den echten Server oder den mit einer Recovery Storage Group) und ich muss ein temporäres Verzeichnis auf dem Zielserver angeben, auf dem NTBACKUP einige zusätzliche Dateien ablegt.

Eine besondere Beachtung sollten Sie hier den beiden Optionen am unteren Rand zukommen lassen.

Nach dem Restore sollte ihre Datenbank wieder online und erreichbar sein. Treten Fehler auf, dann ist ein Blick in das Eventlog der erste Schritt zur Lösung.

Exchange 5.5

Mit Exchange 5.5 ist das Restore etwas abgewandelt durchzuführen. Hier können keine einzelnen Datenbanken gestoppt und gestartet werden.

Ich hier ist im Fehlerfall das Eventlog die erste Anlaufstelle.

Probleme beim Restore sind in der Regel häufig sehr einfach anhand den Meldungen im Eventlog zu lösen. Manchmal fehlen einfach nur Dateien, manchmal Berechtigungen. Leider verbietet die Vielzahl an möglichen Probleme eine genauere Beschreibung. In diesem Fall verweise ich auf ihren qualifizierten Fachhändler, die verschiedenen Newsgroups, Online Handbücher, Produktbeschreibungen etc.

NTBackup und Remote Sicherung

Normalerweise sichern Sie Exchange auf dem Server selbst. Damit NTBACKUP auch die Exchange Datenbanken mit sichern kann, erweiterte das Exchange Installationsprogramm die Funktion von NTBACKUP. Bei Exchange 5.5 wurde sogar NTBACKUP komplett durch eine "Exchange taugliche Version" ersetzt. Bei Exchange 2000/2003 ist die nur mehr eine zusätzlich DLL.

Diese DLL können Sie aber Auch auf einem anderen Server ohne Exchange einspielen, um dann auf diesem Server mit NTBACKUP eine Sicherung eines entfernten Exchange Servers durchführen zu können. Folgende zwei Schritte sind dazu erforderlich:

Windows Registry Editor 5.0

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\BackupRestore\DLLPaths]
"esebcli2" = "c:\exchsrvr\bin\esebcli2.dll"

Sie können natürlich alternativ einfach auf dem Server, auf dem z.B.: das Bandlaufwerk angeschlossen ist und Sie NTBACKUP starten wollen, die Exchange Verwaltungswerkzeuge installieren. (Siehe Exchange System Manager)

NTBackup im Eventlog

Sowohl Exchange als auch NTBackup hinterlassen ihre Spuren im Eventlog. Besonders interessant sind hier die Exchange Meldungen:

Quelle EventID Beschreibung
ESE 220 Information Store (7812) Erste Speichergruppe: Start der Sicherung von Datei D:\exchsrvr\mdbdata\priv1.stm (Größe xx Mb).
ESE 223 Information Store (7812) Erste Speichergruppe: Die Sicherung von Datei D:\exchsrvr\mdbdata\priv1.stm wird beendet.
ESE 224 Information Store (7812) Erste Speichergruppe: Die Protokolldateien D:\exchsrvr\mdbdata\E00000D3.log bis D:\exchsrvr\mdbdata\E00000E9.log werden gelöscht.
ESE 213 Information Store (7812) Erste Speichergruppe: Der Sicherungsvorgang wurde erfolgreich beendet
ESE 210 Beginn einer kompletten Sicherung
ESE 211 Beginn einer inkrementellen Sicherung
ESE 213 Ende der Komplettsicherung
NTBACKUP 8000 Backup beginnt
NTBACKUP 8001 Backup beendet
NTBACKUP 8008 Start des Verify
NTBACKUP 8009 Ende des Verify

Über das Eventlog können Sie unabhängig kontrollieren, ob das Backup erfolgreich war. Das ist aber noch keine Garantie dafür, dass die Daten auch lesbar auf dem Band gelandet sind.

Performance Tuning

Auf der Seite "Backup Process Used with Clustered Exchange Server 2003 Servers at Microsoft" (http://technet.microsoft.com/en-us/library/bb735157.aspx) haben ich einen Hinweis gefunden, wie man NTBackup beschleunigen kann. Der Trick besteht darin, die Buffer zu erhöhen. Folgende REG-Datei stellt die Werte auf die Vorschläge ein. 

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Microsoft\Ntbackup\Backup Engine]
"Max Num Tape Buffers"="16"
"Tape Buffer Size"="1024"
"Logical Disk Buffer Size"="64"

Beachten Sie, dass die Einstellungen in "HKY_CURRENT_USER" erfolgen und nicht in LocalMachine. Sie müssen die Einstellungen also für das verwendete Dienstkonto einstellen.

Links

Keywords:ntbackup Datensicherung