GeoSync
In diesem Abschnitt werden folgende Themen behandelt:
- Wissenswertes über GeoSync
- Zuordnen von Herausgebern und Abonnenten
- Konfigurieren von GeoSync für eine Personalisierungsgruppe
- Verwalten von Synchronisierungen und Zeitplänen
- Sichern und Wiederherstellen von GeoSync-Datenbanken
Wissenswertes über GeoSync
GeoSync bietet ein Verfahren zum Synchronisieren von Benutzerdaten und Personalisierungskonfigurationen im Environment Manager zwischen SQL-Server-Datenbanken auf dem Personalisierungsserver. So können Benutzer an mehreren Standorten auf ihre Daten und Einstellungen zugreifen. Alle von ihnen vorgenommenen Änderungen werden beim nächsten Synchronisieren mit dem Herausgeber zurücksynchronisiert.
GeoSync benötigt zwei oder mehr Personalisierungsserver-Datenbanken – eine, die als Herausgeber fungiert, und die anderen als Abonnenten. Herausgeber und Abonnenten werden anhand von PowerShell-Cmdlets zugewiesen, die beim Installieren von Environment Manager bereitgestellt werden. Anschließend werden Abonnenten Personalisierungsgruppen auf der Environment Manager-Konsole zugewiesen, um festzulegen, welche Datenbanken synchronisiert werden.
Alle an den Benutzerdaten vorgenommenen Änderungen werden zwischen dem Herausgeber und den Abonnenten synchronisiert, um sicherzustellen, dass die neuesten Änderungen verfügbar sind. Während die Herausgabe von Benutzerdaten in beide Richtungen synchronisiert wird, findet die Synchronisation der Konfiguration nur vom Herausgeber zu den Abonnenten statt. Dies ermöglicht eine zentralisierte Konfigurationsverwaltung, bei der die Administratoren Konfigurationsaktualisierungen in der Herausgeberdatenbank vornehmen, die anschließend bei der nächsten geplanten Synchronisierung auf die Abonnenten repliziert werden.
Beispiel: Eine Organisation hat Büros an unterschiedlichen Standorten auf der ganzen Welt und jeder hat eine eigene Personalisierungsdatenbank. Mitarbeiter, die häufig zwischen den Büros pendeln, werden von einer Personalisierungsgruppe verwaltet, wobei GeoSync so konfiguriert ist, dass täglich eine Synchronisierung durchgeführt wird. Die Daten der Mitarbeiter werden regelmäßig aktualisiert und stehen ihnen standortunabhängig zur Verfügung.
Es ist möglich, nur Konfigurationen zu synchronisieren. Dies ist sinnvoll für Organisationen, die eine Konfiguration für mehrere Datenbanken pflegen. Sie können festlegen, dass nur Konfigurationen synchronisiert werden sollen. Eine Organisation könnte entscheiden, nur Konfigurationen zu synchronisieren, wenn sie eine Konfiguration für mehrere Datenbanken pflegt. Jede Änderung der Konfiguration kann schnell und ohne Beeinträchtigung der Benutzerdaten auf alle erforderlichen Abonnenten synchronisiert werden.
Synchronisierte Konfigurationselemente vom Herausgeber werden lila hervorgehoben, wenn sie auf einer mit einem Abonnenten verbundenen Environment Manager-Konsole angezeigt werden. Eine Bearbeitung der synchronisierten Elemente auf dem Abonnenten ist nicht möglich.
Nähere Informationen zur Hochverfügbarkeit und zur Notfallwiederherstellung von Personalisierungsserver-Datenbanken finden Sie in unserem Leitfaden für bewährte Verfahren: DOC-46245
In Abhängigkeit von der benutzerdefinierten Umgebung können zum Einrichten unterschiedliche Schritte erforderlich sein. Unten sind die drei von GeoSync unterstützten Szenarien beschrieben:
Neue Abonnentendatenbanken
Führen Sie die Schritte im Abschnitt unten für neue Abonnentendatenbanken aus. Wenn Sie rein lokale Personalisierungsgruppen auf Ihrem neuen Abonnenten (eine Personalisierungsgruppe auf dem Abonnenten, die auf dem Herausgeber nicht mit GeoSync verwaltet wird) einrichten möchten, müssen diese erstellt werden, nachdem GeoSync erfolgreich konfiguriert und der Abonnent mit dem Herausgeber synchronisiert wurde.
Vorhandene Abonnentendatenbanken
Wenn Sie beabsichtigen, GeoSync auf einem Abonnenten einzurichten, der bereits eine Personalisierungskonfiguration und Daten umfasst, müssen die Konfiguration und die Daten auf dem Herausgeber vorhanden sein. Der Abonnent ist entweder ein Backup für den Herausgeber oder eine zuvor per SQL Server-Mergereplikation synchronisierte Datenbank.
Die folgenden zusätzlichen Schritte sind für das oben beschriebene Szenario erforderlich.
Achtung – Wenn GeoSync auf einem vorhandenen Abonnenten eingerichtet wird, der eine Konfiguration oder Daten umfasst, die nicht auf dem Herausgeber vorhanden sind, kommt es zu Datenverlusten und es wird nicht von diesem Release unterstützt. Wenn Sie rein lokale Personalisierungsgruppen auf ihren entfernten Abonnenten verwenden möchten, sollten diese erst nach dem Konfigurieren von GeoSync erstellt werden.
- Weisen Sie den Herausgeber und die Abonnenten wie in Zuweisen von Herausgebern und Abonnenten beschrieben zu.
- Konfigurieren Sie GeoSync für Ihre Personalisierungsgruppen auf der Personalisierungskonsole des Herausgebers.
-
Führen Sie eine Initialsynchronisierung von der Konsole aus.
Wenn auf dem Abonnenten doppelte Windows-Einstellungsgruppen erkannt werden, setzen Sie den Vorgang bei Schritt 5 fort.
Wenn keine Duplikate erkannt werden, ist die Konfiguration abgeschlossen – die aufgelisteten Windows-Einstellungsgruppen verhindern die GeoSync-Synchronisation.
- Notieren Sie sich die aktuelle erweiterte Einstellung ProfileCleanUpDelayDays und ändern Sie sie auf dem Abonnenten in -1 um. Wenn der Hintergrunddienst seine tägliche Aufgabe ausführt, wird mit dieser Einstellung sichergestellt, dass er nicht versucht, verwaiste Windows-Einstellungsgruppen während der GeoSync-Einrichtung zu bereinigen.
- Entfernen Sie die erkannten Windows-Einstellungsgruppen vom Abonnenten, nicht jedoch die Anwendungsgruppen.
-
Wiederholen Sie Schritt 3.
Wenn die Initialsynchronisierung erfolgreich abgeschlossen ist, sollte der Abonnent die als Duplikate erkannten Windows-Einstellungsgruppen wiederhergestellt und den synchronisierten Personalisierungsgruppen zugewiesen haben.
- Setzen Sie die Einstellung ProfileCleanUpDelayDays auf den Ausgangswert zurück.
Satellitendatenbank als GeoSync-Abonnent
In diesem Szenario wird eine Personalisierungsserver-Datenbank durch den Export eines Teils einer Konfiguration oder einer ganzen Konfiguration aus einer größeren Hauptdatenbank (durch Verwendung der Import-/Exportfunktion) erstellt und an einem entfernten Standort für eine kleinere Anzahl an Benutzern bereitgestellt. Der Kunde setzt GeoSync ein, um einige Benutzer zwischen der Hauptdatenbank und der Satellitendatenbank zu synchronisieren, indem er ihnen die Rollen GeoSync-Herausgeber bzw. GeoSync-Abonnent zuweist. Mit den bisherigen Skripten zur Mergereplikation war dies nicht möglich, da sie die gesamte Datenbank synchronisieren.
Weitere Informationen zu diesem Szenario finden Sie unter Satellitendatenbank als GeoSync-Abonnent.
Zuordnen von Herausgebern und Abonnenten
Richten Sie GeoSync für Ihren Herausgeber ein und weisen Sie Ihre Abonnenten mit dem Skript "ConfigureGeoSync.ps1" zu. Für die Einrichtung können auch die beim Installieren von Environment Manager bereitgestellten Cmdlets verwendet werden. Einige Aktionen wie etwa das Hinzufügen von neuen Abonnenten zu vorhandenen Herausgebern können nur mit diesen Cmdlets ausgeführt werden.
Weitere Informationen zu GeoSync-Cmdlets und deren Verwendung in generierten Skripten finden Sie unter GeoSync-Cmdlets.
Datum in der SQL-Standardsprache
Das Standarddatumsformat des SQL-Konfiguriererkontos muss dem US-amerikanischen Datumsformat entsprechen (MM/TT/JJJJ).
Zugrundeliegende AQL-Skripte benötigen das US-amerikanische Datumsformat. Alternative Datumsformate können dazu führen, dass das Skript "ConfigureGeoSync.ps1" fehlschlägt und eine Fehlermeldung angezeigt wird.
Die Einstellung der Kontosprache des Konfigurierers kann mit der Option "Microsoft SQL Server Management Studio > Sicherheit > Anmeldungen > [Konfiguriererkonto] > Rechtsklick Eigenschaften > Allgemeine Seite > Standardsprache" angezeigt werden.
Nähere Informationen dazu finden Sie in diesem Artikel.
SQL Express-Benutzer: Das TCP/IP-Protokoll muss im SQL Server-Konfigurations-Manager aktiviert werden, bevor der folgende Vorgang ausgeführt wird. Dies gilt sowohl für Herausgeber als auch Abonnenten.
- Führen Sie die Windows PowerShell als Administrator aus.
- Geben Sie
cd "C:\Programme\AppSense\Environment Manager\Personalization Server\Support"
ein, um den Speicherort für die Skripte festzulegen. - Geben Sie
.\ConfigureGeoSync.ps1
ein. - Geben Sie folgende Daten ein, wenn Sie dazu aufgefordert werden:
- Herausgeberserver\Instanz
- Name der Herausgeberdatenbank
- Konfiguriererkonto – Schließen Sie bei Verwendung von Windows-Anmeldeinformationen den Namen der Domäne ein und lassen Sie dieses Feld leer, um den aktuell angemeldeten Benutzer zu verwenden.
- Anzeigename des Herausgebers – Dieser Name ist optional. Geben Sie keinen Namen ein, wenn Sie den SQL-Servernamen verwenden möchten.
- Abonnentenserver\Instanz
- Name der Abonnentendatenbank
- Anzeigename des Abonnenten – Dieser Name ist optional. Geben Sie keinen Namen ein, wenn Sie den SQL-Servernamen verwenden möchten.
- Dienstekonto – Geben Sie den Domänennamen an, wenn Sie die Anmeldeinformationen von Windows verwenden.
Bei Erfolg wird eine Bestätigung angezeigt, die darauf hinweist, dass die Konfiguration abgeschlossen ist. Bei Bedarf können weitere Abonnenten konfiguriert werden.
-
Geben Sie
J
ein, um einen weiteren Abonneten hinzuzufügen, oderN
, um den Vorgang zu beenden.
Konfigurieren von GeoSync für eine Personalisierungsgruppe
Wählen Sie Abonnenten für Personalisierungsgruppen aus, fügen Sie Bedingungen hinzu und konfigurieren Sie Synchronisationsarten.
-
Wählen Sie eine Personalisierungsgruppe aus.
Wenn GeoSync erfolgreich konfiguriert wurde, sollte die Registerkarte "GeoSync" angezeigt werden. Eventuell müssen Sie dazu die Environment Manager-Konfiguration aktualisieren.
- Wählen Sie die Registerkarte GeoSync aus.
-
Klicken Sie auf Hinzufügen und wählen Sie die gewünschten Abonnenten aus der Dropdownliste "Anzeigename" aus.
Alle konfigurierten Abonnenten können ausgewählt werden.
- Markieren Sie bei Bedarf das Kontrollkästchen Nur Konfiguration.
-
Optional können Sie Benutzerbedingungen zur Personalisierungsgruppe hinzufügen.
So kann die Synchronisierung zusätzlich zu den Zugehörigkeitsregeln für die Personalisierungsgruppen weiter eingegrenzt werden.
-
Klicken Sie auf Änderungen speichern.
GeoSync wird nun für die Personalisierungsgruppe eingerichtet.
Verwalten von Synchronisierungen und Zeitplänen
Konfigurieren, bearbeiten und stornieren Sie Synchronisierungspläne für Abonnenten oder starten Sie eine manuelle Synchronisierung.
- Stellen Sie auf der Environment Manager-Konsole eine Verbindung zum Personalisierungsserver für Ihren Herausgeber her.
-
Wählen Sie Verwalten > GeoSync aus.
Im GeoSync-Dialog werden die verfügbaren Abonnenten angezeigt. Alle bereits für GeoSync eingerichteten Personalisierungsgruppen sind neben dem Abonnenten aufgelistet. Der Dialog zeigt außerdem den Status der Synchronisierung, die Daten der letzten und der nächsten geplanten Synchronisierung und die Art der Synchronisierung für die einzelnen Abonnenten.
- Klicken Sie auf die Auslassungszeichen für einen Abonnenten und wählen Sie die gewünschte Option aus:
- Synchronisieren – Initiiert eine sofortige Synchronisierung der Daten und der Konfiguration für den ausgewählten Abonnenten.
- Nur Konfiguration synchronisieren – Initiiert eine sofortige Synchronisierung nur für die Konfiguration.
Synchronisierung planen – Legen Sie den Startzeitpunkt fest. Definieren Sie außerdem, ob die Synchronisierung einmal oder alle 24 Stunden zur festgelegten Zeit ausgeführt werden soll.
Wenn ein Plan für einen Abonnenten vorhanden ist, stehen Optionen zum Bearbeiten und Abbrechen zur Verfügung.
Sichern und Wiederherstellen von GeoSync-Datenbanken
Für die Vorgänge zum Erstellen eines Backups und zur Wiederherstellung einer GeoSync-basierten Personalisierungsserver-Datenbank sind mehr Schritte erforderlich als bei nicht GeoSync-basierten Personalisierungsservern. Vom Datenbankhauptschlüssel, der für die Verschlüsselung von Daten in der Datenbank verwendet wird, muss ein Backup erstellt werden, das ggf. abhängig von den jeweiligen Bedingungen beim Wiederherstellen der Datenbank benötigt wird. Wenn eine GeoSync-basierte Datenbank auf einer anderen SQL Server-Instanz wiederhergestellt wird, sind ein umfassender Reset und eine Neukonfigurierung erforderlich, da für die Datenbank spezifische Server-, Instanz- und Datenbanknamen in den Synchronisierungseinstellungen verwendet werden.
Es wird empfohlen, die Herausgeber- und alle Abonnentendatenbanken durch ein gemeinsames Backup zu sichern und wiederherzustellen.
Unterstützung für GeoSync AlwaysOn
In Environment Manager 2020.2 wurde das Skript "ConfigureGeoSync.ps1" dahingehend aktualisiert, dass AlwaysOn-Architekturen unterstützt werden. Das Skript erkennt nunmehr automatisch, ob es sich beim Hostcomputer um eine primäre Replikation von AlwaysOn handelt und wird dementsprechend ausgeführt.
Mit dem neuen Cmdlet EMPSPublisher kann eine GeoSync-Herausgeberdatenbank eingerichtet werden, die Teil einer AlwaysOn-Verfügbarkeitsgruppe ist. Weitere Informationen dazu finden Sie unter GeoSync-Cmdlets.
Das Cmdlet umfasst zwei spezifische Parameter:
• SecondaryReplicaServers – Mit diesem Parameter können Sie sekundäre Repliken festlegen. Anschließend fügt das Cmdlet die Anmeldeinformationen für den Datenbankhauptschlüssel aus der primären Replik zu allen festgelegten sekundären Repliken hinzu. So können die Anmeldeinformationen für den Hauptschlüssel nach einem Failover dekodiert werden.
•DatabaseMasterKeyPassword – Mit diesem Parameter können Sie das Kennwort für den Datenbankhauptschlüssel festlegen, der zum Verschlüsseln der Anmeldeinformationen verwendet wird.
Es ist wichtig, dieses Kennwort zu speichern, insbesondere in den folgenden Szenarien:
•Neue Repliken können nach der Initialeinrichtung von GeoSync nur dann hinzugefügt werden, wenn das Kennwort für den Datenbankhauptschlüssel bekannt ist.
•Wenn GeoSync entfernt wird, verbleiben die Anmeldeinformationen in der Datenbank. Die Anmeldeinformationen können nur dann entfernt werden, wenn das ursprüngliche Kennwort bekannt ist.
Erstellen eines Backups der GeoSync-Datenbanken
- Erstellen Sie von jeder Abonnentendatenbank ein Backup.
- Erstellen Sie ein Backup von der Herausgeberdatenbank.
- Wenn Sie von allen Datenbanken ein Backup erstellt haben, erstellen Sie nach folgendem Verfahren ein Backup des Hauptschlüssels für die Herausgeberdatenbank in einer Datei:
- Stellen Sie mit SQL Management Studio eine Verbindung zur SQL Server-Instanz mit der Herausgeberdatenbank her.
- Erstellen Sie eine neue Abfrage für die Herausgeberdatenbank.
- Wählen Sie sicheres Kennwort, um die Backupdatei zu verschlüsseln. Dieses Kennwort ist zum Wiederherstellen des Datenbankhauptschlüssels erforderlich und unterliegt komplexen Prüfungen.
Führen Sie den SQL-Befehl
BACKUP MASTER KEY
aus. Beispiel:BACKUP MASTER KEY TO FILE = 'c:\backup\DatabaseMasterKey_PersonalizationServer.bak
'ENCRYPTION BY PASSWORD = 'ruygn@KiHHas14m;%qG';
- Kopieren Sie die Datenbankbackups und die Backupdatei mit dem Datenbankhauptschlüssel an einen sicheren Backupspeicherort.
Wiederherstellen der GeoSync-Datenbanken
Wenn die Personalisierungsserver-Datenbanken auf anderen SQL Server-Instanzen wiederhergestellt werden sollen oder wenn eine Datenbank beim Wiederherstellen umbenannt wurde, müssen zusätzliche Schritte durchgeführt werden. Beide Vorgänge sind unten beschrieben.
Wiederherstellen auf den gleichen SQL Server-Instanzen
Verwenden Sie diesen Vorgang, wenn alle Herausgeber- und Abonnentendatenbanken auf den gleichen SQL Server-Instanzen wiederhergestellt werden, auf denen das Backup von ihnen erstellt wurde.
- Suchen Sie die Datenbankbackups und die Backupdatei mit dem Datenbankhauptschlüssel.
- Stellen Sie alle Abonnentendatenbanken anhand ihrer Backups wieder her.
- Stellen Sie die Herausgeberdatenbank anhand ihres Backups wieder her.
- Aktivieren Sie den Service Broker nach der Wiederherstellung auf der SQL Server-Instanz des Herausgebers. Gehen Sie dazu wie folgt vor:
- Stellen Sie mit SQL Management Studio eine Verbindung zu der SQL Server-Instanz her, die die Herausgeberdatenbank enthält.
- Erstellen Sie eine neue Abfrage für die Herausgeberdatenbank.
Aktivieren Sie den Server Broker mit dem für Ihre Anforderungen passenden Befehl:
- Für diesen Befehl ist exklusiver Zugriff auf die Datenbank erforderlich. Alle anderen Verbindungen zur wiederhergestellten Datenbank haben selbst im Ruhezustand eine gemeinsame Sperre, mit der die Ausführung von ALTER DATABASE verhindert wird. Beenden Sie alle Verbindungen zur Datenbank, damit der Vorgang abgeschlossen werden kann:
ALTER DATABASE [PersonalizationServerDatabaseName] SET ENABLE_BROKER
- Wenn noch aktive Verbindungen zur Datenbank bestehen, wird mit dem folgenden Befehl ein Rollback aller aktuellen Transaktionen durchgeführt und alle vorhandenen Sitzungen werden geschlossen:
ALTER DATABASE [PersonalizationServerDatabaseName] SET ENABLE_BROKER WITH ROLLBACK IMMEDIATE
- Mit dem folgenden Befehl wird eine neue Server Broker-GUID erstellt. Mit diesem Befehl werden alle Meldungen in der Warteschlange gelöscht:
ALTER DATABASE [PersonalizationServerDatabaseName] SET NEW_BROKER WITH ROLLBACK IMMEDIATE
- Für diesen Befehl ist exklusiver Zugriff auf die Datenbank erforderlich. Alle anderen Verbindungen zur wiederhergestellten Datenbank haben selbst im Ruhezustand eine gemeinsame Sperre, mit der die Ausführung von ALTER DATABASE verhindert wird. Beenden Sie alle Verbindungen zur Datenbank, damit der Vorgang abgeschlossen werden kann:
- Stellen Sie den Datenbankhauptschlüssel anhand der Backupdatei wieder her. Gehen Sie dazu wie folgt vor:
- Stellen Sie mit SQL Management Studio eine Verbindung zu der SQL Server-Instanz her, die die Herausgeberdatenbank enthält.
- Erstellen Sie eine neue Abfrage für die Herausgeberdatenbank.
Führen Sie den folgenden Befehl RESTORE MASTER KEY SQL für die Herausgeberdatenbank aus. Das Entschlüsselungskennwort ist das im Befehl BACKUP MASTER KEY SQL verwendete Kennwort. Beispiel:
RESTORE MASTER KEY
FROM FILE = 'c:\backup\DatabaseMasterKey_PersonalizationServer.bak'
DECRYPTION BY PASSWORD = 'ruygn@KiHHas14m;%qG'
ENCRYPTION BY PASSWORD = 'Gq%;m41saHHiK@ngyur'
FORCE;
SQL Server verwendet das Verschlüsselungskennwort, um den Datenbankhauptschlüssel erneut zu verschlüsseln. Es muss nicht gespeichert werden.
Schritt 5 ist nicht immer erforderlich, wenn der Hauptschlüssel des Dienstes seit dem letzten Backup nicht geändert wurde. In solchen Fällen wird durch die Ausführung dieses Befehls keine Fehlermeldung ausgegeben. Stattdessen berichtet SQL Server: Der alte und der neue Hauptschlüssel sind identisch. Es ist keine Neuverschlüsselung der Daten erforderlich.
Wiederherstellen auf einer anderen SQL Server-Instanz
Verwenden Sie diesen Vorgang, wenn eine der Herausgeber- oder Abonnentendatenbanken auf einer anderen SQL Server-Instanz wiederhergestellt wird oder der Name einer Datenbank geändert wurde.
- Führen Sie alle Schritte in Wiederherstellen auf den gleichen SQL Server-Instanzen aus.
- Rufen Sie für die Herausgeber- und jede der Abonnentendatenbanken das PowerShell-Cmdlet "Reset-EMPSGeoSyncDatabase" auf, um die alten GeoSync-Einstellungen aus den einzelnen Datenbanken zu löschen. Weitere Informationen dazu und zum Ausführen dieses Befehls finden Sie unter GeoSync-Cmdlets.
- Richten Sie GeoSync mit den in Zuweisen von Herausgebern und Abonnenten beschriebenen Schritten ein.
- Konfigurieren Sie die erforderlichen Abonnenten für die einzelnen Personalisierungsgruppen. Führen Sie dazu die Schritte in Konfigurieren von GeoSync für eine Personalisierungsgruppe aus.
- Konfigurieren Sie die Einstellungen für den GeoSync-Plan mit den in Verwalten von Synchronisierungen und Zeitplänen beschriebenen Schritten.