Setup von MetaCacheDatabase (MCDB)

Das Feature MetaCacheDatabase (MCDB) ist in Exchange Server 2019 enthalten. Dadurch kann eine Datenbankverfügbarkeitsgruppe (DAG) mithilfe von Solid State Disks (SSDs) beschleunigt werden. Manage-MetaCacheDatabase.ps1ist ein Automatisierungsskript, das für Exchange Server Administratoren zum Einrichten und Verwalten von MCDB-Instanzen in ihren Exchange 2019-DAGs erstellt wurde.

Nach der Installation von Exchange Server 2019 finden Manage-MetaCacheDatabase.ps1 Sie hier: Laufwerk:\Programme\Microsoft\Exchange Server\V15\Scripts. Gehen Sie wie folgt vor, um das Manage-MCDB-CMDLet in Ihrer Exchange-Verwaltungsshell-Sitzung verfügbar zu machen:

cd $exscripts
. .\Manage-MetaCacheDatabase.ps1

Sie verwenden dieses Skript, um MCDB-Voraussetzungen für eine ordnungsgemäß konfigurierte DAG zu konfigurieren, MCDB zu aktivieren oder zu deaktivieren und MCDB auf Ihren Servern zu konfigurieren und zu reparieren.

SSD-Leitfaden

Alle für MCDB verwendeten SSDs müssen die gleiche Kapazität und den gleichen Typ aufweisen. Eine symmetrische Konfiguration zwischen Servern ist erforderlich. Dies bedeutet, dass auf jedem Server eine identische Anzahl von SSDs vorhanden sein muss, und die SSDs müssen alle dieselbe Größe aufweisen.

Hinweis

Das Cmdlet Manage-MCDB funktioniert nur mit Geräten, die von Windows als MediaType SSD verfügbar gemacht werden.

Es wird empfohlen, ein Verhältnis von 1:3 zwischen SSD- und HDD-Geräten pro Server festzulegen. Stellen Sie daher eine SSD für jeweils drei HDDs bereit. Um die Anzahl von HDDs auf dem Server zu vermeiden, sollten Sie die Verwendung von M.2-Formfaktor-SSDs in Betracht ziehen.

Die Bereitstellung von 5 % bis 6 % der SSD-Kapazität im Verhältnis zur Hdd-Gesamtkapazität ist für lokale Bereitstellungen ausreichend. Wenn Ihr Server beispielsweise 100 TB HDD-Kapazität für Postfachdatenbanken enthält, reicht eine Zuordnung von 5 TB bis 6 TB für die SSD-Kapazität aus.

Die verwendeten SSDs sollten für "gemischte Verwendung" geeignet sein und in Bezug auf die Schreibdauer ein Laufwerk pro Tag (DWPD) oder mehr unterstützen.

Voraussetzungen

Für eine erfolgreiche Konfiguration und Verwendung von MCDB sind die folgenden Voraussetzungen erforderlich:

  1. Die DAG ist für AutoReseed konfiguriert.

    Weitere Informationen finden Sie in den folgenden Themen:

  2. RAW-SSD-Laufwerke werden mit der gleichen SSD-Anzahl und -Größe für jeden Server in der DAG installiert. Stellen Sie sicher, dass alle SSDs vollständig leer, unformatiert und nicht schreibgeschützt sind. Um dies zu überprüfen, können Sie DiskPart oder Clear-Disk verwenden.

  3. Exchange Server 2019.

MCDB-Einrichtung

Der Prozess der Einrichtung von MCDB kann in vier grundlegende Schritte unterteilt werden:

  1. Legen Sie die richtigen Werte für die DAG fest, die Sie für MCDB aktivieren möchten.

  2. Aktualisieren Sie die Active Directory-Einstellungen (AD), und warten Sie auf die Weitergabe (durch Ausführen ConfigureMCDBPrerequisitevon ).

  3. Lassen Sie die MCDB-Beschleunigung für jeden Dag-Server zu (indem Sie ausführen ServerAllowMCDB).

  4. Erstellen Sie die erforderliche Infrastruktur (Volumes, Bereitstellungspunkte) für MCDB auf jedem Server (durch Ausführen ConfigureMCDBOnServervon ).

  5. Lassen Sie ein Failover für Datenbanken zu, um die neuen Einstellungen zu übernehmen.

Nach erfolgreicher Ausführung aller vier Schritte beginnt die MCDB-Beschleunigung für jede Datenbank instance mit einem entsprechenden MCDB-instance.

In den folgenden Abschnitten wird beschrieben, wie Sie das Manage-MetaCacheDatabase.ps1 Skript verwenden, um die oben genannten vier Schritte auszuführen.

Schritt 1: Konfigurieren der richtigen Werte für die DAG, für die Sie MCDB aktivieren möchten

Diese DAG-Parameter werden verwendet, um die richtige MCDB-Größe auf Ihren SSD-Laufwerken zu berechnen:

  • AutoDagTotalNumberOfDatabases: Die Anzahl der Datenbanken in Ihrer DAG (z. B. 50).

  • AutoDagDatabaseCopiesPerDatabase: Die Anzahl der aktiven und passiven Kopien, über die jede einzelne Datenbank verfügt.

  • AutoDagTotalNumberOfServers: Die Anzahl der Server in Ihrer DAG, also zwischen 2 und 16.

Beispiel:

Set-DatabaseAvailabilityGroup testdag1 -AutoDagTotalNumberOfDatabases 20 -AutoDagDatabaseCopiesPerDatabase 4 -AutoDagTotalNumberOfServers 8

Schritt 2: Ausführen von Manage-MCDB -ConfigureMCDBPrerequisite

Dieser Parameter legt den Active Directory-Status für das DAG-Objekt fest. Eine vollständige Replikation des Active Directory-Zustands ist erforderlich, damit MCDB auf allen Servern ordnungsgemäß funktionieren kann.

ParameterSetIdentifier:

  • ConfigureMCDBPrerequisite

Parameter:

Parameter Erforderlich Beschreibung
DagName Wahr Name der Datenbankverfügbarkeitsgruppe.
SSDSizeInBytes Wahr Die Kapazität in Bytes für jede SSD auf dem Server, die für MCDB verwendet werden soll.
SSDCountPerServer Wahr Die Anzahl der SSD-Geräte, die für MCDB auf jedem Server verwendet werden sollen.

Bereich:

  • DAG: ConfigureMCDBPrerequisite arbeitet für ein DAG-Objekt.

Hinweis

MCDB nutzt bis zu 95 % der physischen Kapazität einer SSD. Die restlichen 5 % werden freigehalten, um den Aufwand für Dateisysteme und Partitionen sowie eine geringe Menge an zusätzlichem Puffer und Überbereitstellung zu berücksichtigen.

Beispiel:

Manage-MCDB -DagName TestDag1 -ConfigureMCDBPrerequisite -SSDSizeInBytes 5242880000 -SSDCountPerServer 2

MCDB-Konfigurationsvoraussetzungen.

Schritt 3: Ausführen von Manage-MCDB -ServerAllowMCDB

Dieser Befehl legt den lokalen Zustand für jedes DAG-Mitglied so fest, dass MCDB-Auffüllung und Lesebeschleunigung zugelassen bzw. nicht zugelassen werden.

ParameterSetIdentifier:

  • ServerAllowMCDB

Parameter:

Parameter Erforderlich Beschreibung
DagName Wahr Name der Datenbankverfügbarkeitsgruppe.
ServerName Wahr Gibt den Server an, auf dem MetaCacheDatabase aktiviert werden soll.
ForceFailover Optional Dieser boolesche Switch kann verwendet werden, um ein Failover für alle Datenbanken auf einem Server zu bewirken. Dies ist erforderlich, damit alle Konfigurationsänderungen wirksam werden und mcDB verwendet werden kann, nachdem Bereitstellungspunkte und Datenbankinstanzen erfolgreich in Schritt 4: Ausführen von Manage-MCDB -ConfigureMCDBOnServer erstellt wurden. Sie ist auch erforderlich, um die SSD-Beschleunigung zu deaktivieren.

Bereich:

  • Server: Sie müssen ServerAllowMCDB auf jedem Server in der DAG ausführen.

Beispiele:

Manage-MCDB -DagName TestDag1 -ServerAllowMCDB:$true -ServerName "exhs-5046"
Manage-MCDB -DagName TestDag1 -ServerAllowMCDB:$false -ServerName "exhs-5046" -ForceFailover $true

MCDB führt ServerAllowMCDB aus.

Schritt 4: Ausführen von Manage-MCDB -ConfigureMCDBOnServer

Mit diesem Befehl werden unformatierte SSD-Geräte identifiziert und formatiert. Außerdem werden die erforderlichen Bereitstellungspunkte auf einem Server zum Hosten von MCDB-Instanzen erstellt. Dieser Parametersatz kann auch verwendet werden, um Bereitstellungspunkte auf einer unformatierten SSD neu zu erstellen, die hinzugefügt wurde, um eine fehlerhafte SSD zu ersetzen.

ParameterSetIdentifier:

  • ConfigureMCDBOnServer

Parameter:

Parameter Erforderlich Beschreibung
DagName Wahr Name der Datenbankverfügbarkeitsgruppe.
ServerName Wahr Gibt den Server an, auf dem unformatierte SSD-Geräte identifiziert und Bereitstellungspunkte erstellt werden sollen.
SSDSizeInBytes Wahr Dies ist die Kapazität jeder SSD auf dem Server in Bytes, die für MCDB verwendet werden soll.

Bereich:

  • Server: Sie müssen ConfigureMCDBOnServer auf jedem Server in der DAG ausführen.

Beispiel:

Manage-MCDB -DagName TestDag1 -ConfigureMCDBOnServer -ServerName "exhs-4056" -SSDSizeInBytes 5242880000

Führen Sie MCDBOnServer1 aus.

Führen Sie MCDBOnServer2 aus.

Nachdem Sie die drei vorherigen Schritte ausgeführt haben (Konfigurieren von ConfigureMCDBPrerequisite, ServerAllowMCDB und ConfigureMCDBOnServer), wird der MCDB-Status als Storage Offline angezeigt. Dies bedeutet, dass die Umgebung für die Erstellung und Auffüllung von MCDB-Instanzen vorbereitet und bereit ist. Das nächste Failover der Datenbank instance bewirkt, dass die MCDB-instance erstellt und die Beschleunigung aktiviert wird. Die Instanzen durchlaufen die in MCDB-Integritätsstatus angezeigten Integritätszustände.

Sie können den Parametersatz ServerAllowMCDB verwenden, um Failovers aller Datenbankinstanzen auf einem bestimmten Server zu verursachen. Alternativ können Sie das Cmdlet Move-ActiveMailboxDatabase verwenden, um für einzelne Datenbanken ein Failover zu veranlassen.

Manage-MCDB -DagName TestDag1 -ServerAllowMCDB:$true -ServerName "exhs-5046" -ForceFailover $true

MCDB-Integritätsstatus

Verwenden Sie Get-MailboxDatabaseCopyStatus , um den Status der MCDB-Instanzen abzufragen. Es gibt fünf Zustände, in denen sich ein MCDB-instance befinden kann, wie in der folgenden Tabelle gezeigt:

Status Beschreibung
Deaktiviert MCDB ist deaktiviert.
StorageOffline Grundlegende Infrastruktur fehlt oder ist nicht zugänglich, z. B. Bereitstellungspunkte oder Dateipfade. Dies ist der Zustand, in dem sich MCDB nach einem SSD-Fehler befindet.
Offline Fehler auf logischer Ebene, z. B. fehlende MCDB-Instanzen.
Initializing Vorübergehender Zustand: Das System bestimmt, in welchem anderen Zustand es sich befinden soll.
Healthy Bereit für die Bereitstellung von Anforderungen.