Als hochverfügbar werden Systeme bezeichnet, die eine garantierte Uptime von über 99% haben. Diese Zeiten werden über sog. Service Level Agreements (SLA) vereinbart. Exchange Server 2010 verfügt über die Möglichkeit, jede einzelne der Rollen hochverfügbar bereitstellen zu können. Hochverfügbarkeit geht immer einher mit entsprechenden Kosten. Je höher die Verfügbarkeit umso höher die Kosten, wobei die Kosten ab einem bestimmten Grad der Hochverfügbarkeit exponentiell ansteigen.
Am einfachsten ist Hochverfügbarkeit bei Hub-Transport-Servern umzusetzen. Stellen Sie einfach an jedem Standort mindestens zwei Hub-Transport-Server auf. Eine weitere Konfiguration ist nicht notwendig. Es empfiehlt sich jedoch bei der Planung der Exchange-Server bereits darauf zu achten, dass nur die Rollen Hub-Transport und Client-Access kombiniert werden. Postfach-Server sollten immer auf separaten Servern installiert werden, um Komplikation bei der Bereitstellung von Hochverfügbarkeit der anderen Rollen zu vermeiden.
Edge-Transport-Server sind ebenfalls sehr einfach hochverfügbar zu machen. Sie stellen einfach mehrere Edge-Transport-Server auf. Diese müssen sich auch nicht am selben Standort befinden sondern können an beliebigen Internet-Standorten aufgestellt werden. Die Konfiguration der Edge-Transport-Server können Sie mit den Export-Skripten und die Transportregeln mit dem Cmdlet Export-TransportRuleCollection klonen. Um die Verfügbarkeit gewährleisten zu können, müssen Sie im DNS-Eintrag Ihrer SMTP-Domäne für jeden Edge-Server einen MX-Eintrag anlegen. Dabei haben Sie die Wahl, ob alle MX-Einträge dieselbe oder eine gestaffelte Priorität erhalten.
Die Rolle des Client-Access-Servers kann mit relativ wenig Aufwand hochverfügbar gemacht werden. Es ist dabei jedoch darauf zu achten, dass Sie die Softwarelösung Netzwerklastenausgleich von Microsoft nur verwenden können, wenn auf dem Server nicht zeitgleich das Failover-Cluster-Feature installiert ist. Microsoft empfiehlt jedoch immer die Verwendung einer Hardwarelösung, da die integrierte Softwarelösung lediglich einen Serverausfall und keinen Dienstausfall erkennen kann. Darüber hinaus sind Hardwarelösungen in der Lage, Arrays über mehrere Standorte aufzubauen. Die Softwarelösung dagegen ist Standortgebunden.
Um ein Client-Access-Arrray mit dem Tool Netzwerklastenausgleich von Windows Server einrichten zu können, gehen Sie wie folgt vor:
New-ClientAccessArray –Name <Name> -Fqdn <FQDN d. Clusters> -Site <Standort>
Set-MailboxDatabase –Identity <Name> -RPCClientAccessServer <ArrayName>
Diese Vorgehensweise gilt für Hard- und Softwarebasierte Lastenausgleichslösungen ab Schritt 4. Bezüglich der Konfiguration der von Ihnen gewählten Lösung können die Schritte 1 – 3 abweichen.
Hochverfügbarkeit für Postfachserver basiert auf dem Windows-Feature Failover-Cluster, welches in den Serverversionen Server 2008 Enterprise-Edition oder höher enthalten ist. In Exchange Server 2010 richten Sie dann eine Datenbankverfügbarkeitsgruppe ein. Diese ist nichts anderes als ein Failover-Cluster für Postfachdatenbanken. Zum Erstellen einer Datenbankverfügbarkeitsgruppe gehen Sie wie folgt vor:
New-DatabaseAvailabilityGroup –Name <Name> -DatabaseAvailabilityGroupIpAddress <IP> -WitnessServer <Server> -WitnessDirectory <Verzeichnis>
Add-DatabaseAvailabilityGroupServer –Identity <Name> -MailboxServer <Name>
Nachdem Sie Ihre Datenbankverfügbarkeitsgruppe erstellt und die Postfach-Server als Mitglieder hinzugefügt haben, können Sie die Kopien der Postfachdatenbanken, die auf den Mitgliedern gespeichert sind, einrichten:
Add-MailboxDatabaseCopy –Identity <Name> -MailboxServer <Server> -ActivationPreference <Wert>
Nach dem Einrichten der Datenbankkopie findet ein sog. Seeding statt. Dabei wird die gesamte Datenbank auf den Mailbox-Server kopiert. Nach erfolgreichem Seeding werden nur noch die Transaktionsprotokolle kopiert, die dann von der Datenbankkopie eingespielt werden.
Sie haben beim Einrichten der Datenbankkopie mittels Management Shell die Möglichkeit, eine Wiedergabeverzögerung zu konfigurieren. Dies dient dazu, dass Sie mind. eine Kopie der Datenbank haben, welche die Transaktionsprotokolle verzögert einspielt. Damit können Sie verhindern, dass ein fehlerhaftes Transaktionsprotokoll sämtliche Datenbankkopien beschädigt. Durch die Wiedergabeverzögerung haben Sie die Möglichkeit, dass fehlerhafte Transaktionsprotokoll zu löschen, sodass dieses nicht in die Datenbankkopie eingespielt wird. Diese Vorgehensweise kann aufwendige Backup-Strategien ersetzen und
Ausfallzeiten verringern.
Eine verzögerte Datenbankkopie legen Sie mit dem Parameter –ReplayLagTime <Wert> an. Die Verzögerung kann maximal 14 Tage betragen. Zusätzlich können Sie mit dem Parameter –TruncationLagTime <Wert> festlegen, wann die Transaktionsprotokolle gelöscht werden sollen. Wenn Sie eine verzögerte Datenbankkopie aktivieren möchten, können Sie alle Transaktionsprotokolle einspielen oder festlegen, bis zu welchem Zeitpunkt die Transaktionsprotokolle eingespielt werden sollen. Wenn Sie den Zeitpunkt festlegen möchten, müssen Sie die Transaktionsprotokolle mit Eseutil.exe manuell bearbeiten. Weitere Informationen zur Aktivierung verzögerter Postfachdatenbankkopien finden Sie im Technet unter http://technet.microsoft.com/de-de/library/dd979786.aspx.
Move-ActiveMailboxDatabase –Identity <Name> -ActivateOnServer <Server>
Suspend-MailboxDatabaseCopy –Identity <Name\Server>
Postfachdatenbankkopie fortsetzen
Resume-MailboxDatabaseCopy –Identity <Name\Server>
Sollte eine Datenbankkopie auf einem Postfachserver ein Problem aufweisen und damit verbunden die Bereitstellung der Datenbank fehlschlagen, können Sie ein neues Seeding durchführen.
Update-MailboxDatabaseCopy –Identity <Name\Server> -SourceServer <Server>