Freigeben über


Konfigurieren von Distributed Replay für den Assistenten für Datenbankexperimente

Hinweis

Dieses Tool wird am 15. Dezember 2024 ausgemustert. Wir werden dieses Tool für alle auftretenden Probleme in Zukunft nicht mehr unterstützen und keine Programmfehlerbehebung oder weitere Updates herausgeben.

Der Assistent für Datenbankexperimente (DEA) verwendet die Distributed Replay-Tools der SQL Server-Installation, um eine erfasste Ablaufverfolgung für eine upgegradete Testumgebung wiederzugeben. Es wird empfohlen, einen Testlauf mithilfe einer kleinen Ablaufverfolgungsdatei durchzuführen, bevor Sie eine vollständige Wiedergabe durchführen, um eine ordnungsgemäße Wiedergabe von Abfragen sicherzustellen.

Distributed Replay: Anforderungen

  • Zusätzliche 78 % des Festplattenspeichers sind erforderlich, um IRF-Dateien auf dem Distributed Replay-Controller-Computer zu erstellen.
  • 200 MB oder 512 MB ist die ideale Ablaufverfolgungs-Rollovergröße für die Erfassung von Produktions- oder Leistungsablaufverfolgungen.
  • Die Mindest-CPU- und RAM-Anforderungen für die Distributed Replay-Controller- und Clientcomputer sind eine Single-Core-CPU mit 3,5 GB RAM.
  • Die Wiedergabezeit dauert ungefähr 1,55-mal länger als die Erfassungszeit, da ein Controller und vier untergeordnete Computer verwendet werden, um die Produktionsablaufverfolgung wiederzugeben.
  • Wenn Sie unsere „veröffentlichten“ Versionen der Produktions- und Leistungsablaufverfolgungsdefinitionsdateien verwenden und die Leistungsablaufverfolgungsdefinition die Ablaufverfolgungen für eine Datenbank von Interesse herausfiltert, zeigt die Analyse, dass die Größe der Leistungsablaufverfolgung etwa 15-mal größer ist als die Größe der Produktionsablaufverfolgung.

Einrichten eines Virtual Networks oder einer Domäne

Distributed Replay erfordert, dass Sie allgemeine Konten auf mehreren Computern verwenden. Aufgrund dieser Anforderung und aus Sicherheitsgründen empfehlen wir, Distributed Replay in einem Virtual Network oder in einem domänengesteuerten Netzwerk auszuführen:

  • Erstellen Sie die Controller- und Clientcomputer in der Umgebung.
  • Stellen Sie sicher, dass sich die Controller- und Clientcomputer über das Netzwerk gegenseitig anpingen können.
  • Distributed Replay-Clientcomputer müssen über eine Konnektivität zum Bereitstellungszielcomputer für die Wiedergabe verfügen, auf dem SQL Server ausgeführt wird.

Einrichten des Controllerdiensts

So richten Sie den Controllerdienst ein:

  1. Installieren Sie den Distributed Replay-Controller mithilfe des SQL Server-Installers. Wenn Sie den SQL Server-Installer-Assistentenschritt übersprungen haben, der den Distributed Replay-Controller konfiguriert, können Sie den Controller über die Konfigurationsdatei konfigurieren. Bei einer typischen Installation befindet sich die Konfigurationsdatei unter C:\Programme (x86)\Microsoft SQL Server<version>\Tools\DReplayController\DReplayController.config.

  2. Protokolle des Distributed Replay-Controllers befinden sich unter C:\Programme (x86)\Microsoft SQL Server<version>\Tools\DReplayController\Log.

  3. Öffnen Sie Services.msc und gehen Sie zum SQL Server-Distributed Replay-Controller-Dienst.

  4. Klicken Sie mit der rechten Maustaste auf den Dienst und wählen Sie Eigenschaften aus. Legen Sie als Dienstkonto ein Konto fest, das für die Controller- und Clientcomputer im Netzwerk gängig ist.

  5. Wählen Sie OK aus, um das Fenster Eigenschaften zu schließen.

  6. Starten Sie den SQL Server-Distributed Replay-Controller-Dienst von Services.msc aus neu. Sie können auch die folgenden Befehle in der Befehlszeile ausführen, um den Dienst neu zu starten:

    NET STOP "SQL Server Distributed Replay Controller"
    NET START "SQL Server Distributed Replay Controller"

Weitere Konfigurationsoptionen finden Sie unter Konfigurieren von Distributed Replay.

Konfigurieren von DCOM

Diese Konfiguration ist nur auf dem Controllercomputer erforderlich.

  1. Öffnen Sie dcomcnfg.exe.

  2. Erweitern Sie Komponentendienste>Computer>Arbeitsplatz>DCOM-Konfiguration.

  3. Klicken Sie unter DCOM-Konfiguration mit der rechten Maustaste auf DReplayController und wählen Sie dann Eigenschaften aus.

  4. Wählen Sie die Registerkarte Sicherheit .

  5. Wählen Sie unter Start- und Aktivierungsberechtigungen die Option Anpassen und dann die Option Bearbeiten aus.

  6. Fügen Sie die Person hinzu, die die Wiedergabe startet. Erteilen Sie dieser Person die lokalen Start- und Aktivierungsberechtigungen. Wenn Benutzer:innen planen, remote zu starten oder zu aktivieren, erteilen Sie ihnen Remotestart- und Remoteaktivierungsberechtigungen.

  7. Wählen Sie OK aus, um die Änderungen zu übernehmen und zur Registerkarte Sicherheit zurückzukehren.

  8. Wählen Sie unter Zugriffsberechtigungen die Option Anpassen und dann die Option Bearbeiten aus.

  9. Fügen Sie die Person hinzu, die die Wiedergabe startet. Erteilen Sie dieser Person lokale Zugriffsberechtigungen. Wenn Benutzer:innen planen, remote auf den Controllerdienst zuzugreifen, erteilen Sie ihnen Remotezugriffsberechtigungen.

  10. Wählen Sie OK aus, um die Änderungen zu übernehmen und zur Registerkarte Sicherheit zurückzukehren.

  11. Wählen Sie OK aus, um die Änderungen zu übernehmen.

  12. Starten Sie den SQL Server-Distributed Replay-Controller-Dienst von Services.msc aus neu. Sie können auch die folgenden Befehle in der Befehlszeile ausführen, um den Dienst neu zu starten:

    NET STOP "SQL Server Distributed Replay Controller"
    NET START "SQL Server Distributed Replay Controller"

Einrichten des Clientcomputers

Bevor Sie den Clientdienst einrichten, verwenden Sie Netztechnologie-Tools wie Ping, um zu bestätigen, dass die Controller- und Clientcomputer kommunizieren können.

  1. Installieren Sie den Distributed Replay-Client mithilfe des SQL Server-Installers.

  2. Öffnen Sie Services.msc und gehen Sie zum SQL Server-Distributed Replay-Client-Dienst.

  3. Klicken Sie mit der rechten Maustaste auf den Dienst und wählen Sie Eigenschaften aus. Legen Sie als Dienstkonto ein Konto fest, das sowohl für den Controller- als auch für den Clientcomputer im Netzwerk gängig ist.

  4. Wählen Sie OK aus, um das Fenster Eigenschaften zu schließen. Wenn Sie den SQL Server-Installer-Assistentenschritt übersprungen haben, der den Distributed Replay-Client konfiguriert, können Sie ihn über die Konfigurationsdatei konfigurieren. Bei einer typischen Installation befindet sich die Konfigurationsdatei unter C:\Programme (x86)\Microsoft SQL Server<version>\Tools\DReplayClient\DReplayClient.config.

  5. Stellen Sie sicher, dass die Datei DReplayClient.config den Namen des Controllercomputers als Controller für die Registrierung enthält.

  6. Starten Sie den SQL Server-Distributed Replay-Client-Dienst von Services.msc aus neu. Sie können auch die folgenden Befehle in der Befehlszeile ausführen, um den Dienst neu zu starten:

    NET STOP "SQL Server Distributed Replay Client"
    NET START "SQL Server Distributed Replay Client"

    Protokolle des Distributed Replay-Controllers befinden sich unter C:\Programme (x86)\Microsoft SQL Server<version>\Tools\DReplayClient\Log. Die Protokolle geben an, ob der Client sich selbst mit dem Controller registrieren kann.

    Wenn die Konfiguration erfolgreich ist, zeigt das Protokoll die Nachricht Mit Controller <Controllername> registriert.

Weitere Konfigurationsoptionen finden Sie unter Konfigurieren von Distributed Replay.

Einrichten von Distributed Replay-Verwaltungstools

Sie können die Distributed Replay-Verwaltungstools verwenden, um schnell zu testen, ob Distributed Replay in der Umgebung ordnungsgemäß funktioniert. Das Testen der Konfiguration kann besonders in einer Umgebung hilfreich sein, in der mehrere Clientcomputer mit einem Controller registriert werden. Sie müssen möglicherweise SQL Server Management Studio (SSMS) installieren, um einige dieser Verwaltungstools zu erhalten.

  1. Gehen Sie zum SSMS-Installationsstandort und suchen Sie nach dem Distributed Replay-Verwaltungstool dreplay.exe und dessen abhängige Komponenten. Derzeit ist SSMS 17 die neueste Version von SSMS, die dreplay.exe enthält.
  2. Führen Sie in der Eingabeaufforderung dreplay.exe status -f 1 aus.

Wenn die vorhergehenden Schritte erfolgreich waren, gibt die Konsolenausgabe an, dass der Controller seine Clients in einem READY-Status sehen kann.

Konfigurieren der Firewall für Remote-Distributed Replay-Zugriff

Der Remotezugriff auf Distributed Replay erfordert das Öffnen von Ports, die innerhalb der Domäne oder des Virtual Networks sichtbar sind.

  1. Öffnen Sie Windows-Firewall mit erweiterter Sicherheit.
  2. Gehen Sie zu Eingangsregeln.
  3. Erstellen Sie eine neue eingehende Firewallregel für das Programm C:\Programme (x86)\Microsoft SQL Server<version>\Tools\DReplayController\DReplayController.exe.
  4. Gewähren Sie DReplayController.exe auf Domänenebene Zugriff auf alle Ports, um remote mit dem Controllerdienst kommunizieren zu können.
  5. Speichern Sie die Regel.

Einrichten des Bereitstellungszielcomputer

Zum Ausführen eines A/B-Tests oder eines Experiments sind zwei Wiedergaben erforderlich. Das heißt, Sie benötigen möglicherweise zwei separate Instanzen von SQL Server-Installationen für ein Migrationsszenario.

Sie können die beiden Versionen der SQL Server-Instanzen auch auf demselben Computer installieren. Eine Einschränkung besteht darin, sicherzustellen, dass die Instanzen isoliert sind, wenn eine Wiedergabe ausgeführt wird.

Die folgenden Schritte müssen für jede Wiedergabe ausgeführt werden:

  1. Stellen Sie das Backup der Datenbank wieder her.
  2. Gewähren Sie Client-Dienstkonto-Benutzer:innen Berechtigungen für den Zugriff auf die Datenbanken unter der SQL Server-Instanz. Berechtigungen sind erforderlich, damit die Abfragen in der SQL Server-Instanz ausgeführt werden können.
  3. Starten Sie die Wiedergabe.

Siehe auch