Geografische Redundanz mit SQL Server-Replikation einrichten

Wichtig

Wenn Sie eine AD FS-Farm erstellen und SQL Server zum Speichern Ihrer Konfigurationsdaten verwenden möchten, können Sie SQL Server 2008 oder höher verwenden.

Wenn Sie SQL Server als AD FS-Konfigurationsdatenbank verwenden, können Sie georedundanz für Ihre AD FS-Farm mithilfe SQL Server Replikation einrichten. Geo-Redundanz repliziert Daten zwischen zwei geografisch entfernten Standorten, sodass Anwendungen von einem Standort zu einem anderen wechseln können. Auf diese Weise können Sie im Falle des Fehlers eines Standorts weiterhin alle Konfigurationsdaten am zweiten Standort zur Verfügung haben. Weitere Informationen finden Sie im Abschnitt "SQL Server geografische Redundanz" in der Verbundserverfarm mit SQL Server.

Voraussetzungen

Installieren und Konfigurieren einer SQL Serverfarm. Weitere Informationen finden Sie unter https://technet.microsoft.com/evalcenter/hh225126.aspx. Stellen Sie bei der ersten SQL Server sicher, dass der SQL Server-Agent Dienst ausgeführt wird und auf den automatischen Start festgelegt ist.

Erstellen des zweiten (Replikats) SQL Server für Geo-Redundanz

  1. Installieren sie SQL Server (weitere Informationen finden Sie unter https://technet.microsoft.com/evalcenter/hh225126.aspx. Kopieren Sie die resultierenden CreateDB.sql- und SetPermissions.sql-Skriptdateien in das Replikat SQL Server.

  2. Stellen Sie sicher, dass SQL Server-Agent Dienst ausgeführt wird und auf den automatischen Start festgelegt ist

  3. Führen Sie Export-AdfsDeploymentSQLScript auf dem primären AD FS-Knoten aus, um CreateDB.sql und SetPermissions.sql-Dateien zu erstellen. Beispiel: PS:\>Export-AdfsDeploymentSQLScript -DestinationFolder . –ServiceAccountName CONTOSO\gmsa1$. Screenshot that shows how to run the Export-AdfsDeploymentSQLScript on the primary AD FS node.

  4. Kopieren Sie die Skripts auf Ihren sekundären Server. Öffnen Sie das Skript CreateDB.sql in SQL Management Studio, und klicken Sie auf "Ausführen". Screenshot that shows the open the CreateDB.sql script in SQL Management Studio.

  5. Öffnen Sie das SetPermissions.sql-Skript in SQL Management Studio, und klicken Sie auf "Ausführen". Screenshot that shows the open the SetPermissions.sql script in SQL Management Studio.

Hinweis

Sie können auch folgendes aus der Befehlszeile verwenden.

c:\>sqlcmd –i CreateDB.sql

c:\>sqlcmd –i SetPermissions.sql

Erstellen von Herausgebereinstellungen für die anfängliche SQL Server

  1. Klicken Sie im SQL Server Management Studio unter "Replikation" mit der rechten Maustaste auf "Lokale Publikationen", und wählen Sie "Neue Publikation" aus...Screenshot that shows the New Publication menu option.

  2. Klicken Sie auf dem Bildschirm "Neuer Publikations-Assistent" auf "Weiter".
    Screenshot that shows the New Publication Wizard screen.

  3. Wählen Sie auf der Seite "Verteiler " den lokalen Server als Verteiler aus, und klicken Sie auf "Weiter". Screenshot that that shows where to choose the local server as distributor.

  4. Geben Sie auf der Seite "Momentaufnahmeordner " \\SQL1\repldata anstelle des Standardordners ein. (HINWEIS: Möglicherweise müssen Sie diese Freigabe selbst erstellen). Screenshot that shows where to enter the path to the default Snapshot folder.

  5. Wählen Sie AdfsConfigurationV3 als Publikationsdatenbank aus, und klicken Sie auf "Weiter". Screenshot that shows where to choose AdfsConfigurationV3 as the publication database.

  6. Wählen Sie unter "Publikationstyp" die Option "Publikation zusammenführen" aus, und klicken Sie auf "Weiter". Screenshot that shows where

  7. Wählen Sie bei AbonnententypenSQL Server 2008 oder höher aus, und klicken Sie auf "Weiter". Screenshot that shows where to choose SQL Server 2008 or later.

  8. Wählen Sie auf der Seite "Artikel" den Knoten "Tabellen" aus, um alle Tabellen auszuwählen, und deaktivieren Sie die Kontrollkästchen "SyncProperties"-Tabelle (diese sollte nicht repliziert werden)
    Screenshot that shows where to clear the SyncProperties (IdentityServerPolicy) check box.

  9. Wählen Sie auf der Seite "Artikel " den Knoten "Benutzerdefinierte Funktionen " aus, um alle benutzerdefinierten Funktionen auszuwählen, und klicken Sie auf "Weiter". Screenshot that shows where to select the User Defined Functions check box.

  10. Klicken Sie auf der Seite "Artikelprobleme " auf "Weiter". Screnshot that shows the Article Issues screen.

  11. Klicken Sie auf der Seite Tabellenzeilen filtern auf Weiter. Screenshot that shows the Filter Table Rows screen.

  12. Wählen Sie auf der Seite Momentaufnahmen-Agent die Standardeinstellungen für "Direkt" und "14 Tage" aus, und klicken Sie auf "Weiter". Screenshot that shows the Snapshot Agent screen.
    Möglicherweise müssen Sie ein Domänenkonto für den SQL Agent erstellen. Verwenden Sie die Schritte in "Konfigurieren SQL Anmeldung für das Domänenkonto CONTOSO\sqlagent", um SQL Anmeldung für diesen neuen AD-Benutzer zu erstellen und bestimmte Berechtigungen zuzuweisen.

  13. Klicken Sie auf der Seite "Agent-Sicherheit" auf "Sicherheit Einstellungen", und geben Sie den Benutzernamen/kennwort eines Domänenkontos (nicht eine GMSA) ein, das für den SQL Agent erstellt wurde, und klicken Sie auf "OK". Klicken Sie auf Weiter. Screenshot that shows where to enter the username and password for the domain account.

  14. Klicken Sie auf der Seite "Assistentenaktionen " auf "Weiter". Screenshot that shows the Wizard Actions screen.

  15. Geben Sie auf der Seite "Assistent abschließen " einen Namen für Ihre Publikation ein, und klicken Sie auf "Fertig stellen". Screenshot that shows where you enter a name for your publication.

  16. Sobald die Publikation erstellt wurde, sollte der Status des Erfolgs angezeigt werden. Klicken Sie auf Schließen. Screenshot that shows the successful completion of the publication.

  17. Klicken Sie zurück in SQL Server Management Studio mit der rechten Maustaste auf die neue Publikation, und klicken Sie auf den Replikationsmonitor starten. Screenshot that shows the Launch Replication Monitor menu option.

Erstellen von Abonnementeinstellungen für das Replikat SQL Server

Stellen Sie sicher, dass Sie die Herausgebereinstellungen für die anfängliche SQL Server wie oben beschrieben erstellt haben, und führen Sie dann das folgende Verfahren aus:

  1. Klicken Sie im Replikat SQL Server aus SQL Server Management Studio unter "Replikation" mit der rechten Maustaste auf "Lokale Abonnements", und wählen Sie "Neues Abonnement" aus.Screenshot that shows where to select New Subscription.

  2. Klicken Sie auf der Seite "Neuer Abonnement-Assistent " auf "Weiter". Screenshot that shows the New Subscription Wizard screen.

  3. Wählen Sie auf der Seite "Publikation " den Herausgeber aus der Dropdownliste aus. Erweitern Sie AdfsConfigurationV3 , und wählen Sie den Namen der oben erstellten Publikation aus, und klicken Sie auf "Weiter". Screenshot that shows where to expand AdfsConfigurationV3 and select the name of the name of the publication that you created.

  4. Wählen Sie auf der Seite "Merge-Agent Standort" die Option "Jeder Agent bei seinem Abonnenten ausführen" (Pullabonnements) (Standard) aus, und klicken Sie auf "Weiter". Screenshot that shows the Run each agent at its Subscriber (pull subscriptions) option.
    Dies bestimmt zusammen mit dem nachstehenden Abonnementtyp die Konfliktlösungslogik. (Weitere Informationen finden Sie unter Erkennen und Beheben von Zusammenführungsreplikationskonflikten.

  5. Wählen Sie auf der Seite "Abonnenten " AdfsConfigurationV3 als Abonnentendatenbank aus, und klicken Sie auf "Weiter". Screenshot that shows the Subscribers screen.

  6. Klicken Sie auf der Seite Merge-Agent Sicherheit auf ... und geben Sie den Benutzernamen und das Kennwort eines Domänenkontos (nicht eine GMSA) ein, das für den SQL Agent erstellt wurde, indem Sie das Ellipsenfeld verwenden und auf "Weiter" klicken. Screenshot that shows the Merge Agent Security screen.

  7. Wählen Sie unter "Synchronisierungszeitplan" die Option "Fortlaufend ausführen" aus, und klicken Sie auf "Weiter". Screenshot that shows where to select Run continuously.

  8. Klicken Sie beim Initialisieren von Abonnements auf "Weiter". Screenshot that shows the Initialize Subscriptions screen.

  9. Wählen Sie im Abonnementtyp"Client " aus, und klicken Sie auf "Weiter".

    Dies ist hier und hier dokumentiert. Im Wesentlichen nehmen wir die einfache Konfliktlösung "first to publisher wins" und müssen nicht erneut für andere Abonnenten veröffentlicht werden. Screenshot that shows the Subscription Type screen.

  10. Stellen Sie auf der Seite "Assistentenaktionen " sicher, dass das Abonnement aktiviert ist, und klicken Sie auf "Weiter". Screenshot that shows where verify that the Create the subscription option is selected.

  11. Klicken Sie auf der Seite "Assistent abschließen " auf "Fertig stellen". Screenshot that shows the Complete the Wizard screen.

  12. Nachdem das Abonnement den Erstellungsprozess abgeschlossen hat, sollte der Erfolg angezeigt werden. Klicken Sie auf Schließen. Set up Geographic Redundancy

Überprüfen des Prozesses der Initialisierung und Replikation

  1. Klicken Sie auf dem primären SQL Server mit der rechten Maustaste auf den Replikationsknoten, und klicken Sie auf "Replikationsmonitor starten".

  2. Klicken Sie im Replikationsmonitor auf die Publikation.

  3. Klicken Sie auf der Registerkarte "Alle Abonnements " mit der rechten Maustaste, und zeigen Sie Details an.

    Sie sollten in der Lage sein, viele Einträge unter Aktionen für die anfängliche Replikation anzuzeigen.

  4. Darüber hinaus können Sie unter dem Knoten "SQL Server-Agent\Jobs" suchen, um die für die Ausführung der Vorgänge der Publikation/des Abonnements geplanten Aufträge anzuzeigen. Es werden nur lokale Aufträge angezeigt. Stellen Sie daher sicher, dass Sie den Herausgeber und den Abonnenten auf die Problembehandlung überprüfen. Klicken Sie mit der rechten Maustaste auf einen Auftrag, und wählen Sie "Verlauf anzeigen " aus, um den Ausführungsverlauf und die Ergebnisse anzuzeigen.

Konfigurieren der SQL Anmeldung für das Domänenkonto CONTOSO\sqlagent

  1. Erstellen Sie eine neue Anmeldung auf der primären und Replikat-SQL Server "CONTOSO\sqlagent" (der Name des neuen Domänenbenutzers, der auf der Seite "Agent Security" in den oben beschriebenen Verfahren erstellt und konfiguriert wurde.)

  2. Klicken Sie in SQL Server mit der rechten Maustaste auf die von Ihnen erstellte Anmeldung, und wählen Sie "Eigenschaften" aus, und wählen Sie dann auf der Registerkarte "Benutzerzuordnung" diese Anmeldung mit AdfsConfiguration- und AdfsArtifact-Datenbanken mit öffentlichen und db_genevaservice Rollen zu. Ordnen Sie diese Anmeldung auch der Verteilungsdatenbank zu und fügen Sie db_owner Rolle für Verteilungs- und Adfsconfiguration-Tabellen hinzu. Führen Sie dies für primäre und replizierbare SQL Server aus. Weitere Informationen finden Sie unter Replication Agent Security Model.

  3. Weisen Sie dem entsprechenden Domänenkonto Lese- und Schreibberechtigungen für die als Verteiler konfigurierte Freigabe zu. Stellen Sie sicher, dass Sie Lese- und Schreibberechtigungen sowohl für die Freigabeberechtigungen als auch für die lokalen Dateiberechtigungen festlegen.

Konfigurieren von AD FS-Knoten, um auf die SQL Server Replikatfarm zu verweisen

Nachdem Sie nun geo redundanz eingerichtet haben, können die AD FS-Farmknoten so konfiguriert werden, dass sie auf Ihr Replikat SQL Server Farm verweisen, indem Sie die standardmäßigen AD FS-Farmfunktionen verwenden, entweder über die BEnutzeroberfläche des AD FS-Konfigurations-Assistenten oder mithilfe von Windows PowerShell.

Wenn Sie die BEnutzeroberfläche des AD FS-Konfigurations-Assistenten verwenden, wählen Sie "Partnerverbundserver hinzufügen" zu einer Verbundserverfarm aus. Wählen Sie NICHTden ersten Verbundserver in einer Verbundserverfarm aus.

Wenn Sie Windows PowerShell verwenden, führen Sie Add-AdfsFarmNode aus. Führen Sie "Install-AdfsFarm" NICHT aus.

Geben Sie bei Aufforderung den Host- und Instanznamen des Replikats SQL Server an, NICHT den ursprünglichen SQL Server.