Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Migrieren von SQL Server zu AWS mithilfe verteilter Verfügbarkeitsgruppen
Erstellt von Praveen Marthala (AWS)
Quelle: SQL Server On-Premises | Ziel: SQL Server auf EC2 | R-Typ: Hostwechsel |
Umgebung: PoC oder Pilotprojekt | Technologien: Datenbanken; Migration | Workload: Microsoft |
AWS-Services: Amazon EC2 |
Übersicht
Microsoft SQL Server Always On-Verfügbarkeitsgruppen bieten eine Hochverfügbarkeitslösung (HA) und eine Notfallwiederherstellungslösung (DR) für SQL Server. Eine Verfügbarkeitsgruppe besteht aus einem primären Replikat, das Lese-/Schreibdatenverkehr akzeptiert, und bis zu acht sekundären Replikaten, die Lesedatenverkehr akzeptieren. Eine Verfügbarkeitsgruppe ist auf einem Windows Server Failover Cluster (WSFC) mit zwei oder mehr Knoten konfiguriert.
Microsoft SQL Server Always On verteilte Verfügbarkeitsgruppen bieten eine Lösung zum Konfigurieren von zwei separaten Verfügbarkeitsgruppen zwischen zwei unabhängigen WFSCs. Die Verfügbarkeitsgruppen, die Teil der verteilten Verfügbarkeitsgruppe sind, müssen sich nicht im selben Rechenzentrum befinden. Eine Verfügbarkeitsgruppe kann On-Premises und die andere Verfügbarkeitsgruppe in der Amazon Web Services (AWS) Cloud auf Amazon Elastic Compute Cloud (Amazon EC2)-Instances in einer anderen Domain sein.
Dieses Muster beschreibt die Schritte zur Verwendung einer verteilten Verfügbarkeitsgruppe zur Migration von lokalen SQL Server-Datenbanken, die Teil einer vorhandenen Verfügbarkeitsgruppe sind, zu SQL Server mit auf Amazon EC2 eingerichteten Verfügbarkeitsgruppen. Wenn Sie diesem Muster folgen, können Sie die Datenbanken mit minimalen Ausfallzeiten während des Cutover in die AWS Cloud migrieren. Die Datenbanken sind in AWS unmittelbar nach dem Cutover hochverfügbar. Sie können dieses Muster auch verwenden, um das zugrunde liegende Betriebssystem von On-Premises zu AWS zu ändern und dabei dieselbe Version von SQL Server beizubehalten.
Voraussetzungen und Einschränkungen
Voraussetzungen
Ein aktives AWS-Konto
AWS Direct Connect oder AWS Site-to-Site VPN
Die gleiche Version von SQL Server, die On-Premises und auf den beiden Knoten auf AWS installiert ist
Produktversionen
SQL Server Version 2016 und höher
SQL Server Enterprise Edition
Architektur
Quelltechnologie-Stack
Microsoft SQL Server-Datenbank mit AlwaysOn-Verfügbarkeitsgruppen On-Premises
Zieltechnologie-Stack
Microsoft SQL Server-Datenbank mit AlwaysOn-Verfügbarkeitsgruppen auf Amazon EC2 in der AWS Cloud
Migrationsarchitektur
![](images/pattern-img/6e229e30-9b11-4ccb-bccd-cbe6601139c0/images/79ee7911-d68f-4db7-9b94-113dcf09c28b.png)
Terminologie
WSFC 1 – WSFC On-Premises
WSFC 2 – WSFC in der AWS Cloud
AG 1 – Erste Verfügbarkeitsgruppe, die sich in WSFC 1 befindet
AG 2 – Zweite Verfügbarkeitsgruppe, die sich in WSFC 2 befindet
SQL Server-Primärreplikat – Knoten in AG 1, der für alle Schreibvorgänge als globaler Primärknoten betrachtet wird
SQL Server Forwarder – Knoten in AG 2, der Daten asynchron vom primären SQL Server-Replikat empfängt
Sekundäres SQL Server-Replikat – Knoten in AG 1 oder AG 2, die Daten synchron vom primären Replikat oder vom Forwarder empfangen
Tools
AWS Direct Connect – AWS Direct Connect verbindet Ihr internes Netzwerk über ein standardmäßiges Ethernet-Glasfaserkabel mit einem AWS Direct Connect-Standort. Mit dieser Verbindung können Sie virtuelle Schnittstellen direkt zu öffentlichen AWS-Services erstellen, wodurch Internetdienstanbieter in Ihrem Netzwerkpfad umgangen werden.
Amazon EC2 – Amazon Elastic Compute Cloud (Amazon EC2) bietet skalierbare Rechenkapazität in der AWS Cloud. Sie können Amazon EC2 verwenden, um so viele oder so wenige virtuelle Server zu starten, wie Sie benötigen, und Sie können auf- oder abskalieren.
AWS Site-to-Site VPN – AWS Site-to-Site VPN unterstützt das Erstellen eines site-to-site Virtual Private Network (VPN). Sie können das VPN so konfigurieren, dass der Datenverkehr zwischen Instances, die Sie in AWS starten, und Ihrem eigenen Remote-Netzwerk weitergeleitet wird.
Microsoft SQL Server Management Studio
– Microsoft SQL Server Management Studio (SSMS) ist eine integrierte Umgebung für die Verwaltung der SQL Server-Infrastruktur. Es bietet eine Benutzeroberfläche und eine Gruppe von Tools mit umfangreichen Skripteditoren, die mit SQL Server interagieren.
Polen
Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
---|---|---|
Erstellen Sie einen WSFC in AWS. | Erstellen Sie WSFC 2 auf Amazon EC2-Instances mit zwei Knoten für HA. Sie verwenden diesen Failover-Cluster, um die zweite Verfügbarkeitsgruppe (AG 2) in AWS zu erstellen. | Systemadministrator, SysOps Administrator |
Erstellen Sie die zweite Verfügbarkeitsgruppe auf WSFC 2. | Erstellen Sie mithilfe von SSMS AG 2 auf zwei Knoten in WSFC 2. Der erste Knoten in WSFC 2 fungiert als Weiterleitung. Der zweite Knoten in WSFC 2 fungiert als sekundäres Replikat von AG 2. Derzeit sind in AG 2 keine Datenbanken verfügbar. Dies ist der Ausgangspunkt für die Einrichtung der verteilten Verfügbarkeitsgruppe. | DBA, Entwickler |
Erstellen Sie Datenbanken ohne Wiederherstellungsoption auf AG 2. | Sichern Sie Datenbanken in der On-Premises-Verfügbarkeitsgruppe (AG 1). Stellen Sie die Datenbanken sowohl im Forwarder als auch im sekundären Replikat von AG 2 ohne Wiederherstellungsoption wieder her. Geben Sie beim Wiederherstellen der Datenbanken einen Speicherort mit genügend Speicherplatz für die Datenbankdatendateien und die Protokolldateien an. In dieser Phase befinden sich die Datenbanken im Wiederherstellungsstatus. Sie sind nicht Teil von AG 2 oder der verteilten Verfügbarkeitsgruppe und werden nicht synchronisiert. | DBA, Entwickler |
Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
---|---|---|
Erstellen Sie die verteilte Verfügbarkeitsgruppe auf AG 1. | Um die verteilte Verfügbarkeitsgruppe auf AG 1 zu erstellen, verwenden Sie die
| DBA, Entwickler |
Erstellen Sie die verteilte Verfügbarkeitsgruppe auf AG 2. | Um die verteilte Verfügbarkeitsgruppe auf AG 2 zu erstellen, verwenden Sie
Die verteilte Verfügbarkeitsgruppe wird zwischen AG 1 und AG 2 erstellt. Die Datenbanken in AG 2 sind noch nicht für die Teilnahme am Datenfluss von AG 1 zu AG 2 konfiguriert. | DBA, Entwickler |
Fügen Sie der Weiterleitung und dem sekundären Replikat auf AG 2 Datenbanken hinzu. | Fügen Sie die Datenbanken der verteilten Verfügbarkeitsgruppe hinzu, indem Sie Dadurch wird der asynchrone Datenfluss zwischen Datenbanken in AG 1 und AG 2 gestartet. Der globale primäre Cluster nimmt Schreibvorgänge entgegen, sendet Daten synchron an das sekundäre Replikat auf AG 1 und sendet Daten asynchron an den Forwarder auf AG 2. Die Weiterleitung auf AG 2 sendet Daten synchron an das sekundäre Replikat auf AG 2. | DBA, Entwickler |
Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
---|---|---|
Verwenden Sie DMVs und SQL Server-Protokolle. | Überwachen Sie den Status des Datenflusses zwischen zwei Verfügbarkeitsgruppen mithilfe dynamischer Verwaltungsansichten (DMVs) und SQL Server-Protokollen. Zu den DMVs, die für die Überwachung von Interesse sind, gehören Überwachen Sie den Status der Weiterleitungssynchronisierung im SQL Server-Protokoll auf der Weiterleitung. | DBA, Entwickler |
Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
---|---|---|
Stoppen Sie den gesamten Datenverkehr zum primären Replikat. | Stoppen Sie den eingehenden Datenverkehr zum primären Replikat in AG 1, damit keine Schreibaktivität in den Datenbanken stattfindet und die Datenbanken für die Migration bereit sind. | App-Besitzer, Entwickler |
Ändern Sie den Verfügbarkeitsmodus der verteilten Verfügbarkeitsgruppe auf AG 1. | Legen Sie im primären Replikat den Verfügbarkeitsmodus der verteilten Verfügbarkeitsgruppe auf synchron fest. Nachdem Sie den Verfügbarkeitsmodus auf synchron geändert haben, werden die Daten synchron vom primären Replikat in AG 1 an den Forwarder in AG 2 gesendet. | DBA, Entwickler |
Überprüfen Sie die LSNs in beiden Verfügbarkeitsgruppen. | Überprüfen Sie die letzten Log Sequence Numbers (LSNs) sowohl in AG 1 als auch in AG 2. Da keine Schreibvorgänge im primären Replikat in AG 1 stattfinden, werden die Daten synchronisiert und die letzten LSNs für beide Verfügbarkeitsgruppen sollten übereinstimmen. | DBA, Entwickler |
Aktualisieren Sie AG 1 auf die sekundäre Rolle. | Wenn Sie AG 1 auf die sekundäre Rolle aktualisieren, verliert AG 1 die primäre Replikatrolle und akzeptiert keine Schreibvorgänge, und der Datenfluss zwischen zwei Verfügbarkeitsgruppen wird beendet. | DBA, Entwickler |
Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
---|---|---|
Manuelles Failover auf AG 2. | Ändern Sie in der Weiterleitung in AG 2 die verteilte Verfügbarkeitsgruppe, um Datenverlust zuzulassen. Da Sie bereits überprüft und bestätigt haben, dass die letzten LSNs auf AG 1 und AG 2 übereinstimmen, ist der Datenverlust kein Problem. Wenn Sie Datenverlust auf dem Forwarder in AG 2 zulassen, ändern sich die Rollen von AG 1 und AG 2:
| DBA, Entwickler |
Ändern Sie den Verfügbarkeitsmodus der verteilten Verfügbarkeitsgruppe auf AG 2. | Ändern Sie auf dem primären Replikat in AG 2 den Verfügbarkeitsmodus auf asynchron. Dadurch wird die Datenverschiebung von AG 2 auf AG 1 geändert, von synchron zu asynchron. Dieser Schritt ist erforderlich, um die Netzwerklatenz zwischen AG 2 und AG 1 zu vermeiden, sofern vorhanden, und beeinträchtigt nicht die Leistung der Datenbank. | DBA, Entwickler |
Beginnen Sie mit dem Senden von Datenverkehr an das neue primäre Replikat. | Aktualisieren Sie die Verbindungszeichenfolge, um den Listener-URL-Endpunkt auf AG 2 zum Senden von Datenverkehr an die Datenbanken zu verwenden. AG 2 akzeptiert jetzt Schreibvorgänge und sendet Daten an den Forwarder in AG 1 sowie Daten an ein eigenes sekundäres Replikat in AG 2. Daten werden asynchron von AG 2 auf AG 1 verschoben. | App-Besitzer, Entwickler |
Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
---|---|---|
Entfernen Sie die verteilte Verfügbarkeitsgruppe auf AG 2. | Überwachen Sie die Migration für den geplanten Zeitraum. Entfernen Sie dann die verteilte Verfügbarkeitsgruppe auf AG 2, um die Einrichtung der verteilten Verfügbarkeitsgruppe zwischen AG 2 und AG 1 zu entfernen. Dadurch wird die Konfiguration der verteilten Verfügbarkeitsgruppe entfernt und der Datenfluss von AG 2 zu AG 1 wird beendet. Zu diesem Zeitpunkt ist AG 2 auf AWS hochverfügbar, mit einem primären Replikat, das Schreibvorgänge entgegennimmt, und einem sekundären Replikat in derselben Verfügbarkeitsgruppe. | DBA, Entwickler |
Außerbetriebnahme der On-Premises-Server. | Außerbetriebnahme der On-Premises-Server in WSFC 1, die Teil von AG 1 sind. | Systemadministrator, SysOps Administrator |