Alte SafeKit Milestone-Konfiguration
Schritt-für-Schritt-Konfiguration der SafeKit/Milestone XProtect-Lösung
![]()
Seien Sie vorsichtig, es sind einige spezifische Schritte erforderlich, um die virtuelle IP-Adresse zu konfigurieren, da sonst das Failover nicht funktioniert.
1. Starten Sie die SafeKit Konsole
- Starten Sie die Webkonsole in einem Browser auf einem Clusterknoten, indem Sie eine Verbindung zu
http://localhost:9010herstellen. - Geben Sie als Benutzernamen
adminund das während der Installation festgelegte Passwort ein.
Sie können die Konsole auch in einem Browser auf einer Workstation außerhalb des Clusters ausführen.
![]()
Die Konfiguration von SafeKit erfolgt auf beiden Knoten über einen einzigen Browser.
![]()
Informationen zur Sicherung der Webkonsole finden Sie unter „Sichern der SafeKit-Webkonsole“ im Benutzerhandbuch.

2. Knotenadressen konfigurieren
- Geben Sie die IP-Adressen der Knoten ein.
- Klicken Sie anschließend auf
Apply, um die Konfiguration zu speichern.
![]()
Wenn die Hintergrundfarbe node1 oder node2 rot ist, überprüfen Sie die Konnektivität des Browsers zu beiden Knoten und überprüfen Sie die Firewall auf beiden Knoten zur Fehlerbehebung.
![]()
Dieser Vorgang platziert die IP-Adressen in der Datei cluster.xml auf beiden Knoten (weitere Informationen im Training mit der Befehlszeile).

3. Modul auswählen
- Klicken Sie auf der Registerkarte „Konfiguration“ auf das Modul „.safe“.
![]()
Die Konsole findet xxx.safe im Verzeichnis „Application_Modules/demo/“ auf der Serverseite, wenn Sie während der Installation ein Modul dort abgelegt haben.

4. Modul konfigurieren
- Wählen Sie einen automatischen Start des Moduls beim Hochfahren ohne Verzögerung.
- Normalerweise haben Sie ein einzelnes Heartbeat Netzwerk, über das die Replikation erfolgt. Bei Bedarf können Sie jedoch ein privates Netzwerk definieren.
- Überprüfen Sie, ob die replizierten Verzeichnisse auf beiden Knoten installiert sind und die Anwendungsdaten enthalten.
Für eine Datenbank ist die Replikation von Daten und Protokollen erforderlich.
Sie können bei Bedarf neue replizierte Verzeichnisse hinzufügen. - Geben Sie eine virtuelle IP-Adresse ein. Eine virtuelle IP-Adresse ist eine Standard-IP-Adresse im selben IP-Netzwerk (dasselbe Subnetz) wie die IP-Adressen beider Knoten.
Anwendungsklienten müssen mit der virtuellen IP-Adresse (oder dem mit der virtuellen IP-Adresse verknüpften DNS-Namen) konfiguriert werden.
Die virtuelle IP-Adresse wird im Fehlerfall automatisch umgeschaltet. start_primundstop_primmüssen das Starten und Stoppen der Anwendung enthalten.
Sie können neue Dienste in diesen Skripten hinzufügen.
Überprüfen Sie, ob die Namen der Dienste in diesen Skripten mit denen übereinstimmen, die auf beiden Knoten installiert sind, andernfalls ändern Sie sie in den Skripten.- Stoppen Sie die in
start_primkonfigurierten Dienste auf beiden Knoten. - Legen Sie unter Windows und auf beiden Knoten mit dem Windows-Dienstemanager
Boot Startup Type = Manualfür alle instart_primregistrierten Dienste auf „Manuell“ fest (SafeKit steuert den Start der Dienste instart_prim).
![]()
Wenn sich SQL auf dem Management-Server befindet:
- Die SQL-Systemdatenbanken (wie master.mdf und mastlog.ldf) müssen sich in denselben Verzeichnissen auf beiden Knoten befinden. Die Verzeichnisse müssen als repliziert konfiguriert sein.
- SQL muss auch am gleichen Ort im Dateisystem auf beiden Knoten installiert sein, da sich die schreibgeschützte SQL-Ressourcendatenbank in der Binärdatei befindet und für das Failover erforderlich ist. Diese Datenbank muss nicht repliziert werden.
- Die SQL-Milestone-Datenbanken (.mdf und .ldf) müssen sich auf beiden Knoten in denselben Verzeichnissen befinden. Die Verzeichnisse müssen als repliziert konfiguriert sein. Milestone-Datenbanken sind gemäß diesem Artikel wie folgt:
![]()
Beachten Sie, dass ein Prozessname, der im Process Checker angezeigt wird, im Falle eines Fehlers mit einer Neustartaktion überwacht wird. Die Konfiguration eines falschen Prozessnamens führt dazu, dass das Modul direkt nach dem Start beendet wird.
![]()
Die Schaltfläche „Anwenden“ meldet die Konfiguration in den Dateien userconfig.xml, start_prim und stop_prim auf beiden Knoten (weitere Informationen im Training mit der Befehlszeile).

5. Erfolgreiche Konfiguration überprüfen
- Überprüfen Sie die Erfolgsmeldung (grün) auf beiden Knoten und klicken Sie auf „Weiter“.

6. Starten Sie nichts und klicken Sie auf die Schaltfläche „Schließen“
![]()
Starten Sie nichts und klicken Sie auf die Schaltfläche „Schließen“, da vor dem Start eine spezielle Konfiguration der virtuellen IP-Adresse erforderlich ist

7. Gehen Sie zum Desktop von Knoten 1 und legen Sie die virtuelle IP-Adresse in den internen Milestone-Dateien fest
![]()
Seit Milestone 2022 R3 ist dieser Schritt nicht mehr sinnvoll und wird in einem nächsten Schritt automatisch mit " Server Configurator - Server registrieren - http://virtual-IP" durchgeführt.
Führen Sie in einer Powershell-Befehlszeile als Administrator auf Knoten 1 dieses Skript aus:
c:/safekit/modules//bin/UpdateAuthServerUri.ps1
![]()
Dieses Skript legt die virtuelle IP-Adresse in zwei internen Milestone Dateien fest:
C:\ProgramData\Milestone\XProtect Management Server\ServerConfig.xml
<AuthorizationServerUri>http://**< virtuelle IP-Adresse>**/IDP</AuthorizationServerUri>
C:\Program Files\Milestone\XProtect Management Server\IIS\IDP\appsettings.json
"Authority": " http://**< <virtuelle-IP>**/IDP"
![]()
Wir gehen in diesem Schritt davon aus, dass die virtuelle IP-Adresse in den vorherigen Schritten korrekt konfiguriert wurde (das Skript verwendet die virtuelle IP-Adresse, die in der SafeKit Konsole eingegeben und in userconfig.xml gespeichert wurde).
![]()
8. Starten Sie Knoten 1 als primären Knoten in der Konsole, den Knoten mit den aktuellsten Daten
Wir gehen ab Schritt 7 davon aus, dass Knoten 1 über die aktuellsten replizierten Verzeichnisse verfügt.
Erzwingen Sie den Start von Knoten 1 als primären Knoten. Wenn Knoten 2 gestartet wird, werden alle Daten von Knoten 1 auf Knoten 2 kopiert.
![]()
Wenn Sie die falsche Wahl treffen, laufen Sie Gefahr, veraltete Daten auf beiden Knoten zu synchronisieren.
![]()
Es wird auch davon ausgegangen, dass die Anwendung auf Knoten 1 gestoppt wird, damit SafeKit die Replikationsmechanismen installiert und dann die Anwendung im start_prim Skript startet.

9. Warten Sie auf den Übergang zu ALONE (grün)
- Knoten 1 sollte den ALONE Zustand (grün) erreichen, was bedeutet, dass das
start_prim-Skript auf Knoten 1 ausgeführt wurde.
![]()
Wenn der Status ALONE (grün) ist und die Anwendung nicht gestartet wurde, überprüfen Sie die Ausgabemeldungen von start_prim im Anwendungsprotokoll von Knoten 1.
![]()
Wenn Knoten 1 den Zustand ALONE (grün) nicht erreicht, analysieren Sie die Ursache mithilfe des Modulprotokolls von Knoten 1.
![]()
Wenn sich der Cluster im Zustand WAIT (red) not uptodate - STOP (red) not uptodate, stoppen Sie den WAIT Knoten und erzwingen Sie seinen Start als primärer Knoten.

10. Stoppen Sie auf dem Desktop von Knoten 1 den Dienst, registrieren Sie ihn dann auf der virtuellen IP-Adresse und starten Sie den Milestone Management Server neu
Führen Sie die folgenden Punkte auf Knoten 1 gemäß dem Menü im Bild aus:
- Klicken Sie mit der rechten Maustaste auf das Symbol Milestone Management Servers in der Taskleiste.
- Management-Server-Dienst beenden
- Wählen Sie dann Server Configurator … und registrieren Sie die virtuelle IP-Adresse.
- Management-Server-Dienst starten
![]()
Dieses Verfahren registriert den Management-Server von Knoten 1 in der SQL-Datenbank (die auf Knoten 1 läuft) über eine Verbindung zur virtuellen Adresse.
![]()
Vor der Version Milestone 2022 R3 hat die Registrierung möglicherweise die Konfiguration der virtuellen IP-Adresse in den internen Milestone Dateien gelöscht. Wiederholen Sie in diesem Fall Schritt 7.
![]()
Hinweis: Um eine Version vor Milestone 2020 R2 zu registrieren, verwenden Sie „Verschlüsselungseinstellungen ändern…“.

11. Legen Sie auf dem Desktop von Knoten 1 mit Milestone Management Client die virtuelle IP-Adresse in den URLs für Dienste und Netzwerk fest
![]()
Seit Milestone 2022 R3 ist dieser Schritt nicht mehr sinnvoll und wird automatisch mit " Server Configurator - Registrieren von Servern - http://virtual-IP".
Dem Bild zufolge:
- Starten Sie Milestone XProtect Management Client auf Knoten 1.
- Wählen Sie im Menü „Extras“ die Option „Registrierte Dienste“ aus.
- Wählen Sie im Fenster „Registrierte Dienste hinzufügen/entfernen“ einen Dienst in der Liste aus und klicken Sie auf „Bearbeiten“.
- Ändern Sie im Fenster „Registrierten Dienst bearbeiten“ die URL-Adresse des Dienstes in dieselbe URL-Adresse, die jedoch die virtuelle IP-Adresse enthält.
- Wiederholen Sie diese Schritte für alle im Fenster aufgelisteten Dienste.
- Klicken Sie im selben Fenster auf Netzwerk.
- Ändern Sie im Fenster „Netzwerkkonfiguration“ die URL-Adresse des Servers in dieselbe URL-Adresse, die jedoch die virtuelle IP-Adresse enthält.

12. Legen Sie auf dem Desktop von Knoten 1 mit Milestone Management Client die Administratorrollen fest, um ein korrektes Failover zu gewährleisten
![]()
Wenn Milestone „ Windows-Authentifizierung“ mit einem Active Directory konfiguriert wurde, werden der Benutzer/das Passwort im externen AD auf dem sekundären Knoten nach einem Failover abgerufen, sodass keine spezielle Konfiguration erforderlich ist.
Wenn Sie den Milestone XProtect Management Client starten, müssen Sie sich entweder mit " Windows Authentifizierung" oder “Basisauthentifizierung” authentifizieren (klicken Sie hier, um den Screenshot zu sehen).
Öffnen Sie Milestone XProtect Management Client und gehen Sie zu Sicherheit/Rollen (siehe Abbildung)
- Legen Sie die Windows Gruppe BUILTIN\Administrators fest. So kann sich ein Administratorbenutzer auf dem Sekundärserver mit „ Windows Authentifizierung“ mit Milestone auf dem Sekundärserver verbinden.
- Erstellen Sie einen Benutzer mit „Basisauthentifizierung“ (im Bild als Admin), um sicherzustellen, dass Sie sich nach einem Failover am sekundären Knoten erneut authentifizieren. Bei der „Basisauthentifizierung“ werden Benutzername/Passwort in der SQL-Datenbank gespeichert und nach einem Failover auf dem sekundären Knoten abgerufen.
![]()
Durch das Festlegen der Gruppe BUILTIN\Administrators können Sie sich am sekundären Knoten mit einem lokalen Windows Administrator authentifizieren.
Andernfalls ist nach einem Failover keine Authentifizierung mit einem lokalen Windows Konto auf dem sekundären Server möglich.
Das liegt daran, dass die BUILTIN\Administrators-Gruppe auf beiden Knoten dieselbe SID hat. Für andere lokale Gruppen oder lokale Benutzer ist die Authentifizierung auf dem sekundären Knoten nicht möglich, da die SIDs zwischen beiden Knoten unterschiedlich sind, auch wenn sie denselben Namen haben.

13. Gehen Sie zum Desktop von Knoten 2 und legen Sie die virtuelle IP-Adresse in den internen Milestone Dateien fest
![]()
Seit Milestone 2022 R3 ist dieser Schritt nicht mehr sinnvoll und wird in einem nächsten Schritt automatisch mit " Server Configurator - Server registrieren - http://virtual-IP" durchgeführt.
Führen Sie in einer Powershell-Befehlszeile als Administrator auf Knoten 2 dieses Skript aus:
c:/safekit/modules/milestone/bin/UpdateAuthServerUri.ps1
![]()
Dieses Skript legt die virtuelle IP-Adresse in zwei internen Milestone Dateien fest:
C:\ProgramData\Milestone\XProtect Management Server\ServerConfig.xml
<AuthorizationServerUri>http://**< virtuelle IP-Adresse>**/IDP</AuthorizationServerUri>
C:\Program Files\Milestone\XProtect Management Server\IIS\IDP\appsettings.json
"Authority": " http://**< <virtuelle-IP>**/IDP"
14. Registrieren Sie auf dem Desktop von Knoten 2 den Verwaltungsserver unter der virtuellen IP-Adresse
- Wählen Sie im Taskleistenbereich von Knoten 2 Server Configurator aus und registrieren Sie ihn auf der virtuellen IP-Adresse (siehe Abbildung).
- Beenden Sie dann den Management-Server-Dienst.
![]()
Das Konto des Benutzers, der die Registrierung auf Knoten 2 ausführt, muss über die Administratorrolle in Milestone auf Knoten 1 verfügen.
Wenn der lokale Administrator auf Knoten 2 die Registrierung vornimmt, muss die integrierte Windows Gruppe BUILTIN\Administrators in Schritt 12 im Management Client unter Sicherheit/Rollen festgelegt worden sein. Andernfalls funktioniert die Registrierung nicht.
![]()
Dieses Verfahren registriert den Management-Server von Knoten 2 in der SQL-Datenbank (die auf Knoten 1 läuft) über eine Verbindung zur virtuellen Adresse.
![]()
Bei einer Version von Milestone vor 2022 R3 hat die Registrierung möglicherweise die Konfiguration der virtuellen IP-Adresse in den internen Milestone Dateien gelöscht. Wiederholen Sie in diesem Fall Schritt 13.

15. Startknoten 2
- Starten Sie Knoten 2 mit seinem Kontextmenü.
- Warten Sie auf den SECOND (grünen) Zustand.
![]()
Knoten 2 bleibt im SECOND (magentafarbenen) Zustand, während die replizierten Verzeichnisse resynchronisiert werden (Kopie von Knoten 1 auf Knoten 2).
Dies kann je nach Größe der in replizierten Verzeichnissen zu resynchronisierenden Dateien und der Netzwerkbandbreite einige Zeit dauern.
Um den Fortschritt des Kopiervorgangs zu sehen, rufen Sie das Modulprotokoll von Knoten 2 mit der Option „verbose“ auf und vergessen Sie nicht, das Fenster zu aktualisieren.

16. Überprüfen Sie, ob der Cluster betriebsbereit ist
- Überprüfen Sie, ob das Cluster grün/grün ist und die Dienste auf dem PRIM-Knoten ausgeführt werden und nicht auf dem SECOND-Knoten.
In diesem Zustand werden nur Änderungen innerhalb von Dateien in Echtzeit repliziert.
![]()
Komponenten, die Clients von Diensten sind, müssen mit der virtuellen IP-Adresse konfiguriert werden. Die Konfiguration kann mit einem DNS-Namen erfolgen (wenn ein DNS-Name erstellt und der virtuellen IP-Adresse zugeordnet wurde).

17. Konfigurieren Sie die virtuelle IP-Adresse in den Aufzeichnungsservern
Installieren Sie entweder die Aufzeichnungsserver und geben Sie die virtuelle IP-Adresse in der Installations-URL an.
Oder legen Sie auf der Seite der Aufzeichnungsserver die virtuelle IP-Adresse in den folgenden Feldern fest:
C:\ProgramData\Milestone\XProtect Recording Server\RecorderConfig.xml <server><address> <server><authorizationserveraddress>Verbinden Sie den Milestone Management Client und den Milestone Smart Client mit der virtuellen IP-Adresse.
18. Management Client und Smart Client funktionieren nach dem Knotenwechsel nicht ordnungsgemäß
In einem geclusterten XProtect Management Server-Setup zeigen Smart Client und Management Client nach einem Knotenwechsel verschiedene Probleme an. Das Problem hängt mit Token zusammen, die vor und nach dem Knotenwechsel auf verschiedenen Knoten generiert werden, sowie mit Problemen beim Zugriff auf bestimmte Zertifikate, die für die Token-Validierung erforderlich sind. Eine Lösung ist verfügbar (für die Versionen 2022 R3 bis 2023 R2, siehe Milestone KB).
Das Problem wird in Milestone 2023 R3 behoben.
18. Tests
- Stoppen Sie den PRIM-Knoten, indem Sie im Kontextmenü nach unten scrollen und auf „Stoppen“ klicken. Verwenden Sie für einen ersten Test keinen Swap (siehe unten, warum).
- Überprüfen Sie, ob auf dem SECOND Knoten ein Failover stattfindet, der ALONE (grün) sein sollte.
- Überprüfen Sie mit Microsoft Management Console (MMC) das Failover der Dienste (gestoppt auf Knoten 1 im
stop_prim-Skript und gestartet auf Knoten 2 imstart_prim-Skript).
![]()
Wenn Ihr System PRIM-SECOND ist und alles ordnungsgemäß funktioniert, führen Sie einen Stopp auf PRIM durch und überprüfen Sie, ob alles korrekt auf node2 funktioniert, der dann ALONE wird. Wenn alles in Ordnung ist, starten Sie node1, wodurch die replizierten Verzeichnisse von node2 erneut synchronisiert werden.
Wenn etwas schiefgeht, stoppen Sie node2 und erzwingen Sie den Start von node1 als primären Knoten, der mit seinen lokal intakten Daten zum Zeitpunkt des Stopps neu gestartet wird.
Der Swap beinhaltet einen Stop-Start des PRIM, der die Daten von node2 unmittelbar nach dem Stopp neu synchronisiert, sodass keine Möglichkeit für einen Neustart mit intakten Daten besteht, wenn ein Problem mit der Replikationskonfiguration vorliegt.
![]()
Wenn die Anwendung auf Knoten 2 nicht gestartet wird, während der Status ALONE (grün) ist, überprüfen Sie die Ausgabemeldungen des start_prim-Skripts im Anwendungsprotokoll von Knoten 2.
![]()
Wenn ALONE (grün) nicht erreicht wird, analysieren Sie dies mit dem Modulprotokoll von Knoten 2.
![]()
Weitere Informationen zu den Tests finden Sie im Benutzerhandbuch
