Virtualisierung von Exchange Server 2019 in Zeiten von 48 Cores und MetaCache-Datenbank

The English version of this post is published at ENow’s Solution Engine blog.

Keyboard ImageDer virtualisierte Betrieb von Exchange Server ist seit der Einführung von Hypervisor-Plattformen immer wieder Thema für Diskussionen. Oftmals werden diese Diskussionen sehr emotional geführt und die richtigen Argumente für und gegen solch einen Betrieb finden selten Gehör. Das ist meist dann der Fall, wenn das Motto 100% Virtualisierung ausgerufen wurde.

Unabhängig von der Exchange Server Produktversion gibt es für die Planung und den Betrieb virtualisierter Exchange Server einen wichtigen Grundsatz:

Die Anforderungen an Prozessor, Arbeitsspeicher und Datendurchsatz der Festplatten für virtualisierte Exchange Server sind identisch zu den Anforderungen eines Betriebs auf physischen Servern.

Von diesem Grundsatz wird in der Realität immer wieder abgewichen. Abweichung von diesem Grundsatz haben aber automatisch Auswirkungen auf den stabilen und sicheren Betrieb von Exchange Server und erhöhen zusätzlich das Betriebsrisiko.

Empfohlene Betriebsparameter

Mit Exchange Server 2019 haben sich empfohlenen Betriebsparameter für einen stabilen Betrieb, im Vergleich zu den Vorversionen, stark verändert.

Die empfohlene Prozessor-Konfiguration sieht weiterhin eine 2-Sockel-Architektur, allerdings mit insgesamt bis zu 48 Prozessorkernen (Cores) vor. Für den Betrieb eines Exchange Servers mit Postfach-Rolle ist eine Arbeitsspeichergröße von 128GB und für einen Server mit Edge Transport-Rolle eine Arbeitsspeichergröße von 64GB empfohlen.

Ob für Ihre Exchange Server 2019 Umgebung diese empfohlenen Betriebsparameter sinnvoll oder ob andere Betriebsparameter notwendig sind, finden Sie mit Hilfe des Exchange Server 2019 Sizing Calculator heraus. Der Calculator basiert auf einer Excel-Datei, die für Exchange Server 2019 ab dem Kumulativen Update 2 Bestandteil der Exchange Server 2019 ISO-Datei ist. Für Exchange Server 2016 können Sie die Excel-Datei direkt aus dem Microsoft Download Center herunterladen.

Exchange Server 2019, MetaCache Datenbank und Virtualisierung

Die Virtualisierung von Exchange Server 2019 ist, wenn Sie sich nur an den Empfehlungen der Online Dokumentation orientieren, eine Herausforderung. Sie werden zu recht einwenden, dass niemand diesen Empfehlungen folgt, um Exchange Server 2019 produktiv zu betreiben. Meine Gegenfrage ist aber automatisch: Warum folgen Sie diesen Empfehlungen nicht? Die Empfehlungen basieren auf den jahrelangen Erfahrungen der Exchange Produktgruppe mit dem Betrieb von Exchange Server 2019 in großen und hochverfügbaren Umgebungen.

An dieser Stelle sei auch noch einmal darauf hingewiesen, was das Produkt Exchange Server ist: 

Exchange Server ist eine Softwarelösung zur hochverfügbaren und sicheren Bereitstellung einer Massaging-Plattform für Clients und weitere Applikationen.

Vor dem Hintergrund der Empfehlungen für die Prozessor- und Arbeitsspeicherkonfiguration ist eine Virtualisierung von Exchange Server 2019 nicht immer sinnvoll. Wenn Sie eine Datenbankverfügbarkeitsgruppe (DAG) mit der Mindestanforderung von vier Mitgliedsservern konfigurieren, benötigen Sie auch mindestens vier Hypervisor-Host-Systeme. Der gleichzeitige produktive Betrieb von zwei Exchange Servern auf einem Host-System stellt ein beträchtliches Betriebsrisiko dar und ist im Regelbetrieb zu vermeiden.

Für den empfohlenen Betrieb des Exchange Server Gast-Systems müssen Sie in der Hypervisor-Plattform mit fest reservierten Ressourcen für Prozessor und Arbeitsspeicher arbeiten. Sie können bei der CPU-Ressourcenzuweisung zwar ein Verhältnis von 1:2 (pCore : vCore) konfigurieren, jedoch ist dies nur dann sinnvoll, wenn Sie sowohl die CPU-Auslastung des Gast-Systems, als auch des Host-Systems lückelos überwachen. Sobald auf dem Host-System weitere virtuelle Systeme betrieben werden, die eine hohe CPU-Last erzeugen, geht dies automatisch zu Lasten des Exchange Server-Systems.

Bedenken Sie bei der Konfiguration der Ressourcen immer, dass eine auf einem Windows Server betriebene Applikation immer genau die Ressourcen sieht, die das Betriebssystem meldet. Ist ein Server-System mit 24 vCores und 128GB Arbeitsspeicher konfiguriert, so nimmt die Applikation diese Ressourcen auch in Anspruch. Stehen diese Ressourcen bei einer dynamischen Zuweisung durch das Host-System nicht unmittelbar zur Verfügung, kommt es zu spürbaren Leistungsproblemen und zu Appkilationsfehlern.

Neben den Hypervisor-Herausforderungen für CPU-Cores und Arbeitsspeicher ergeben sich ebenso Herausforderungen für die Anbindung der notwendigen Speichermedien. Idealerweise verfügt das Gast-System für Exchange Server 2019 über nur ein, per Laufwerksbuchstaben eingebundenes Volume für das Betriebssystem und die Exchange Server Programmdateien. Alle weiteren Volumes zur Speicherung der Postfachdatenbanken und Protokolldateien werden über Mountpoints eingebunden. Je nach Anzahl der benötigten Volumes und der verwendeten Technologie zur Bereitstellung von Volumes in der Hypervisor-Plattform, stoßen Sie hier an Grenzen. Erschwert wird diese Situation noch dadurch, dass der hochverfügbare Betrieb einer DAG die Nutzung der AutoReseed-Funktion von Exchange Server vorsieht. Die AutoReseed-Funktion erfordert die Einbindung weiterer Volumes durch die Hypervisor-Plattform in das Gast-System.

Die Bereitstellung von leistungsstarkem Datenspeicher ist der neuralgische Punkt einer virtualisierten Exchange Server-Plattform. Für die Bereitstellung des erforderlichen Datenspeichers bieten Ihnen zahlreiche Hersteller die phantasievollsten Lösungen an. In den meisten Fällen handelt es sich um Lösungen, die eine Ersparnis des benötigten Gesamtvolumens für Exchange Server Postfachdatenbanken und Protokolldateien versprechen. Oftmals wird dies durch eine Form der Deduplizierung für die Postfachdatenbanken und Protkolldateien erreicht.

In solchen einem Fall muss Ihnen bewusst sein, dass Sie das Feld eines unterstützen Betriebes von Exchange Server 2019 verlassen. Sie nehmen Exchange Server eine der wichtigsten Funktionen für den Fall eines Desaster, die Datenbankportierbarkeit.

Jede weitere Technologieebene im Betrieb Ihrer Exchange Server-Plattform erhöht die Komplexität und die Zahl der möglichen Fehlerquellen. Hinzu kommt, dass Sie solch einen extern angebunden Datenspeicher immer redundant betreiben müssen, um das allgemeine Betriebsrisiko der Plattform zu minimieren. Bedenken Sie in diesem Zusammenhang auch, dass das Exchange Server Produktteam klassische HDD-Datenträger für die Speicherung von Datendateien empfiehlt, da SSD-Laufwerke nicht die notwendige Zuverlässigkeit und Robustheit aufweisen.

MetaCache-Datenbank

Mit Exchange Server 2019 wurde die Funktion der MetaCache-Datenbank (MCDB) eingeführt. Die Aufgabe der MCDB ist die Beschleunigung des Datenzugriffs auf häufig genutzte Postfachinformationen. Für den optionalen Betrieb einer DAG mit aktivierter MCDB-Funktion sind einige Voraussetzungen zu erfüllen:

  1. Sie müssen Ihre Exchange Server-Systeme in einer DAG-Konfiguration betreiben
  2. Sie müssen die DAG für AutoReseed konfigurieren
  3. Sie müssen für MCDB die passende Anzahl an SSD-Laufwerken bereitstellen

Beim Betrieb einer Exchange Server Plattform mit physikalischen Servern verwenden Sie idealerweise passende M.2 SSD-Laufwerke, die direkt innerhalb des Servers verbaut sind. Auf diese Weise stehen Ihnen mehr Standardsteckplätze für die HDD-Laufwerke der Daten-Volumes zur Verfügung.

Aber wie können Sie von den Vorteilen der MCDB bei einem virtualisierten Betrieb von Exchange Server profitieren?

Wie bereits erwähnt, basiert die Nutzung der MCDB-Funktion auf SSD-Datenträgern. Bei einem Betrieb in einer Hypervisor-Plattform sind immer zusätzlichen Technologieebenen zwischen dem Betriebssystem und dem eigentlichen Datenspeicher, die den Geschwindigkeitsvorteilen einer direkten SSD-Anbindung in einem physikalischen Server entgegenstehen.

In einer Hypervisor-Plattform ist der Betrieb einer MCDB-Konfiguration nicht sinnvoll. Die zusätzlichen Laufwerke, insofern Sie als SSD-Laufwerke bereitgestellt werden können, erhöhen nochtmals die Komplexität der Plattform und erzeugen mit ihren Disk-I/O zusätzliche CPU-Last auf dem Host-System. Damit steigt das Risiko einer Verlangsamung des Datenzugriffs, sobald auf dem gleichen Host-System andere Applikationen mit hohen Systemanforderungen betrieben werden.

Daher ist meine Empfehlung, die MCDB-Funktion von Exchange Server 2019 nur beim Betrieb mit physikalischen Servern zu nutzen.

Der zu Exchange Server 2019 gehörende Role Requirements Calculator unterstützt Sie auch bei der Planung einer MCDB-Implementierung.

Zusammenfassung

Wenn Sie einen virtualisierten Betrieb von Exchange Server 2019 planen, beachten Sie bitte immer die Empfehlungen der Exchange Server Produktgruppe in der Online Dokumentation. Diese Empfehlungen gründen auf den Erfahrungen im täglichen Betrieb von Exchange Server und den Exchange Server Supportfällen, basierend auf sehr individuellen Exchange Server Betriebsarten in Kundenumgebungen.

Achten Sie bei der Virtualisierung von Exchange Server 2019 auf eine möglichst einfache und standardisierte Implementierung. Jede zusätzliche Technologieebene erhöht nicht nur die Komplexität des Betriebs, sondern ist immer auch eine zusätzliche Fehlerdomäne. Vertrauen Sie nicht auf die Versprechen für vermeintlich leistungssteigernde Speicherlösungen für Ihre Exchange Server Systeme, die gerne von Systemhäusern als Allheilmittel angeboten werden.

Der Einsatz der MetaCache-Datenbank ist nur auf physikalischen Servern sinnvoll. Nur dort bietet die MCDB den gewünschten Geschwindigkeitsvorteil als Cache-Speicher zwischen Applikation und den Postfachdatenbanken.

Und vergessen Sie nicht, die Hochverfügbarkeit der Exchange Server 2019 erfolgt, wie bei allen modernen Exchange Server Versionen, auf Applikationsebene.

Und wenn Sie den Betrieb einer Einzelserverinstallation von Exchange Server 2019 planen, so möchte ich Ihnen den Wechsel zu Microsoft 365 und Exchange Online ans Herz legen.

Links

Viel Spaß mit Exchange Server 2019.

%d Bloggern gefällt das: