Konfigurieren des Clusterquorums für SQL Server auf Azure-VMs

Gilt für: SQL Server auf Azure-VMs

In diesem Artikel wird beschrieben, wie Sie eine der drei Quorumoptionen für einen Windows Server-Failovercluster konfigurieren, der auf einem SQL Server auf Azure-VMs ausgeführt wird – ein Datenträgerzeuge, ein Cloudzeuge und ein Dateifreigabenzeuge.

Übersicht

Das Quorum für einen Cluster wird durch die Anzahl der Abstimmungselemente (Stimmen) bestimmt, die Teil der aktiven Clustermitgliedschaft sein müssen, damit der Cluster ordnungsgemäß gestartet oder weiterhin ausgeführt werden kann. Durch das Konfigurieren einer Quorumressource kann ein Zwei-Knoten-Cluster mit nur einem Knoten online bleiben. Der Windows Server-Failovercluster ist die zugrunde liegende Technologie für die SQL Server auf Azure-VMs mit Hochverfügbarkeitsoptionen: Failoverclusterinstanzen (FCIs) und Verfügbarkeitsgruppen.

Der Diskzeuge ist die resilienteste Quorumoption. Um jedoch einen Diskzeugen auf einem SQL Server auf Azure-VM zu verwenden, müssen Sie eine freigegebene Azure-Disk verwenden, die einige Einschränkungen für die Hochverfügbarkeitslösung mit sich bringt. Verwenden Sie daher einen Datenträgerzeugen, wenn Sie Ihre Failoverclusterinstanz mit freigegebenen Azure-Datenträgern konfigurieren. Verwenden Sie andernfalls nach Möglichkeit einen Cloudzeugen. Wenn Sie Windows Server 2012 R2 oder eine ältere Version verwenden, die keinen Cloudzeugen unterstützt, können Sie einen Dateifreigabenzeugen verwenden.

Die folgenden Quorumoptionen können für SQL Server auf Azure-VMs verwendet werden:

Cloudzeuge Datenträgerzeuge Dateifreigabenzeuge
Unterstütztes Betriebssystem Windows Server 2016+ All Alle

Weitere Informationen zum Quorum finden Sie in der Übersicht über Windows Server-Failovercluster.

Cloudzeuge

Ein Cloudzeuge ist ein Quorumzeugentyp für Failovercluster, der Microsoft Azure zum Bereitstellen einer Stimme für das Clusterquorum verwendet.

Die folgende Tabelle enthält zusätzliche Informationen und Überlegungen zu den Cloudzeugentypen.

Zeugentyp BESCHREIBUNG Anforderungen und Empfehlungen
Cloudzeuge
  • Verwendet Azure Storage als Cloudzeugen und enthält nur den Zeitstempel.
  • Ideal für Bereitstellungen an mehreren Standorten, in mehreren Zonen und in mehreren Regionen.
  • Erstellt unter dem Microsoft-Speicherkonto einen bekannten Container msft-cloud-witness.
  • Schreibt eine einzelne Blobdatei und verwendet dabei die eindeutige ID des entsprechenden Clusters als Dateiname der Blobdatei im Container.
  • Die Standardgröße beträgt 1 MB.
  • Verwenden Sie Universell als Kontoart. Blobspeicher wird nicht unterstützt.
  • Verwenden Sie Standardspeicher. Azure Storage Premium wird nicht unterstützt.
  • Beim Failoverclustering wird die Blobdatei als Vermittlungspunkt verwendet. Dies erfordert einige Konsistenzgarantien beim Lesen von Daten. Wählen Sie daher unter Replikation die Option Lokal redundanter Speicher (LRS) aus.
  • Sollte von Sicherungen und Antivirenscans ausgeschlossen werden
  • Ein Datenträgerzeuge wird von „Direkte Speicherplätze“ nicht unterstützt.
  • Der Cloudzeuge verwendet HTTPS (Standardport 443) für die Kommunikation mit Azure Blob Storage. Stellen Sie sicher, dass per Netzwerkproxy auf den HTTPS-Port zugegriffen werden kann.

Berücksichtigen Sie Folgendes, wenn Sie eine Quorumressource für Cloudzeugen für Ihren Failovercluster konfigurieren:

  • Anstatt den Zugriffsschlüssel zu speichern, generiert Ihr Failovercluster ein Shared Access Security-Token (SAS) und speichert es sicher.
  • Das generierte SAS-Token ist gültig, solange der Zugriffsschlüssel gültig bleibt. Beim Rotieren des primären Zugriffsschlüssels ist es wichtig, zuerst den Cloudzeugen (in allen Clustern, die dieses Speicherkonto verwenden) mit dem sekundären Zugriffsschlüssel zu aktualisieren, bevor der primäre Zugriffsschlüssel neu generiert wird.
  • Der Cloudzeuge verwendet die HTTPS-REST-Schnittstelle des Azure Storage-Kontodiensts. Dies bedeutet, dass der HTTPS-Port auf allen Clusterknoten geöffnet sein muss.

Ein Cloudzeuge benötigt ein Azure Storage-Konto. Führen Sie diese Schritte aus, um ein Speicherkonto zu erstellen:

  1. Melden Sie sich beim Azure-Portal an.
  2. Klicken Sie im Hubmenü auf „Neu“ > „Daten und Speicher“ > „Speicherkonto“.
  3. Gehen Sie auf der Seite „Speicherkonto erstellen“ wie folgt vor:
    1. Geben Sie einen Namen für Ihr Speicherkonto ein. Speicherkontonamen müssen zwischen 3 und 24 Zeichen lang sein und dürfen nur Zahlen und Kleinbuchstaben enthalten. Außerdem muss der Name des Speicherkontos innerhalb von Azure eindeutig sein.
    2. Wählen Sie unter Kontoart die Option Universell aus.
    3. Wählen Sie für Leistung die Option Standard aus.
    4. Wählen Sie unter Replikation die Option Lokal redundanter Speicher (LRS) aus.

Nachdem Ihr Speicherkonto erstellt wurde, führen Sie die folgenden Schritte aus, um die Quorumressource Ihres Cloudzeugen für Ihren Failovercluster zu konfigurieren:

Der vorhandene PowerShell-Befehl „Set-ClusterQuorum“ verfügt über neue Parameter, die dem Cloudzeugen entsprechen.

Sie können den Cloudzeugen mit dem Cmdlet Set-ClusterQuorum konfigurieren, indem Sie den folgenden PowerShell-Befehl verwenden:

Set-ClusterQuorum -CloudWitness -AccountName <StorageAccountName> -AccessKey <StorageAccountAccessKey>

In seltenen Fällen müssen Sie einen anderen Endpunkt verwenden; nutzen Sie hierzu den folgenden PowerShell-Befehl:

Set-ClusterQuorum -CloudWitness -AccountName <StorageAccountName> -AccessKey <StorageAccountAccessKey> -Endpoint <servername>

Weitere Informationen, wie Sie den Zugangsschlüssel des Speicherkontos finden, lesen Sie in der Dokumentation zum Cloudzeugen.

Datenträgerzeuge

Ein Datenträgerzeuge ist ein kleiner Clusterdatenträger in der Gruppe „Verfügbarer Clusterspeicher“. Dieser Datenträger ist hochverfügbar und unterstützt ein Failover zwischen Knoten.

Der Datenträgerzeuge ist die empfohlene Quorumoption, wenn er mit einer Hochverfügbarkeitslösung für freigegebenen Speicher verwendet wird, z. B. die Failoverclusterinstanz mit freigegebenen Azure-Datenträgern.

Die folgende Tabelle enthält zusätzliche Informationen und Überlegungen zum Quorumdatenträgerzeugen.

Zeugentyp BESCHREIBUNG Anforderungen und Empfehlungen
Datenträgerzeuge
  • Dedizierte LUN, die eine Kopie der Clusterdatenbank speichert
  • Besonders für Cluster mit freigegebenem (nicht repliziertem) Speicher geeignet
  • Die Größe der LUN muss mindestens 512 MB betragen
  • Muss für die Clusterverwendung dediziert sein und darf keiner Clusterrolle zugewiesen werden
  • Muss in den Clusterspeicher einbezogen werden und die Speichervalidierungstests bestehen
  • Darf kein Datenträger sein, der ein CSV (freigegebenes Clustervolume) ist
  • Einfacher Datenträger mit einzelnem Volume
  • Laufwerksbuchstabe ist nicht erforderlich
  • Formatierung mit NTFS oder ReFS zulässig
  • Kann für die Fehlertoleranz optional mit Hardware-RAID konfiguriert werden
  • Sollte von Sicherungen und Antivirenscans ausgeschlossen werden
  • Ein Datenträgerzeuge wird von „Direkte Speicherplätze“ nicht unterstützt.

Um einen freigegebenen Azure-Datenträger für den Datenträgerzeugen zu verwenden, müssen Sie zuerst den Datenträger erstellen und einbinden. Führen Sie dazu die Schritte im Abschnitt Datenträger einbinden des Leitfadens „Failoverclusterinstanz für freigegebene Azure-Datenträger“ aus. Die Disk muss keine Premium-Disk sein.

Nachdem Ihr Datenträger eingebunden wurde, fügen Sie ihn dem Clusterspeicher wie folgt hinzu:

  1. Öffne den Failovercluster-Manager
  2. Wählen Sie im linken Navigationsbereich unter Speicher die Option Datenträger aus.
  3. Wählen Sie im rechten Navigationsbereich unter Aktionen die Option Datenträger hinzufügen aus.
  4. Wählen Sie das freigegebene Azure-Laufwerk aus, das Sie gerade eingebunden haben, und notieren Sie sich den Namen, z. B. Cluster Disk 3.

Nachdem Ihr Datenträger als Clusterspeicher hinzugefügt wurde, konfigurieren Sie ihn mithilfe von PowerShell als Datenträgerzeuge:

Der vorhandene PowerShell-Befehl „Set-ClusterQuorum“ verfügt über neue Parameter, die dem Cloudzeugen entsprechen.

Verwenden Sie den Pfad für die Dateifreigabe als Parameter für den Datenträgerzeugen, wenn Sie das PowerShell-Cmdlet Set-ClusterQuorum verwenden:

Set-ClusterQuorum -NodeAndDiskMajority "Cluster Disk 3"

Sie können auch den Failovercluster-Manager verwenden. Führen Sie die gleichen Schritte wie für den Cloudzeugen aus, wählen Sie aber stattdessen den Datenträgerzeugen als Quorumoption aus.

Dateifreigabenzeuge

Ein Dateifreigabezeuge ist eine SMB-Dateifreigabe, die in der Regel auf einem Dateiserver mit Windows Server konfiguriert ist. Dieser Zeuge verwaltet Clusteringinformationen in einer Datei „witness.log“, speichert aber keine Kopie der Clusterdatenbank. In Azure können Sie eine Azure-Dateifreigabe auf einem separaten virtuellen Computer konfigurieren.

Konfigurieren Sie einen Dateifreigabenzeugen, wenn ein Datenträgerzeuge oder Cloudzeuge in Ihrer Umgebung nicht verfügbar oder nicht unterstützt wird.

Die folgende Tabelle enthält zusätzliche Informationen und Überlegungen zu den Quorumdateifreigabenzeugen.

Zeugentyp BESCHREIBUNG Anforderungen und Empfehlungen
Dateifreigabenzeuge
  • SMB-Dateifreigabe, die auf einem Dateiserver konfiguriert ist, der Windows Server ausführt
  • Speichert keine Kopie der Clusterdatenbank
  • Verwaltet Clusterinformationen nur in der Datei "witness.log"
  • Besonders für Cluster mit repliziertem Speicher für mehrere Standorte geeignet
  • Es sind mindestens 5 MB freier Speicherplatz erforderlich
  • Muss dem einzelnen Cluster zugeteilt und nicht zum Speichern von Benutzer- oder Anwendungsdaten verwendet werden
  • Schreibberechtigungen müssen für das Computerobjekt für den Clusternamen aktiviert sein

Nachfolgend sind weitere Überlegungen zu einem Dateiserver aufgeführt, der den Dateifreigabezeugen hostet:
  • Ein einzelner Dateiserver mit Dateifreigabezeugen kann für mehrere Cluster konfiguriert werden.
  • Der Dateiserver muss sich an einem Standort befinden, der von der Clusterarbeitsauslastung getrennt ist. Dadurch haben alle Clusterstandorte bei einer Unterbrechung der Netzwerkkommunikation zwischen den Standorten dieselbe Chance, diesen Zwischenfall zu überstehen. Wenn sich der Dateiserver am gleichen Standort befindet, wird der Standort zum primären Standort. Dies ist dann der einzige Standort, der auf die Dateifreigabe zugreifen kann.
  • Der Dateiserver kann auf einer virtuellen Maschine ausgeführt werden, wenn die virtuelle Maschine nicht auf demselben Cluster gehostet wird, der den Dateifreigabezeugen verwendet.
  • Der Dateiserver kann auf einem separaten Failovercluster konfiguriert werden, um eine hohe Verfügbarkeit zu bieten.

Nachdem Sie Ihre Dateifreigabe erstellt und die Berechtigungen ordnungsgemäß konfiguriert haben, müssen Sie die Dateifreigabe auf Ihren Clusterknoten einbinden. Zum Einbinden der Datenfreigabe führen Sie die gleichen allgemeinen Schritte aus, die in der Schrittanleitung zur Failoverclusterinstanz für Premium-Dateifreigaben im Abschnitt Dateifreigabe einbinden beschrieben sind.

Nachdem Ihre Dateifreigabe ordnungsgemäß konfiguriert und eingebunden wurde, verwenden Sie PowerShell, um die Dateifreigabe als Quorumzeugenressource hinzuzufügen:

Set-ClusterQuorum -FileShareWitness <UNC path to file share> -Credential $(Get-Credential)

Sie werden zur Eingabe eines Kontos und Kennworts für ein lokales Konto (zur Dateifreigabe) aufgefordert, das kein Adminstrationskonto ist, aber über vollständige Administrationsrechte für die Freigabe verfügt. Der Cluster hält den Namen und das Kennwort verschlüsselt und es kann niemand darauf zugreifen.

Sie können auch den Failovercluster-Manager verwenden. Führen Sie die gleichen Schritte wie für den Cloudzeugen aus, wählen Sie aber stattdessen den Dateifreigabenzeugen als Quorumoption aus.

Ändern der Quorumabstimmung

Es ist möglich, die Quorumabstimmung (Stimme) eines Knotens zu ändern, der an einem Windows Server-Failovercluster beteiligt ist.

Wenn Sie die Einstellungen für die Knotenabstimmung (Stimme) ändern, befolgen Sie diese Richtlinien:

Richtlinien zur Quorumabstimmung
Beginnen Sie damit, dass jeder Knoten standardmäßig keine Stimme besitzt. Jeder Knoten sollte nur über eine Stimme verfügen, wenn es dafür eine explizite Begründung gibt.
Aktivieren Sie Stimmen für Clusterknoten, die das primäre Replikat einer Verfügbarkeitsgruppe hosten, oder für die bevorzugten Besitzer einer Failoverclusterinstanz.
Aktivieren Sie Stimmen für Besitzer des automatischen Failovers. Jeder Node, der nach einem automatischen Failover zu einem Host eines primären Replikats oder einer FCI werden könnte, sollte eine Stimme haben.
Wenn eine Verfügbarkeitsgruppe über mehrere sekundäre Replikate verfügt, aktivieren Sie nur Stimmen für die Replikate, die über ein automatisches Failover verfügen.
Deaktivieren Sie die Stimmen für Knoten, die sich an sekundären Standorten für die Notfallwiederherstellung befinden. Knoten an sekundären Standorten sollten nicht zur Entscheidung beitragen, einen Cluster offline zu schalten, wenn mit dem primären Standort alles in Ordnung ist.
Sie verfügen über eine ungerade Anzahl von Stimmen mit mindestens drei Quorumstimmen. Fügen Sie bei Bedarf einen Quorumzeugen für eine zusätzliche Stimme in einem Cluster mit zwei Knoten hinzu.
Bewerten Sie die Stimmenzuweisungen nach einem Failover neu. Es ist nicht wünschenswert, ein Failover in eine Clusterkonfiguration auszuführen, die kein fehlerfreies Quorum unterstützt.

Nächste Schritte

Weitere Informationen finden Sie unter: