AlwaysOn-Verfügbarkeitsgruppen für HA und DR

Werbung
AlwaysOn-Architektur: Erstellen einer Hochverfügbarkeits- und
Notfallwiederherstellungslösung unter Verwendung von AlwaysOnVerfügbarkeitsgruppen
Technischer Artikel zu SQL Server
Autoren: Joseph Sack (SQLskills.com), Sanjay Mishra (Microsoft)
Technische Bearbeiter: Lindsey Allen (MS), Juergen Thomas (MS), Mike Weiner (MS),
Prem Mehra (MS), Yorihito Tada (MS), Curt Matthews (MS), Amitabh Tamhane (MS),
Aditya Samant (MS), Daniel Janik (MS), Jimmy May (MS), David P Smith (ServiceU),
Richard Waymire (SolidQ), Brent Ozar (Brent Ozar PLF), Wolfgang Kutschera (bwin.party),
Paul S. Randal (SQLskills.com), Gianluca Hotz (SolidQ), Ayad Shammout (Caregroup)
Content Program Manager: Glenn Minch (Microsoft)
Veröffentlicht: Juni 2012
Betrifft: SQL Server 2012
Zusammenfassung: AlwaysOn-Verfügbarkeitsgruppen in SQL Server 2012 bieten eine
vereinheitlichte HADR (High Availability and Disaster Recovery)-Lösung mit weiterentwickeltem
Funktionsumfang, der in Vorgängerversionen auf mehrere Funktionen verteilt war.
Vor SQL Server 2012 basierten viele Kundenbereitstellungen auf folgendem Konzept:
Datenbankspiegelung für lokale Hochverfügbarkeit innerhalb eines Rechenzentrums und
Protokollversand für die Notfallwiederherstellung in einem Remoterechenzentrum. Ab
SQL Server 2012 kann dieses allgemeine Entwurfsmodell von einer Architektur abgelöst werden,
die Verfügbarkeitsgruppen sowohl für Hochverfügbarkeit als auch für die Notfallwiederherstellung
einsetzt. In diesem Whitepaper werden die wesentlichen Topologieanforderungen dieses
Entwurfsmusters erörtert, einschließlich Überlegungen zur Quorumskonfiguration, einer Anleitung
zum Einrichten der Umgebung und eines exemplarischen Notfallwiederherstellungsereignisses in
der neuen Topologie.
Copyright
Die Informationen werden in ihrem derzeitigen Zustand zur Verfügung gestellt. Die in diesem Dokument
enthaltenen Angaben und Ansichten, einschließlich URLs und anderer Verweise auf Internetwebsites,
können ohne vorherige Ankündigung geändert werden. Ihnen obliegt das Risiko der Verwendung.
Einige der in diesem Dokument dargestellten Beispiele werden nur zu Illustrationszwecken bereitgestellt
und sind fiktiv. Ähnlichkeiten mit realen Gegebenheiten sind weder beabsichtigt noch erwünscht.
Mit diesem Dokument erwerben Sie keine Rechte an geistigem Eigentum in Microsoft-Produkten.
Sie können dieses Dokument zu internen Zwecken und als Referenz kopieren und verwenden.
© 2012 Microsoft. Alle Rechte vorbehalten.
2
Inhalt
Einführung..................................................................................................................................................... 4
Älteres Architekturmodell: Datenbankspiegelung für HA und Protokollversand für DR ............................. 4
AlwaysOn-Verfügbarkeitsgruppen für HA und DR........................................................................................ 5
Planung und Überlegungen zur Bereitstellung ............................................................................................. 6
Topologieanforderungen .......................................................................................................................... 6
Failovereinheit .......................................................................................................................................... 7
Alternativen zum Protokollversand .......................................................................................................... 7
Quorummodell und Knotenstimmen........................................................................................................ 7
Tools zur Anzeige oder zum Ändern von Quorummodell und Knotenstimmen................................... 9
Konfigurieren des WSFC-Quorummodells .......................................................................................... 10
Verwenden von DMVs und AlwaysOn-Dashboard zum Anzeigen von Quoruminformationen ......... 10
Konfigurieren von Knotenstimmen..................................................................................................... 12
Clientkonnektivität.................................................................................................................................. 13
Verbindungszeichenfolgen für ältere Datenbankspiegelungslösungen ............................................. 13
Verfügbarkeitsgruppenlistener ........................................................................................................... 13
Unterstützung für Multisubnetz-Verbindungen ................................................................................. 13
Erstellen der Verfügbarkeitsgruppenlösung ............................................................................................... 14
Überlegungen zur Überwachung ................................................................................................................ 20
Wiederherstellung nach einem Notfall....................................................................................................... 21
Wiederinbetriebnahme des primären Rechenzentrums ............................................................................ 25
Schlussfolgerung ......................................................................................................................................... 28
Referenzmaterial ........................................................................................................................................ 28
Anhang A: HA/DR-Beispiel mit Verfügbarkeitsgruppen und 3 Rechenzentren .......................................... 29
3
Einführung
Microsoft SQL Server 2012 AlwaysOn bietet Kunden flexible Entwurfsoptionen zur Auswahl der richtigen
Strategie für eine Hochverfügbarkeits- und Notfallwiederherstellungslösung (High Availability, HA +
Disaster Recovery, DR). SQL Server 2012 unterstützt mehrere Entwurfsmuster zum Umsetzen einer
HA+DR-Lösung mit AlwaysOn-Technologie. Dieses Whitepaper beschreibt eine Lösung, die HA und DR über
AlwaysOn-Verfügbarkeitsgruppen implementiert. Die Lösung basiert ausschließlich auf nicht freigegebenem
Speicher, da jede SQL Server-Instanz in der Topologie über einen eigenen Satz von Daten verfügt und
keinen Speicher gemeinsam nutzen muss. Weitere Informationen zu anderen Entwurfsoptionen finden
Sie unter SQL Server 2012 AlwaysOn-Entwurfsmuster für Hochverfügbarkeit und Notfallwiederherstellung.
Vor SQL Server 2012 zeichnete sich eine gängige HA- und DR-Architektur durch zwei Mechanismen
aus: Datenbankspiegelung für lokale Hochverfügbarkeit und Protokollversand für die RemoteNotfallwiederherstellung. Ab SQL Server 2012 können Verfügbarkeitsgruppenlösungen mit mehreren
sekundären Replikaten die Vorgängerlösung mit Datenbankspiegelung und Protokollversand ablösen.
Dieses Whitepaper enthält Überlegungen zur Planung und führt Sie durch die Schritte zum Erstellen von
Verfügbarkeitsgruppen, die Sie bei der Umsetzung Ihrer HA- und DR-Ziele unterstützen. Außerdem
erfahren Sie hier, welche Schritte Sie zur Notfallwiederherstellung ausführen und wie Sie den Betrieb
des primären Rechenzentrums nach der Wiederherstellung wiederaufnehmen.
Dieses Dokument setzt Grundkenntnisse über AlwaysOn-Verfügbarkeitsgruppen, Hochverfügbarkeit
und Notfallwiederherstellung voraus. Weitere Informationen zum vollständigen Funktionsumfang
von AlwaysOn-Lösungen finden Sie im Whitepaper Microsoft SQL Server AlwaysOn-Lösungen für
Hochverfügbarkeit und Notfallwiederherstellung. Dieses Whitepaper richtet sich an Administratoren
und Technologiearchitekten operationaler SQL Server-Datenbanken. Auch Systemadministratoren, die
gemeinsam mit Datenbankadministratoren Windows Server, Active Directory-Domänendienste (AD DS),
Windows Server-Failovercluster (WSFC) und Netzwerkfunktionen verwalten, profitieren von diesem
Whitepaper.
Älteres Architekturmodell: Datenbankspiegelung für HA und
Protokollversand für DR
Vor SQL Server 2012 basierte eine typische SQL Server-Kundenlösung auf der folgenden Architektur:
Datenbankspiegelung für Hochverfügbarkeit innerhalb des primären Rechenzentrums und Protokollversand
für die Notfallwiederherstellung zwischen Rechenzentren. Bei dieser Lösung wird die Datenbankspiegelung
innerhalb des primären Rechenzentrums konfiguriert. Für das automatische Failover wird die synchrone
Datenbankspiegelung mit einem Zeugen (d. h. einer dritten SQL Server-Instanz) konfiguriert.
Wenn Datenverluste nicht tolerierbar sind, gewährleistet die (synchrone) Datenbankspiegelung
im Hochsicherheitsmodus, dass zwischen den beiden Servern im primären Rechenzentrum keine
Daten verloren gehen. Um die Datenbankverfügbarkeit innerhalb des primären Rechenzentrums
zu verbessern, wird eine dritte SQL Server-Instanz als Zeuge konfiguriert, um automatische Failover
zwischen den Datenbank-Spiegelungspartnern zu ermöglichen.
4
Wenn beim Ausfall eines primären Rechenzentrums beide Datenbank-Spiegelungspartner unerreichbar
sind, wird anhand des Protokollversands eine Notfallwiederherstellung durchgeführt. Beim Protokollversand
werden die Transaktionsprotokolle der Prinzipaldatenbank fortlaufend gesichert. Anschließend werden
diese Transaktionsprotokollsicherungen auf eine SQL Server-Instanz im DR-Rechenzentrum kopiert.
Eingehende Transaktionsprotokollsicherungen werden der Reihe nach fortlaufend wiederhergestellt.
Sie können den Protokollversand auch nur für Leseoperationen konfigurieren. Das hat jedoch den
Nachteil, dass schreibgeschützte Verbindungen getrennt werden müssen, bevor eingehende
Transaktionsprotokollsicherungen repliziert werden. Abbildung 1 zeigt Architektur dieser Lösung.
Abbildung 1: Datenbankspiegelung für HA und Protokollversand für DR
Weitere Informationen und ein Praxisbeispiel finden Sie in der technischen Fallstudie Hohe
Verfügbarkeit und Notfallwiederherstellung für die Microsoft SAP Data-Tier: eine technische
SQL Server 2008-Fallstudie.
AlwaysOn-Verfügbarkeitsgruppen für HA und DR
AlwaysOn-Verfügbarkeitsgruppen können die zuvor beschriebene Lösung, die auf Datenbankspiegelung
und Protokollversand basiert, ersetzen. Die Verwendung von Verfügbarkeitsgruppen sowohl für
Hochverfügbarkeit als auch für Notfallwiederherstellung bietet die folgenden Vorteile:



5
Mehrere Benutzerdatenbanken können in einer Failovereinheit gruppiert werden. Im Gegensatz
dazu unterstützt die Datenbankspiegelung nur eine Benutzerdatenbank als Failovereinheit.
Verfügbarkeitsgruppen mit mehreren sekundären Replikaten ermöglichen die Umsetzung einer
einheitlichen HA- und DR-Lösung auf der Basis einer einzelnen Technologie, anstatt wie in der
früheren Lösung mehrere Technologien einzubinden.
Sekundäre Replikate können auch so konfiguriert werden, dass sie Leseoperationen zulassen,
um Daten nahezu in Echtzeit auszuschöpfen. Im Unterschied zum Protokollversand müssen
bestehende schreibgeschützte Verbindungen mit sekundären Replikaten nicht getrennt werden,
um kontinuierliche Datenänderungen gegenüber dem primären Replikat sichtbar zu machen.
Sekundäre Replikate können auch verwendet werden, um vollständige Datenbank- und
Transaktionsprotokollsicherungen auszulagern.

Verfügbarkeitsgruppen und der zugeordnete Verfügbarkeitsgruppenlistener unterstützen
die automatische Clientumleitung zum primären Replikat oder die Umleitung zu verfügbaren
lesbaren sekundären Replikaten. Verfügbarkeitsgruppenlistener bieten den Vorteil, dass in der
Clientverbindungszeichenfolge kein Failoverpartner mehr angegeben werden muss.
Abbildung 2 zeigt die HA- und DR-Lösung unter Verwendung von Verfügbarkeitsgruppen.
DR-Rechenzentrum
Primäres Rechenzentrum
Windows Server-Failovercluster (einzelner WSFC über zwei Rechenzentren)
SQL Server
SQL Server
Sekundär
SQL Server
Primär
Sekundär
Synchron
Asynchron
Verfügbarkeitsgruppe
Abbildung 2: Verwenden von Verfügbarkeitsgruppen für HA und DR
Wie in Abbildung 2 dargestellt, gehören die drei Knoten (auf denen jeweils eine SQL Server-Instanz läuft)
einem einzigen Windows Server-Failovercluster (WSFC) an, der sich über zwei Rechenzentren erstreckt.
Es ist darauf hinzuweisen, dass es sich um eine Lösung mit nicht freigegebenem Speicher handelt und
dass die Knoten untereinander keinen Speicher zusammen mit anderen Knoten nutzen. Auf jedem
Knoten wird eine Instanz von SQL Server ausgeführt, die über einen eigenen Satz an Daten verfügt.
Hinweis: Abbildung 2 zeigt ein einfaches Szenario mit zwei Rechenzentren: das primäre
Rechenzentrum hostet zwei Replikate, während das DR-Rechenzentrum ein Replikat hostet.
Die Architektur lässt auch Abwandlungen dieser Topologie zu, indem mehrere Rechenzentren
und (bis zu 5) Replikate verwendet werden können. Der Schwerpunkt dieses Whitepapers liegt
auf der in Abbildung 2 dargestellten Topologie. Grundsätzlich gelten die allgemeinen
Ausführungen jedoch auch für Abwandlungen dieser Topologie. Eine alternative Konfiguration
mit drei Rechenzentren wird in Anhang A erörtert.
Planung und Überlegungen zur Bereitstellung
In den nächsten Abschnitten werden die zentralen Planungsüberlegungen, Anforderungen und
Voraussetzungen, die der Bereitstellung von Verfügbarkeitsgruppen für HA und DR vorausgehen,
ausführlich erörtert.
Topologieanforderungen
Bevor Sie eine HA+DR-Lösung unter Verwendung von Verfügbarkeitsgruppen umsetzen, müssen Sie
die Voraussetzungen und Einschränkungen genau verstehen. Weitere Informationen finden Sie unter
Voraussetzungen, Einschränkungen und Empfehlungen für AlwaysOn-Verfügbarkeitsgruppen (SQL Server).
6
Failovereinheit
In dieser HA+DR-Lösung fungiert eine Verfügbarkeitsgruppe (eine Gruppe von Benutzerdatenbanken)
als Failovereinheit. SQL Server-Agent-Aufträge, Anmeldenamen, Verbindungsserver und andere Objekte,
die außerhalb der Verfügbarkeitsdatenbanken gespeichert sind, werden beim Failover der
Verfügbarkeitsgruppe nicht berücksichtigt. Eigenständige Datenbanken sind eine Möglichkeit, um
Anmeldenamen beim Failover zwischen Verfügbarkeitsreplikaten mitzunehmen. Für andere Objekte,
die sich außerhalb der Benutzerdatenbank befinden, z. B. SQL Server-Agent-Aufträge, Verbindungsserver
und SQL Server Integration Services-Pakete, sind zur Synchronisierung mehrerer SQL Server-Instanzen
zusätzliche Schritte erforderlich.
Alternativen zum Protokollversand
Wenn Sie eine frühere Lösung mit Protokollversand durch eine Verfügbarkeitsgruppenlösung ersetzen,
sind folgende Punkte zu berücksichtigen:


Der Verzicht auf den Protokollversand bedeutet auch, dass Sicherungen nicht verzögert
auf sekundäre Replikate kopiert werden können. Die Protokolldatensätze des
Verfügbarkeitsgruppenreplikats werden sofort repliziert, und das vom Protokollversand bekannte
verzögerte Kopieren wird für Verfügbarkeitsgruppen nicht unterstützt. Wenn diese Funktion
ein wichtiger Bestandteil Ihrer alten Lösung war, müssen Sie eine Alternative suchen oder
den Protokollversand zusammen mit Ihrer Verfügbarkeitsgruppenlösung implementieren.
Der Wegfall des Protokollversands bedeutet auch, dass keine regelmäßigen Protokollsicherungen
mehr erstellt werden. Verfügbarkeitsgruppen sind kein Ersatz für eine Sicherungs- und
Wiederherstellungsstrategie. Sie müssen die regelmäßige Protokollsicherung als separaten
Prozess für Verfügbarkeitsgruppen einrichten, um die notwendige fortlaufende Aktualisierung
des Transaktionsprotokolls für jede Verfügbarkeitsdatenbank in der Verfügbarkeitsgruppe
sicherzustellen.
Quorummodell und Knotenstimmen
Hinweis: Das Quorum und verwandte Themen in diesem Whitepaper beziehen sich auf eine
Lösung, die unter den Betriebssystemen Windows Server 2008 und Windows Server 2008 R2
inklusive relevanter Softwareupdates ausgeführt wird.
Ein WSFC-Cluster bildet die Infrastruktur einer Verfügbarkeitsgruppe. Deshalb muss das geeignete
Quorummodell für den WSFC-Cluster ausgewählt werden. Die Quorumkonfiguration wird auf der WSFCEbene verwaltet, unabhängig von der Anzahl der Replikate und Verfügbarkeitsgruppen, die im WSFCCluster gehostet werden.
WSFC unterstützt vier Quorummodelle. Allerdings sind nicht alle Quorummodelle für die hier besprochene
Lösung mit nicht freigegebenem Speicher geeignet. Insofern sind Quorummodelle, die auf freigegebenen
Datenträgern basieren (Knoten- und Datenträgermehrheit, Keine Mehrheit: Nur Datenträger) nicht
anwendbar. Demnach sind für die hier vorgestellte Lösungsarchitektur zwei Quorummodelle denkbar:
"Knoten- und Dateifreigabemehrheit" oder "Knotenmehrheit". Weitere Informationen zu den vier
Quorummodellen finden Sie unter Schrittweise Anleitung für Failovercluster: Konfigurieren des
Quorums in einem Failovercluster.
7
Bevor Sie ein Quorummodell auswählen, müssen Sie Überlegungen zur Anzahl der stimmberechtigten
Knoten anstellen. Das Zuweisen der Knotenstimmen nimmt einen wichtigen Teil im HA+DR-Entwurfsmodell
ein. Standardmäßig verfügt jeder Knoten in einem WSFC-Cluster über eine Stimme, was aber nicht für
jede HA+DR-Lösung geeignet sein muss, je nachdem, wie die Knoten im primären und DR-Rechenzentrum
verteilt sind. Ein Windows Server-Hotfix (http://support.microsoft.com/kb/2494036) kann verwendet
werden, um einigen Knoten im WSFC-Cluster 1 Stimme und anderen Knoten 0 Stimmen zuzuweisen.
Die NodeWeight-Eigenschaft des WSFC-Knotens repräsentiert die Stimme des betreffenden Knotens.
Der Wert "0" bedeutet, dass der Knoten keine Stimme hat. Der Wert "1" bedeutet, dass der Knoten
eine Quorumsstimme hat. Das Hotfix muss auf jedem Knoten in der Topologie installiert werden.
Allgemeine Empfehlungen für die Quorumabstimmung in einer AlwaysOn HA+DR-Lösung finden Sie
im Abschnitt Empfohlene Anpassungen an der Quorumabstimmung unter WSFC-Quorummodi und
Abstimmungskonfiguration in der SQL Server-Onlinedokumentation. Diese sollten bei der Auswahl des
Abstimmungsschemas für die AlwaysOn-Lösung als Richtschnur gelten. Unter Berücksichtigung dieser
Richtlinien ergibt sich für die in Abbildung 2 dargestellte HA+DR-Lösung auf der Basis von
Verfügbarkeitsgruppen das folgende Abstimmungsschema:


1 Stimme für jeden Knoten im primären Rechenzentrum
0 Stimmen für den Knoten im DR-Rechenzentrum
Durch die Stimmenzuweisung stellen Sie sicher, dass das Quorum der Knoten im primären Rechenzentrum
nicht durch Ausfälle des DR-Rechenzentrums oder unterbrochene Verbindungen zwischen den beiden
Rechenzentren beeinträchtigt wird.
Wenn Sie über eine ungerade Anzahl stimmberechtigter Knoten verfügen, ist das Quorummodell
"Knotenmehrheit" die beste Wahl. Da die in diesem Whitepaper erörterte Topologie über eine gerade
Zahl stimmberechtigter Knoten verfügt (die beiden Knoten im primären Rechenzentrum), stehen die
beiden folgenden Optionen zur Auswahl:

Fügen Sie dem WSFC-Cluster im primären Rechenzentrum einen zusätzlichen stimmberechtigten
Knoten hinzu, und verwenden Sie dann das Quorummodell "Knotenmehrheit". Es ist nicht
erforderlich, SQL Server auf diesem zusätzlichen Knoten zu installieren, und er muss kein Replikat der
Verfügbarkeitsgruppe sein. Diese Konfiguration mit den entsprechenden stimmberechtigten
Knoten ist in Abbildung 3 dargestellt (die Zuweisung von Knotenstimmen wird an späterer Stelle
in diesem Whitepaper erörtert).
DR-Rechenzentrum
Primäres Rechenzentrum
Windows Server-Failovercluster (einzelner WSFC über zwei Rechenzentren)
SQL Server
SQL Server
KEINE
STIMME
STIMME
STIMME
Sekundär
Primär
SQL Server
Sekundär
Synchron
Asynchron
Verfügbarkeitsgruppe
STIMME
Zusätzlicher Server für
Quorummodell mit
Knotenmehrheit
Abbildung 3: Zuweisung von Knotenstimmen für die Bereitstellung einer HA+DR-Verfügbarkeitsgruppenlösung mit
dem Quorummodell "Knotenmehrheit"
8
Verwenden Sie das Quorummodell "Knoten- und Dateifreigabemehrheit" mit einem geschützten
Dateifreigabezeugen. Die Dateifreigabe liefert eine zusätzliche Stimme zur Schaffung des Quorums und
enthält keine SQL Server-Daten. Diese Konfiguration mit den entsprechenden stimmberechtigten
Knoten ist in Abbildung 4 dargestellt.
DR-Rechenzentrum
Primäres Rechenzentrum
Windows Server-Failovercluster (einzelner WSFC über zwei Rechenzentren)
SQL Server
SQL Server
STIMME
STIMME
Primär
Sekundär
KEINE
STIMME
SQL Server
Sekundär
Synchron
Asynchron
Verfügbarkeitsgruppe
STIMME
Dateifreigabe
Abbildung 4: Zuweisung von Knotenstimmen für die Bereitstellung einer HA+DR-Verfügbarkeitsgruppenlösung mit
dem Quorummodell "Knoten- und Dateifreigabemehrheit"
Beachten Sie, dass sich der Dateifreigabezeuge außerhalb des WSFC-Clusters befindet, der die
Verfügbarkeitsgruppe hostet. Eine bestimmte Dateifreigabe kann als Zeuge für einen oder mehrere
WSFC-Cluster auftreten. Der Dateifreigabezeuge (falls verwendet) zählt immer als eine Stimme.
Es ist nicht zulässig, einem Dateifreigabezeugen 0 Stimmen zuzuweisen.
Bei dem Quorummodell und den Stimmenzuweisungen in Abbildung 3 und 4 wird davon ausgegangen,
dass Sie über drei Replikate (ein primäres und zwei sekundäre Replikate) der Verfügbarkeitsgruppe
verfügen (zwei Replikate im primären Rechenzentrum und ein Replikat im DR-Rechenzentrum). Wenn
Sie über eine abweichende Anzahl von Knoten und Replikaten verfügen, kann die Stimmenzuweisung
geringfügig abweichen. Die grundlegenden Prinzipien sind jedoch weiterhin gültig. Wenn Sie
beispielsweise über ein zusätzliches Replikat im primären Rechenzentrum verfügen (z. B. um Leseund Sicherungsoperationen auszulagern), ergibt sich eine Gesamtzahl von drei Knoten im primären
Rechenzentrum. Folglich kann das Quorummodell "Knotenmehrheit" verwendet werden, ohne dass
der zusätzliche Knoten (vgl. Abbildung 3) oder der Dateifreigabezeuge (vgl. Abbildung 4) erforderlich ist.
In diesem Szenario weisen Sie außerdem jedem Knoten im primären Rechenzentrum eine (1) Stimme
zu und dem Knoten im DR-Rechenzentrum null (0) Stimmen.
Bei dem Quorummodell und den Stimmenzuweisungen in Abbildung 3 und 4 wird zusätzlich davon
ausgegangen, dass sich die Lösung über zwei Rechenzentren erstreckt. Wenn Sie über weitere
Rechenzentren verfügen und einen Teil der Lösung in ein drittes Rechenzentrum verlagern möchten,
können ein anderes Quorummodell und eine andere Stimmenzuweisung in Betracht kommen.
Tools zur Anzeige oder zum Ändern von Quorummodell und Knotenstimmen
Es gibt mehrere Möglichkeiten, das Clusterquorummodell und die Quorumsstimmen anzuzeigen und
zu ändern. In den folgenden Tabellen sind die verschiedenen Tools für diese Aufgaben aufgeführt.
9
Anzeigen des Quorummodells
Windows-Failovercluster-Manager
Windows PowerShell
Cluster.exe
Dynamische SQL Server-Verwaltungssichten
(DMVs)
AlwaysOn-Dashboard in SQL Server
Management Studio
Anzeigen von Knotenstimmen
Windows PowerShell
Cluster.exe
Dynamische SQL Server-Verwaltungssichten
(DMVs)
AlwaysOn-Dashboard
Ändern des Quorummodells
Windows-Failovercluster-Manager
Windows PowerShell
Cluster.exe
Ändern von Knotenstimmen
Windows PowerShell
Cluster.exe
Konfigurieren des WSFC-Quorummodells
Es folgen Beispiele für die Verwendung von Windows PowerShell über die Befehlszeile, um das aktuelle
Quorummodell anzuzeigen und zu ändern.
Anzeigen des vorhandenen Quorummodells
Get-ClusterQuorum
Konfigurieren des Quorummodells "Knotenmehrheit"
Set-ClusterQuorum -NodeMajority
Ändern des Quorummodells in "Knoten- und Dateifreigabemehrheit"
Set-ClusterQuorum -NodeAndFileShareMajority \\EMU-DC\Witness
Die ausgewählte Zeugendateifreigabe darf sich nicht auf einem Knoten befinden, der bereits Teil der
AlwaysOn-WSFC-Konfiguration ist. Er kann jedoch als Freigabe in einer anderen WSFC-Konfiguration
platziert sein und muss sich in derselben Active Directory-Domäne wie der WSFC-Cluster befinden.
Außerdem benötigt das WSFC-Clusterdienstkonto Lese- und Schreibberechtigungen für den
Dateifreigabezeugen. Der Failovercluster-Manager verfügt über eine integrierte Logik, um dem
Dateifreigabezeugen diese Berechtigungen hinzuzufügen. Das funktioniert jedoch nur, solange das
Administratorkonto, über das das Quorummodell geändert wird, über Berechtigungen für die
Dateifreigabe verfügt.
Verwenden von DMVs und AlwaysOn-Dashboard zum Anzeigen von Quoruminformationen
Weder Quorummodell noch Knotenstimmen können mithilfe von SQL Server-Tools festgelegt oder
geändert werden. Ihnen stehen jedoch Transact-SQL-Abfragen für DMVs und das AlwaysOn-Dashboard
in SQL Server Management Studio zur Verfügung, um die Knotenstimmen und das Quorummodell des
Windows-Clusters, der die Verfügbarkeitsgruppe hostet, anzuzeigen.
Um das Quorummodell des Windows-Clusters anzuzeigen, der die Verfügbarkeitsgruppe hostet, führen
Sie die DMV-Abfrage sys.dm_hadr_cluster aus.
10
SELECT
FROM
cluster_name, quorum_type_desc, quorum_state_desc
sys.dm_hadr_cluster;
Wenn die Abfrage in der Beispielumgebung dieses Whitepapers ausgeführt wird, gibt sie das folgende
Resultset zurück.
cluster_name
-----------EMU-AGClstr
quorum_type_desc
---------------NODE_AND_FILE_SHARE_MAJORITY
quorum_state_desc
----------------NORMAL_QUORUM
Um die Knotenstimmen anzuzeigen, führen Sie die DMV-Abfrage sys.dm_hadr_cluster_members aus.
SELECT
FROM
member_name, number_of_quorum_votes
sys.dm_hadr_cluster_members;
Wenn die Abfrage in der Beispielumgebung dieses Whitepapers ausgeführt wird, gibt sie das folgende
Resultset zurück. (Die Stimmenzuweisung wird in einem späteren Abschnitt erläutert.)
Member_name number_of_quorum_votes
----------- ---------------------EMU-SQL1
1
EMU-SQL2
1
EMU-SQL3
0
FSWitness
1
Das AlwaysOn-Dashboard in SQL Server Management Studio kann auch verwendet werden, um
Quorumsstimmen und den Clusterstatus anzuzeigen. Abbildung 5 zeigt diese Informationen für einen
Windows-Cluster mit dem Quorummodell "Knotenmehrheit" an (Clusterstatus und Quorumsstimmen
sind markiert).
Abbildung 5: Anzeigen von Quorumsstimmen und Clusterstatus im AlwaysOn-Dashboard für das Quorummodell
"Knotenmehrheit"
11
Obwohl die Spalte Quorumsstimmen standardmäßig nicht angezeigt wird, können Sie sie dem
Dashboard hinzufügen, indem Sie mit der rechten Maustaste auf Verfügbarkeitsreplikat klicken und
dann eine bestimmte Spalte zur Anzeige auswählen.
Beim Quorummodell "Knoten- und Dateifreigabemehrheit" enthält die AlwaysOn-Dashboardansicht nur
die Knoten, aber nicht die Dateifreigabe. Um die vollständigen Quoruminformationen zu sehen, klicken
Sie auf der rechten Seite auf Informationen zum Clusterquorum anzeigen. Ein mit Abbildung 6
vergleichbares Popupfenster wird angezeigt.
Abbildung 6: Clusterquoruminformationen für das Quorummodell "Knoten- und Dateifreigabemehrheit"
Konfigurieren von Knotenstimmen
Die NodeWeight-Eigenschaft des WSFC-Knotens repräsentiert die Stimme des betreffenden Knotens.
Die folgenden Beispiele zeigen, wie die "NodeWeight"-Einstellung eines Knotens in einem WSFC-Cluster
mithilfe von Windows PowerShell konfiguriert wird. Zum Ausführen von Windows PowerShell auf dem
Serverknoten klicken Sie auf Start, zeigen auf Verwaltung und klicken dann auf Windows PowerShellModule. In diesem Beispiel steht EMU-SQL3 für einen bestimmten WSFC-Knoten im sekundären
Rechenzentrum.
Anzeigen aktueller Einstellungen für alle Knotenstimmen
Get-ClusterNode | fl NodeName, NodeWeight
Festlegen der Stimme eines Knotens auf "0"
(Get-ClusterNode "EMU-SQL3").NodeWeight=0
Hinweis: Der Wert "0" bedeutet, dass der Knoten keine Stimme hat. Der Wert "1" bedeutet,
dass der Knoten eine Quorumsstimme hat.
12
Clientkonnektivität
Dieser Abschnitt fasst die Überlegungen zur Clientkonnektivität zusammen, die beim Umstieg auf eine
Verfügbarkeitsgruppenlösung wichtig sind. Weitere Informationen zu Clientkonnektivität und
Anwendungsfailover finden Sie unter Clientkonnektivität und Anwendungsfailover (AlwaysOnVerfügbarkeitsgruppen).
Verbindungszeichenfolgen für ältere Datenbankspiegelungslösungen
Wenn Sie Anwendungsverbindungen von einer älteren Datenbankspiegelungslösung migrieren, die das
Failoverpartner-Attribut verwendet, können Sie die Verbindungszeichenfolge für die Datenbankspiegelung
nur weiter verwenden, wenn die Verfügbarkeitsgruppe mit einem einzelnen sekundären Replikat
konfiguriert ist. Das sekundäre Replikat kann nicht für Leseoperationen aktiviert werden. Sie können
den anfänglichen Partnerservernamen und optional den Failoverpartnernamen angeben. Dies ist jedoch
nicht als langfristige Lösung gedacht und als Umgehungslösung für die in diesem Whitepaper vorgestellte
Bereitstellungslösung nicht geeignet, weil für dieses spezielle Entwurfsmodell mindestens drei Replikate
(ein primäres Replikat und zwei sekundäre Replikate) erforderlich sind.
Verfügbarkeitsgruppenlistener
Bei Verfügbarkeitsgruppen können Sie einen Verfügbarkeitsgruppenlistener-Namen für das Serverattribut
festlegen. Der Verfügbarkeitsgruppenlistener ist ein VNN (Virtual Network Name), den Sie zur Verwendung
mit einer bestimmten Verfügbarkeitsgruppe erstellen. Dieser Name ist an mindestens eine TCP/IP-Adresse
und mindestens einen Listenerport gebunden und wird für die automatische Verbindung mit dem primären
Replikat verwendet, wo auch immer dieses gerade gehostet wird. Der VNN macht die Verwendung eines
Failoverpartner-Attributs überflüssig und unterstützt eine skalierbare Topologie mit bis zu fünf
Verfügbarkeitsreplikaten. Wenn für eine Verfügbarkeitsgruppe beispielsweise ein Failover von Knoten1
auf Knoten2 ausgeführt wird, werden neue Verbindungen mit dem Verfügbarkeitsgruppenlistener
automatisch mit dem Replikat hergestellt, das gerade das primäre Replikat hostet.
Darüber hinaus kann der Verfügbarkeitsgruppenlistener für das automatische Routing von Leseoperationen
an lesbare sekundäre Replikate verwendet werden. Weitere Informationen zu dieser Funktion finden
Sie unter Konfigurieren des schreibgeschützten Routings für eine Verfügbarkeitsgruppe (SQL Server).
Unterstützung für Multisubnetz-Verbindungen
Bei anderen Verbindungsattributen für Verfügbarkeitsgruppen wird empfohlen, das MultiSubnetFailoverAttribut – sowohl für Einzel- als auch für Multisubnetz-Topologien – in VerfügbarkeitsgruppenVerbindungszeichenfolgen anzugeben, wenn auf den Namen eines Verfügbarkeitsgruppenlisteners
verwiesen wird. Wenn dieses Verbindungszeichenfolgenattribut aktiviert ist, ermöglicht die
MultiSubnetFailover-Verbindungsoption die Unterstützung von Multisubnetz-Verbindungen und öffnet
parallel TCP-Sockets für IP-Adressen von Verfügbarkeitsgruppenlistenern. Wenn Sie ältere Clientbibliotheken
verwenden, die das MultiSubnetFailover-Attribut nicht unterstützen, sollten Sie das Timeout für die
Clientanmeldung in der Anwendungsverbindungszeichenfolge heraufsetzen, um eine mögliche Latenz
bei Multisubnetz-Verbindungen zu berücksichtigen. Die Timeouteinstellung sollte einem Wert entsprechen,
der größer als die durchschnittliche Failoverzeit für Verfügbarkeitsgruppen in der jeweiligen Umgebung
ist. Weitere Informationen zur Clientunterstützung finden Sie unter SQL Server Native ClientUnterstützung für hohe Verfügbarkeit, Notfallwiederherstellung.
13
Erstellen der Verfügbarkeitsgruppenlösung
In diesem Abschnitt werden die Schritte und der Workflow beschrieben, die erforderlich sind, um in
einer Lösung für lokale Hochverfügbarkeit und Remote-Notfallwiederherstellung eine Verfügbarkeitsgruppe
zu erstellen. Der Schwerpunkt liegt auf der Erstellung einer neuen Umgebung ähnlich der Topologie in
Abbildung 4 oben. Bei diesem Entwurfsmuster wird vorausgesetzt, dass auf den einzelnen SQL ServerInstanzen nicht freigegebener Speicher verwendet wird.
Die Mindestanforderungen für SQL Server 2012 sind Windows Server 2008 R2 mit Service Pack 1 (SP1)
oder Windows Server 2008 mit SP2. Bei den folgenden Anweisungen wird davon ausgegangen, dass
Windows Server 2008 R2 SP1 Enterprise als Betriebssystem auf dem Serverknoten installiert ist.
Tabelle 1 beschreibt die Schritte, die erforderlich sind, um eine Verfügbarkeitsgruppenlösung für
lokale Hochverfügbarkeit und Remote-Notfallwiederherstellung umzusetzen. Obwohl hier nicht
auf jeden einzelnen Schritt eingegangen wird, soll dieser Abschnitt dazu beitragen, die Schritte zur
Workflowimplementierung und die Rollen der verschiedenen Aufgabenbereiche zu verdeutlichen.
Sofern nötig, wird auf Begleitdokumentationen verwiesen. Die folgenden Schritte sind nach
Aufgabengebiet gegliedert, da die Aufgaben in den meisten großen Unternehmensumgebungen nach
Zuständigkeit unterteilt sind, z. B. Datenbankadministrator, Windows Server-(oder Cluster-)Administrator
und Netzwerkadministrator. Aus diesem Grund müssen die Aktivitäten der verschiedenen Aufgabengebiete
richtig kommuniziert und koordiniert werden.
Schritt
Datenbankadministrator
Windows
Server-/Clusteradministrator
1. Zunächst fügen Sie den beiden neu
konfigurierten Knoten im primären
Rechenzentrum und dem dritten neu
konfigurierten Knoten im sekundären
Rechenzentrum die Failoverclusterfunktion
hinzu. Weitere Informationen finden Sie
unter Installieren der Failoverclusterfunktion
und Anforderungen an Failovercluster.
Ja –
Koordination
der Aktivitäten
über
Aufgabengebiete hinweg
Ja
14
Netzwerkadministrator
Schritt
2. Stellen Sie sicher, dass das Konto, das Sie zur
Installation und Konfiguration des WSFCClusters verwenden, ein Domänenkonto ist.
Dieses Konto sollte auch über
Administratorberechtigungen für jeden
Clusterknoten sowie über die
Berechtigungen Computerobjekte erstellen
und Alle Eigenschaften lesen für den
Container verfügen, in dem die
Domänencomputerkonten enthalten sind.
Alternativ können Sie die Active DirectoryNamensobjektkonten vorzeitig bereitstellen
oder ein Domänenadministratorkonto zur
Installation verwenden. Weitere
Informationen und detaillierte Schritte zu
den erforderlichen Berechtigungen und
Bereitstellungsoptionen finden Sie unter
Schrittweise Anleitung für Failovercluster:
Konfigurieren von Konten in Active Directory.
3. Führen Sie mit dem Failovercluster-Manager
eine Clustervalidierung der drei
Serverknoten in den beiden Rechenzentren
aus, die dem WSFC-Cluster angehören. Da
für das in diesem Whitepapier behandelte
Entwurfsmuster kein freigegebener Speicher
verwendet wird, werden diesbezügliche
Tests während der Validierung nicht
ausgeführt.
Nachdem Sie die Clustervalidierung
ausgeführt haben, stellen Sie vor dem
Erstellen des tatsächlichen WSFC-Clusters
sicher, dass keine Blockierungsfehler
aufgetreten sind. Wenn Sie trotz angezeigter
Warnungen zum nächsten Schritt übergehen
können, müssen Sie alle Warnungen genau
verstehen, um eine stabile Konfiguration zu
gewährleisten. Weitere Informationen und
Anweisungen zum Ausführen eines
Validierungstests finden Sie unter
Überprüfen einer
Failoverclusterkonfiguration.
15
Datenbankadministrator
Windows
Server-/Clusteradministrator
Netzwerkadministrator
Ja
Ja
Ja – bei
Problemen,
die bei der
Vernetzung
der Knoten
auftreten
können
Schritt
4. Nach Ende der Validierung verwenden Sie
den Failovercluster-Manager, um einen aus
drei Knoten bestehenden WSFC-Cluster zu
erstellen. Weitere Informationen finden Sie
unter Erstellen eines neuen Failoverclusters.
Wenn der WSFC-Cluster drei Knoten umfasst,
lautet die Standardkonfiguration für
den Quorummodus an dieser Stelle
Knotenmehrheit. Sie können das
Quorummodell später ggf. in "Knotenund Dateifreigabemehrheit" ändern
oder einen weiteren Knoten als reinen
Abstimmungsknoten hinzufügen, auf dem
SQL Server nicht installiert sein muss.
5. Damit der Knoten im DR-Rechenzentrum die
Verfügbarkeit der Knoten im primären
Rechenzentrum nicht beeinträchtigt,
installieren Sie das in KB 2494036
angegebene Hotfix. Dieses Hotfix unterstützt
die Konfiguration eines Clusterknotens, der
über keine Quorumsstimmen verfügt, in
Windows Server 2008 und Windows
Server 2008 R2.
Nachdem Sie das Hotfix auf jedem WSFCKnoten installiert haben, führen Sie die im
Abschnitt "Konfigurieren von Knotenstimmen"
dieses Whitepapers beschriebenen Schritte
aus, um den "NodeWeight"-Wert des WSFCKnotens im DR-Rechenzentrum auf "0"
festzulegen. Das bedeutet, dass nur die
beiden Knoten im primären Rechenzentrum
und der Dateifreigabezeuge, den Sie im
nächsten Schritt konfigurieren, über
Stimmen verfügen.
Bei diesem Workflow wird vorausgesetzt,
dass Sie anstelle eines zusätzlichen Servers
einen Dateifreigabezeugen für die
Knotenmehrheit wählen. Wenn Sie stattdessen
einen zusätzlichen Server ausgewählt haben,
der die Stimme liefert, gelten die
Überlegungen zu Quorumsstimmen
im Wesentlichen trotzdem.
16
Datenbankadministrator
Windows
Server-/Clusteradministrator
Netzwerkadministrator
Ja
Ja – bei
Problemen,
die bei der
Vernetzung
der Knoten
auftreten
können
Ja
Schritt
Datenbankadministrator
6. Da sich der dritte Knoten in einem getrennten
Rechenzentrum befindet und keine Stimme
mehr hat, sollten Sie dieses Quorummodell
in "Knoten- und Dateifreigabemehrheit"
ändern. Erstellen Sie im primären
Rechenzentrum eine Dateifreigabe auf
einem Serverknoten, der dem WSFC-Cluster
nicht angehört. Diese Dateifreigabe tritt als
Dateifreigabezeuge auf. Nachdem Sie die
Dateifreigabe erstellt haben, führen Sie die
oben in diesem Whitepaper beschriebenen
Schritte aus, um die Quorumkonfiguration
in "Knoten- und Dateifreigabemehrheit"
zu ändern.
Bevor Sie die Konfiguration ändern,
sollten Sie dem WSFC-Clusterkonto Leseund Schreibberechtigungen für die
Zeugendateifreigabe erteilen.
7. Installieren Sie auf jedem der drei WSFCKnoten eine eigenständige Instanz von SQL
Server 2012 Enterprise. Jeder Knoten sollte
Zugriff auf seinen eigenen lokalen, nicht
freigegebenen Speicher haben, der SQL
Server zur Verfügung gestellt wird.
Installieren Sie für jeden WSFC-Knoten das
SQL Server 2012 Enterprise-Datenbankmodul
(zusammen mit weiteren optionalen
Funktionen für die Umgebung). Führen Sie
die gleichen Schritte wie bei der Installation
einer eigenständigen SQL Server-Instanz aus.
Obwohl dies ein normaler eigenständiger
Vorgang ist, sollten Sie sicherstellen, dass
alle SQL Server-Instanzen, die Sie installieren,
die gleiche SQL Server-Sortierung zum
Hosten der Verfügbarkeitsgruppenreplikate
verwenden (und dass diese mit der Sortierung
der vorhandenen Datenbankspiegelungs- und
Protokollversandumgebung übereinstimmt).
Es wird außerdem empfohlen, auf jedem
Knoten identische Dateipfade zu verwenden.
17
Windows
Server-/Clusteradministrator
Ja
Ja
Netzwerkadministrator
Schritt
Datenbankadministrator
8. Aktivieren Sie AlwaysOnVerfügbarkeitsgruppenfunktionen für jeden
SQL Server-Dienst. Weitere Informationen
und ausführliche Schritte zum Verwenden
des SQL Server-Konfigurations-Managers
oder zur Ausführung von Windows
PowerShell finden Sie unter Aktivieren und
Deaktivieren von AlwaysOnVerfügbarkeitsgruppen.
9. Nachdem Sie auf allen drei SQL ServerInstanzen die Unterstützung von AlwaysOnVerfügbarkeitsgruppen aktiviert und
sichergestellt haben, dass die Datenbanken
der Verfügbarkeitsgruppe mit dem
Wiederherstellungsmodell FULL konfiguriert
wurden, sichern Sie Ihre produktiven
Benutzerdatenbanken der früheren Topologie
und stellen sie auf einem Knoten des primären
Rechenzentrums im WSFC-Cluster wieder her.
Ja
Es wird davon ausgegangen, dass Sie
mindestens eine Benutzerdatenbank
auf eine SQL Server-Instanz im primären
Rechenzentrum migrieren. Der zweite Knoten
im primären Rechenzentrum wird dann als
sekundäres Replikat mit synchronem Modus
verwendet.
Darüber hinaus müssen Sie für andere SQL
Server-Objekte der früheren Topologie, von
denen die Benutzerdatenbanken abhängen,
die jedoch nicht in den wiederhergestellten
Benutzerdatenbanken enthalten sind, ein
Skript erstellen (z. B. SQL Server-Anmeldungen,
zugeordnete Berechtigungen auf Serverebene,
SQL Server-Agent-Aufträge). Sie gehen
ähnlich vor wie beim Erstellen eines Skripts
für abhängige Objekte, die sich in einer
Datenbank-Spiegelungspartnerschaft
außerhalb der gespiegelten Datenbank
befinden. Es gibt mehrere Methoden, um
Datenbankobjekte zwischen SQL ServerInstanzen zu übertragen. Der Integration
Services-Task SQL Server-Objekte übertragen
ist ein solcher Ansatz.
18
Ja
Windows
Server-/Clusteradministrator
Netzwerkadministrator
Schritt
Datenbankadministrator
10. Erstellen Sie eine Verfügbarkeitsgruppe mit
dem Assistenten in SQL Server Management
Studio (Verwenden des Assistenten für neue
Verfügbarkeitsgruppen), mit Transact-SQL
oder Windows PowerShell.
Ja
Windows
Server-/Clusteradministrator
Weitere Informationen zur Verwendung von
Transact-SQL oder SQL Server PowerShell
finden Sie unter Erstellen einer
Verfügbarkeitsgruppe (Transact-SQL)
oder Erstellen einer Verfügbarkeitsgruppe
(SQL Server PowerShell).
11. Erstellen Sie den
Verfügbarkeitsgruppenlistener (es sei denn,
er wurde bereits während des vorangehenden
Schritts erstellt). Sie können den
Verfügbarkeitsgruppenlistener mit dem
Assistenten in SQL Server Management
Studio, mit Transact-SQL oder SQL Server
PowerShell erstellen. Weitere Informationen
zur Verwendung der verschiedenen Methoden
finden Sie unter Erstellen oder Konfigurieren
eines Verfügbarkeitsgruppenlisteners (SQL
Server).
Ja
Ja – zur
Koordinierung
der
Firewalleinstellungen für die
ausgewählten
IP-Adressen
Netzwerkadministrator
Ja – um
sicherzustellen,
dass der
für den
Endpunkt der
Verfügbarkeitsgruppe
angegebene
Listenerport
für jede
beteiligte SQL
Server-Instanz
geöffnet ist
Ja – zur
Koordinierung
von
IP-Adressen
und Ports
Tabelle 1: Erstellen der Verfügbarkeitsgruppenlösung nach Aufgabengebiet
Beachten Sie bei der Installation der Verfügbarkeitsgruppe die Informationen zu Replikatkonfigurationen
in Tabelle 2. Diese gelten speziell für den in diesem Whitepaper behandelten Lösungsentwurf. Beachten
Sie, dass Sie die sekundären Replikate auch als lesbare sekundäre Replikate verwenden können. Dies ist
eine hilfreiche Option, die sich nicht auf den Gesamtentwurf der HA+DR-Lösung auswirkt. Aus diesem
Grund wurde sie in der Tabelle nicht berücksichtigt.
Rechenzentrum
Primäres
Rechenzentrum
Primäres
Rechenzentrum
DR-Rechenzentrum
Replikat
Knoten 1
Rolle
Primär
Verfügbarkeitsmodus
Synchroner Commit
Failovermodus
Automatisch
Knoten 2
Sekundär
Synchroner Commit
Automatisch
Knoten 3
Sekundär
Asynchroner Commit (ein
sekundäres synchrones Replikat ist
jedoch zulässig; berücksichtigen
Sie die Netzwerklatenz zwischen
den Rechenzentren und deren
Auswirkungen auf die
Anwendungsleistung)
Manuell
Tabelle 2: Replikateinstellungen
Nachdem Sie die in Tabelle 1 aufgeführten Schritte abgeschlossen haben, wird im Failovercluster-Manager
eine neue Ressourcengruppe für die Verfügbarkeitsgruppe angezeigt. Innerhalb dieser Ressourcengruppe
finden Sie auch den Verfügbarkeitsgruppenlistener, zugehörige Listener-IP-Adressen und die
Verfügbarkeitsgruppenressource. Abbildung 7 zeigt, wie eine solche Konfiguration im FailoverclusterManager aussehen kann.
19
Abbildung 7: Windows Server Failovercluster-Manager: Verfügbarkeitsgruppe für HA- und DR-Lösung
Überlegungen zur Überwachung
Wenn Sie von einer Datenbankspiegelungs- und Protokollversandtopologie zu einer Topologie mit einer
Verfügbarkeitsgruppenlösung migrieren, ändert sich auch die Methode zur Überwachung der Topologie. Die
folgenden Methoden und Tools stehen zur Verfügung, um die Infrastruktur für Verfügbarkeitsgruppen
zu überwachen:






AlwaysOn-Gruppendashboard in SQL Server Management Studio
Statusinformationen im Objekt-Explorer
Neue Leistungsindikatoren für Verfügbarkeitsgruppen
Katalogsichten
Dynamische Verwaltungssichten (DMVs)
Eine Extended Events-Sitzung, die die letzten AlwaysOn DDL-Anweisungen, WSFCKonnektivitätsprobleme, Failoverereignisse, Statusänderungen und Blockierungsereignisse
für REDO-Threads nachverfolgt
Das AlwaysOn-Gruppendashboard ist eine effiziente Methode, um schnell den Zustand einer
Verfügbarkeitsgruppe zu erkennen. Im Dashboard werden der Speicherort der primären Instanz,
der Failovermodus und Synchronisierungsstatus der Replikate sowie die Failoverbereitschaft der
verschiedenen Replikate (d. h. das Risiko des Verlusts bestimmter Daten) angezeigt. Die Extended
Events-Sitzung mit AlwaysOn-Statusereignissen kann auch direkt im Dashboard aufgerufen werden,
um die letzten Aktivitäten der Verfügbarkeitsgruppe, Statusänderungen und Ereignisse anzuzeigen.
20
Darüber hinaus können Sie SQL Server-Agent-Warnungen und diesbezügliche Maßnahmen auf der
Grundlage von Leistungsindikator-Schwellenwerten und Statusänderungen von Verfügbarkeitsgruppen
anzeigen. Weitere Informationen zur Überwachung einer Verfügbarkeitsgruppenumgebung finden Sie
unter Überwachen von Verfügbarkeitsgruppen.
Wiederherstellung nach einem Notfall
In diesem Abschnitt werden die Schritte erläutert, die beim Ausfall der WSFC-Knoten im primären
Rechenzentrum ausgeführt werden sollten. Bei diesem Szenario wird davon ausgegangen, dass die
Knoten im primären Rechenzentrum nicht erreichbar sind. Der einzige erreichbare Knoten im WSFCCluster befindet sich demnach im sekundären DR-Rechenzentrum. In der realen Welt gibt es natürlich
viele verschiedene Ausfallszenarien. Die hier beschriebenen Schritte beziehen sich auf ein Szenario,
in dem die Knoten des primären Rechenzentrums nicht erreichbar sind. Wie bereits erwähnt, wird
ebenfalls davon ausgegangen, dass der verbleibende Knoten (zunächst) keine Quorumsstimme hat und
dass sich die einzigen stimmberechtigten Knoten im primären Rechenzentrum befinden (Abbildung 4).
Führen Sie die folgenden Schritte aus, um eine Verfügbarkeitsgruppe beim Ausfall des primären
Rechenzentrums wiederherzustellen:
1. Wenn der Failovercluster-Manager auf dem DR-Knoten gestartet wird, werden zunächst
wahrscheinlich keine aussagekräftigen Informationen zum Status des WSFC-Clusters angezeigt,
weil der Cluster kein Quorum mehr besitzt. Darüber hinaus zeigt das AlwaysOn-Gruppendashboard
auf dem DR-Knoten wahrscheinlich den Failovermodus "Unbekannt" und den
Verfügbarkeitsreplikatstatus "Wird aufgelöst" an (während eines Ausfalls wird in der Regel nur
der Status des lokalen Replikats angezeigt). Im Objekt-Explorer von SQL Server Management
Studio sind die Verfügbarkeitsdatenbanken auf dem DR-Knoten möglicherweise nicht sichtbar
(vgl. Abbildung 8).
Abbildung 8: Zweites Rechenzentrum während eines Ausfalls des primären Rechenzentrums
21
2. Wenn der Status des primären Rechenzentrums unbekannt ist und der Betrieb von einem
sekundären DR-Rechenzentrum wiederaufgenommen werden muss, um die RTO-Vorgabe
einzuhalten, besteht die einzige Möglichkeit darin, den Windows-Cluster neu zu starten,
nachdem auf dem Knoten im DR-Rechenzentrum ein Quorum erzwungen wurde. Das Erzwingen
des Quorums sollte als letzte Möglichkeit angesehen werden, wenn von einem längeren Ausfall
des primären Rechenzentrums ausgegangen wird. Wenn Sie ein Quorum erzwingen, müssen Sie
sicherstellen, dass die Knoten des primären Rechenzentrums kein eigenes Quorum bilden.
Im folgenden Windows PowerShell-Beispiel wird das Erzwingen eines Quorums auf einem
Knoten des DR-Rechenzentrums veranschaulicht. Überprüfen Sie zunächst, ob der Clusterdienst
nicht bereits auf dem DR-Knoten ausgeführt wird.
Stop-ClusterNode –Name "EMU-SQL3"
Starten Sie dann den Clusterdienst, indem Sie das Quorum erzwingen.
Start-ClusterNode –Name "EMU-SQL3" –FixQuorum
Weitere Informationen zum Erzwingen eines Quorums finden Sie unter Erzwingen des Starts
eines Clusters ohne Quorum.
3. Zu diesem Zeitpunkt wird für den Cluster immer noch das Quorummodell "Knoten- und
Dateifreigabemehrheit" verwendet.
Get-ClusterQuorum
Cluster
------EMU-AGClstr
QuorumResource
-------------File Share Witness
QuorumType
---------NodeAndFileShareMajority
Da der Cluster auf dem DR-Knoten mit erzwungenem Quorum ausgeführt wird, müssen Sie
das Quorummodell und die Knotenstimmen entsprechend anpassen. Das DR-Rechenzentrum
(in diesem Topologiebeispiel) umfasst nur einen Knoten, sodass Sie das Quorummodell in
"Knotenmehrheit" (Mehrheit eines Knotens) ändern und dem DR-Knoten eine Stimme und
den Knoten des primären Rechenzentrums 0 Stimmen zuweisen. Um das Quorummodell
auf "Knotenmehrheit" festzulegen, geben Sie den folgenden Befehl ein.
Set-ClusterQuorum -NodeMajority
Indem Sie das Quorummodell ändern, versetzen Sie die Knotenstimmen in den Ausgangszustand
(eine Stimme für jeden Knoten). Passen Sie die Knotenstimmen jetzt an.
(Get-ClusterNode "EMU-SQL3").NodeWeight=1
(Get-ClusterNode "EMU-SQL1").NodeWeight=0
(Get-ClusterNode "EMU-SQL2").NodeWeight=0
Zu diesem Zeitpunkt verfügt die Umgebung über einen Knoten und eine Stimme, sodass ein
SPoF (Single Point of Failure = einzelne Fehlerquelle) entsteht.
Bevor Sie fortfahren, können Sie überprüfen, ob die Knotenstimmen wie beabsichtigt geändert
wurden. Führen Sie dazu den folgenden Windows PowerShell-Befehl aus.
Get-ClusterNode | fl NodeName, NodeWeight
22
Wenn Sie die Besitzer der WSFC-"Clustergruppe" auf Knoten des primären Rechenzentrums
beschränkt haben, sollten Sie auch den DR-Knoten in die Reihe der Besitzer aufnehmen.
4. Schalten Sie die Verfügbarkeitsgruppe für die SQL Server-Instanz des DR-Knotens online.
Achtung: Wenn das Replikat mit dem asynchronen Modus konfiguriert wurde, kann die
Wiederaufnahme des Betriebs bei noch nicht gesendeten Protokolldatensätzen zu einem
Datenverlust führen. Bevor Sie den Betrieb wiederherstellen, sollten Sie sich über die
Auswirkungen dieses Schritts vollständig im Klaren sein. Weitere Informationen zu den Risiken,
die die Wiederherstellung auf Replikaten mit asynchronem Modus mit sich bringt, finden Sie
unter Ausführen eines erzwungenen manuellen Failovers einer Verfügbarkeitsgruppe.
Wenn die Notwendigkeit, die festgelegte Wiederanlaufdauer (RTO) einzuhalten und das
Rechenzentrum wieder in Betrieb zu nehmen, das Risiko eines Datenverlusts überwiegt,
führen Sie die folgende Transact-SQL-Syntax für die SQL Server-DR-Instanz aus, um ein
Failover zu erzwingen (in diesem Beispiel ist EMU-AG1 der Name der Verfügbarkeitsgruppe).
ALTER AVAILABILITY GROUP [EMU-AG1]
FORCE_FAILOVER_ALLOW_DATA_LOSS;
Jetzt sollten die Datenbanken innerhalb der Verfügbarkeitsgruppe verfügbar sein. Sie sollten
noch einmal sicherstellen, dass keine eingehenden Verbindungsanforderungen an das vorherige
primäre Replikat gerichtet sind bzw. dass das primäre Replikat vollständig getrennt ist. Neue
Verbindungen mit dem Verfügbarkeitsgruppenlistener (der wieder online sein sollte) sollten
automatisch an die DR-Instanz weitergeleitet werden. Außerdem müssen Sie sicherstellen,
dass die Anwendungen keine Verbindungen mehr mit dem primären Rechenzentrum herstellen,
um eine "Split-Brain"-Situation zu vermeiden.
Auch nachdem Sie das Quorum im DR-Rechenzentrum neu erstellt haben, werden in SQL Server
Management Studio weiterhin Warnmeldungen zu nicht erreichbaren Knoten im primären
Rechenzentrum angezeigt. Abbildung 9 zeigt ein Beispiel, in dem der Objekt-Explorer und das
AlwaysOn-Gruppendashboard dargestellt sind.
23
Abbildung 9: SQL Server Management Studio nach erzwungenem Failover
Wie bereits oben in diesem Whitepaper erwähnt, sind die Aufgaben in den meisten großen
Unternehmensumgebungen nach Zuständigkeit unterteilt, z. B. Datenbankadministrator, Windows
Server-(oder Cluster-)Administrator und Netzwerkadministrator. Tabelle 3 greift den oben beschriebenen
Workflow zur Notfallwiederherstellung erneut auf, um zu erläutern, welche Aufgaben aus Planungssicht
in die verschiedenen Zuständigkeiten fallen.
Schritt
Datenbankadministrator
Bestätigen Sie den aktuellen Status des
primären Rechenzentrums und des
verbleibenden DR-Knotens des WSFCClusters; Koordinieren aller Maßnahmen.
Erzwingen Sie den Quorumdienst auf dem
DR-Knoten.
Ja
Entziehen Sie den primären Knoten
Stimmen, und weisen Sie dem DR-Knoten
eine Stimme zu.
Erzwingen Sie ein Failover der
Verfügbarkeitsgruppe auf die SQL ServerDR-Instanz.
Ja
Ja
Ja
Tabelle 3: Notfallwiederherstellung nach Aufgabengebiet unterteilt
24
Windows
Server-/Clusteradministrator
Ja
Netzwerkadministrator
Ja
Wiederinbetriebnahme des primären Rechenzentrums
In dem hier beschriebenen Szenario wird vorausgesetzt, dass der Betrieb am DR-Standort nur für die
Dauer des Ausfalls zum Abarbeiten der Arbeitslast wiederaufgenommen wird. Das Ziel sollte es sein, die
Produktionsarbeitslast nach der Wiederherstellung wieder an den primären Standort zurückzuverlegen.
Ein Ausfallszenario kann unterschiedliche Formen annehmen. Das gleiche gilt auch für die Wiederherstellung.
In dem hier beschriebenen Szenario wird von einem Notfall ausgegangen, bei dem die Server des primären
Rechenzentrums über eine längere Zeit außer Betrieb sind. Nachdem die Probleme mit dem primären
Rechenzentrum behoben wurden und die Knoten im primären Rechenzentrum wieder hochgefahren
sind, versuchen die Knoten, eine Verbindung mit dem WSFC-Cluster herzustellen. Sobald die Verbindung
mit dem WSFC-Cluster wiederhergestellt ist und die Clusterdienste ausgeführt werden, sollten die auf
dem DR-Knoten zugewiesenen "NodeWeight"-Einstellungen wirksam sein. Bei diesem Szenario wird
außerdem vorausgesetzt, dass die ursprünglichen SQL Server-Installationen und die zugehörigen
Datenbanken weiterhin intakt sind.
An diesem Punkt sollten Sie überlegen, ob Daten gerettet werden müssen (das bezieht sich auf
Datenänderungen auf dem ursprünglichen primären Replikat, die nicht rechtzeitig vor dem Notfall an
das DR-Replikat gesendet wurden), oder ob Sie mit der Wiederherstellung aller Replikatsitzungen
fortfahren. Die Replikate auf den ausgefallenen Knoten weisen nach einem erzwungenen Failover den
Status "Synchronisierung wird nicht ausgeführt" und das DR-Replikat den Status "Synchronisiert" auf
(vgl. Abbildung 10).
25
Abbildung 10 Datenbankstatus der Replikate, bevor der Systembetrieb im primären Rechenzentrum wiederaufgenommen wird
Eine Methode, die Daten vom ursprünglichen primären Replikat zu retten, besteht darin, eine
Datenbankmomentaufnahme der angehaltenen sekundären Datenbank (ursprünglich die primäre
Datenbank) zu erstellen, um die erforderlichen Daten zu extrahieren und anhand der DR-Replikatversion
der Verfügbarkeitsdatenbanken erneut zu synchronisieren. Das folgende Beispiel zeigt, wie eine
Datenbankmomentaufnahme auf einer Verfügbarkeitsdatenbank mit dem Status "Synchronisierung
wird nicht ausgeführt" erstellt wird.
-- Datenbankmomentaufnahme erstellen
CREATE DATABASE AppDB_A1 ON
(NAME = AppDB, FILENAME =
'S:\Data\AppDB_A1.ss' )
AS SNAPSHOT OF AppDB;
GO
Da die DR-Datenbank im ursprünglichen Szenario im asynchronen Modus verwendet wurde, wird davon
ausgegangen, dass der Wiederanlaufzeitpunkt (Recovery Point Objective, RPO) Datenverluste bis zu
einem gewissen Grad toleriert. In den nächsten Schritten wird vorausgesetzt, dass der Betrieb anhand
der bestehenden Replikate des primären Rechenzentrums wiederaufgenommen wird:
1. Sie beginnen mit der kontrollierten Rückmigration zum primären Rechenzentrum, indem Sie das
Quorummodell entsprechend (d. h. in "Knoten- und Dateifreigabemehrheit") ändern und dann
die Stimmen neu zuweisen.
2. Nachdem sichergestellt wurde, dass die SQL Server-Instanzen des primären Rechenzentrums
gestartet wurden, führen Sie auf jeder SQL Server-Instanz im primären Rechenzentrum die
folgende Transact-SQL-Syntax im Kontext der master-Datenbank aus, um den Betrieb jeder
Datenbank in der Verfügbarkeitsgruppe wiederaufzunehmen.
USE [master]
GO
ALTER DATABASE AppDB SET HADR RESUME;
GO
ALTER DATABASE ConfigDB SET HADR RESUME;
GO
ALTER DATABASE SecurityDB SET HADR RESUME;
GO
26
3. Ändern Sie die Verfügbarkeitsgruppe, sodass sie vorübergehend den Verfügbarkeitsmodus mit
synchronem Commit verwendet, um vor dem Failover eine Synchronisierung durchzuführen.
Der Transact-SQL-Befehl lautet wie folgt (er wird für das aktuelle primäre Replikat im DRRechenzentrum ausgeführt, wobei EMU-AG1 in diesem Beispiel die Verfügbarkeitsgruppe und
EMU-SQL3 das Replikat des DR-Rechenzentrums ist). Vorzugsweise sollte die Einstellung für
synchrone Commits zu weniger aktiven Zeiten vorgenommen werden, um die Transaktionslatenz
gering zu halten.
USE [master]
GO
ALTER AVAILABILITY GROUP [EMU-AG1]
MODIFY REPLICA ON N'EMU-SQL3' WITH (AVAILABILITY_MODE =
SYNCHRONOUS_COMMIT);
GO
4. Bestätigen Sie den Synchronisierungsstatus zwischen den beiden Standorten (der Status aller
Replikate sollte "Fehlerfrei" lauten, bevor Sie zum nächsten Schritt übergehen, d. h., dass die
Replikate synchronisiert sind).
SELECT
role_desc,
synchronization_health_desc
FROM sys.dm_hadr_availability_replica_states;
5. Führen Sie ein Failover von der Verfügbarkeitsgruppe (AG) des Knotens im DR-Rechenzentrum
auf den Knoten im primären Rechenzentrum aus (d. h., Sie stellen eine Verbindung her und
führen das folgende Skript für den Knoten des primären Rechenzentrums aus, der zum neuen
primären Replikat wird).
ALTER AVAILABILITY GROUP [EMU-AG1] FAILOVER;
6. Um die ursprüngliche Bereitstellung wiederherzustellen, aktivieren Sie für den Knoten des DRReplikats wieder asynchrone Commits. Führen Sie den folgenden Transact-SQL-Befehl für das
neue primäre Replikat aus. EMU-SQL3 ist dabei der Name des DR-Replikats und EMU-AG1 der
Name der Verfügbarkeitsgruppe.
USE [master]
GO
ALTER AVAILABILITY GROUP [EMU-AG1]
MODIFY REPLICA ON N'EMU-SQL3' WITH
(AVAILABILITY_MODE = ASYNCHRONOUS_COMMIT);
GO
7. Entziehen Sie dem WSFC-Knoten im DR-Rechenzentrum die Quorumsstimme.
In der folgenden Tabelle wird der oben beschriebene Workflow zur Notfallwiederherstellung erneut
aufgegriffen, um zu erläutern, welche Aufgaben aus Planungssicht in die verschiedenen Zuständigkeiten
fallen.
27
Schritt
1. Nach der Wiederinbetriebnahme des
primären Rechenzentrums ändern Sie das
Quorummodell entsprechend. Geben Sie
den Knoten des primären Rechenzentrums
ihre Quorumsstimmen wieder zurück.
2. Stellen Sie die
Verfügbarkeitsdatenbanksitzungen auf
den einzelnen sekundären Replikaten
wieder her.
3. Aktivieren Sie für das DR-Replikat den
Modus für synchrone Commits.
4. Bestätigen Sie den Synchronisierungsstatus
zwischen den beiden Standorten (der Status
aller Replikate sollte "Fehlerfrei" lauten,
bevor Sie zum nächsten Schritt übergehen).
5. Führen Sie ein Failover auf ein Replikat
im primären Rechenzentrum aus.
6. Stellen Sie den asynchronen
Commitmodus für das DR-Replikat
(gemäß Originalkonfiguration) wieder her.
7. Entziehen Sie dem Knoten im DRRechenzentrum die Quorumsstimme.
DatenbankWindows
administrator Server-/Clusteradministrator
Ja
Netzwerkadministrator
Ja
Ja
Ja
Ja
Ja
Ja
Tabelle 4: Wiederinbetriebnahme des primären Rechenzentrums
Schlussfolgerung
SQL Server 2012 AlwaysOn bietet mehrere Optionen zum Umsetzen von HA (High Availability)- und
DR (Disaster Recovery)-Lösungen. Dieses Whitepaper beschreibt eine Lösung, die HA und DR auf der
Basis von Verfügbarkeitsgruppen erzielt. Die Lösung basiert ausschließlich auf nicht freigegebenem
Speicher, da jede SQL Server-Instanz in der Topologie über einen eigenen Satz an Daten verfügt und
keinen Speicher gemeinsam nutzen muss. Sie können diese Lösung verwenden, um ältere Topologien
zu ersetzen, die auf Datenbankspiegelung und Protokollversand basieren.
Der Erfolg einer solchen HA/DR-Lösung hängt vom Einsatz eines DBA-Teams und der engen Kooperation
zwischen DBA-Team, Windows Server-Administratorteam und Netzwerkteam ab. Die fachübergreifenden
Kompetenzen bringen die Bereitstellung einer HA-/DR-Lösung entscheidend voran.
Referenzmaterial



28
SQL Server 2012 AlwaysOn-Entwurfsmuster für Hochverfügbarkeit und Notfallwiederherstellung
(http://go.microsoft.com/fwlink/?LinkId=255048)
Microsoft SQL Server AlwaysOn-Lösungen für Hochverfügbarkeit und Notfallwiederherstellung
(http://msdn.microsoft.com/library/hh781257.aspx)
Übersicht über AlwaysOn-Verfügbarkeitsgruppen
(http://technet.microsoft.com/library/ff877884(v=SQL.110).aspx)








Voraussetzungen, Einschränkungen und Empfehlungen für AlwaysOn-Verfügbarkeitsgruppen
(http://technet.microsoft.com/library/ff878487(v=sql.110).aspx)
Schrittweise Anleitung für Failovercluster: Konfigurieren des Quorums in einem Failovercluster
(http://technet.microsoft.com/library/cc770620(v=WS.10).aspx)
Windows Server-Hotfix für Quorumsstimmen (http://support.microsoft.com/kb/2494036)
Windows PowerShell (http://technet.microsoft.com/library/bb978526)
Zuordnen von Cluster.exe-Befehlen zu Windows PowerShell-Cmdlets für Failovercluster
(http://technet.microsoft.com/library/ee619744(v=WS.10).aspx)
Windows PowerShell Survival-Guide
(http://social.technet.microsoft.com/wiki/contents/articles/183.windows-powershell-survivalguide-en-us.aspx)
Failovercluster-Cmdlets in Windows PowerShell (http://technet.microsoft.com/library/ee461009.aspx)
SQL Server-PowerShell (http://msdn.microsoft.com/de-de/library/hh245198.aspx)
Anhang A: HA/DR-Beispiel mit Verfügbarkeitsgruppen und
3 Rechenzentren
Die in diesem Whitepaper beschriebene Architektur basiert auf zwei Rechenzentren und ist somit einer
gängigen Bereitstellungstopologie nachempfunden. Es gibt jedoch Situationen, in denen Kunden ein
drittes Rechenzentrum in die Architektur einbinden. Meistens wird mit einer solchen Lösung bezweckt, ein
automatisches Failover der Verfügbarkeitsgruppe zwischen dem primären und dem DR-Rechenzentrum
zu ermöglichen. Ein Ansatz besteht darin, die beiden Replikate in den beiden Rechenzentren und einen
Dateifreigabezeugen im dritten Rechenzentrum bereitzustellen (vgl. Abbildung 11).
3. Rechenzentrum
STIMME
Primäres Rechenzentrum
Dateifreigabe
DR-Rechenzentrum
Windows Server-Failovercluster
SQL Server
STIMME
STIMME
Sekundär
Primär
Synchron
Verfügbarkeitsgruppe
Abbildung 11: HA/DR-Lösung mit Verfügbarkeitsgruppen und drei Rechenzentren
29
SQL Server
Weitere Informationen:
http://www.microsoft.com/sqlserver/: SQL Server-Website
http://technet.microsoft.com/de-de/sqlserver/: SQL Server TechCenter
http://msdn.microsoft.com/de-de/sqlserver/: SQL Server DevCenter
War dieses Dokument hilfreich? Geben Sie uns Ihr Feedback. Bewerten Sie dieses Dokument
auf einer Skala von 1 (schlecht) bis 5 (ausgezeichnet), und begründen Sie Ihre Bewertung.
Beispiel:


Bewerten Sie es hoch aufgrund guter Beispiele, ausgezeichneter Screenshots,
klarer Formulierungen oder aus einem anderen Grund?
Bewerten Sie es niedrig aufgrund schlechter Beispiele, ungenauer Screenshots
oder unklarer Formulierungen?
Dieses Feedback hilft uns, die Qualität von veröffentlichten Whitepapers zu verbessern.
Feedback senden
30
Herunterladen