Configurer Distributed Replay pour l’Assistant Expérimentation de base de données

Remarque

Cet outil sera mis hors service le 15 décembre 2024. Nous cesserons de prendre en charge cet outil pour tous les problèmes qui pourront survenir et nous ne publierons plus de correctifs de bogues ni de mises à jour supplémentaires.

L’Assistant Expérimentation de base de données (DEA) utilise les outils Distributed Replay de l’installation de SQL Server pour relire une trace capturée sur un environnement de test mis à niveau. Nous vous recommandons d’effectuer une série de tests à l’aide d’un petit fichier de trace avant d’effectuer une relecture complète pour garantir une relecture appropriée des requêtes.

Configuration requise pour Distributed Replay

  • Un espace disque dur supplémentaire de 78 % est nécessaire pour créer des fichiers IRF sur l’ordinateur du contrôleur Distributed Replay.
  • 200 Mo ou 512 Mo correspond à la taille de substitution de trace idéale qu’il convient d’utiliser pour capturer les traces de production ou de performances.
  • La configuration minimale requise pour l’UC et la RAM pour le contrôleur Distributed Replay et les ordinateurs clients sont un processeur à un seul cœur avec 3,5 Go de RAM.
  • La durée de relecture est environ 1,55 fois plus longue que le temps de capture, car un contrôleur et quatre ordinateurs enfants sont utilisés pour relire la trace de production.
  • Si vous utilisez nos versions « publiées » des fichiers de définition de trace de production et de performances, et que la définition de trace de performances filtre les traces pour une base de données intéressante, l’analyse indique que la taille de trace de performances est environ 15 fois supérieure à la taille de trace de production.

Configurer un réseau virtuel ou un domaine

Distributed Replay vous oblige à utiliser des comptes communs entre les ordinateurs. En raison de cette exigence et pour des raisons de sécurité, nous vous recommandons d’exécuter Distributed Replay sur un réseau virtuel ou sur un réseau contrôlé par domaine :

  • Créez le contrôleur et les ordinateurs clients dans l’environnement.
  • Assurez-vous que le contrôleur et les ordinateurs clients peuvent effectuer un test ping sur le réseau.
  • Les ordinateurs clients Distributed Replay doivent disposer d’une connectivité à l’ordinateur cible de relecture exécutant SQL Server.

Configurer le service de contrôleur

Pour configurer le service de contrôleur :

  1. Installez le contrôleur Distributed Replay à l’aide du programme d’installation de SQL Server. Si vous avez ignoré l’étape de l’Assistant Programme d’installation de SQL Server qui configure le contrôleur Distributed Replay, vous pouvez configurer le contrôleur via le fichier de configuration. Dans une installation classique, le fichier de configuration se trouve dans C:\Program Files (x86)\Microsoft SQL Server<version>\Tools\DReplayController\DReplayController.config.

  2. Les journaux du contrôleur Distributed Replay se trouvent dans C:\Program Files (x86)\Microsoft SQL Server<version>\Tools\DReplayController\Log.

  3. Ouvrez Services.msc et accédez au service Contrôleur SQL Server Distributed Replay.

  4. Cliquez avec le bouton droit sur le service, puis cliquez sur Propriétés. Définissez le compte de service sur un compte commun au contrôleur et aux ordinateurs clients du réseau.

  5. Cliquez sur OK pour fermer la fenêtre Propriétés.

  6. Redémarrez le service Contrôleur SQL Server Distributed Replay depuis Services.msc. Vous pouvez également exécuter les commandes suivantes sur la ligne de commande pour redémarrer le service :

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

Pour plus d’options de configuration, consultez Configurer Distributed Replay.

Configurer DCOM

Cette configuration n’est requise que sur l’ordinateur du contrôleur.

  1. Ouvrez dcomcnfg.exe.

  2. Développez Services de composants>Ordinateurs>Poste de travail>Configuration DCOM.

  3. Sous Configuration DCOM, cliquez avec le bouton droit sur DReplayController, puis cliquez sur Propriétés.

  4. Sélectionnez l'onglet Sécurité .

  5. Sous Autorisations d’exécution et d’activation, cliquez sur Personnaliser, puis sur Modifier.

  6. Ajoutez l’utilisateur qui lance la relecture. Accordez à l’utilisateur les autorisations d’exécution et d’activation locale. Si l’utilisateur envisage un lancement ou une activation à distance, accordez à l’utilisateur les autorisations d’exécution à distance et d’activation à distance.

  7. Cliquez sur OK pour valider les modifications et revenir à l’onglet Sécurité.

  8. Sous Autorisations d’accès, cliquez sur Personnaliser, puis sur Modifier.

  9. Ajoutez l’utilisateur qui lance la relecture. Accordez à l’utilisateur les autorisations d’accès local. Si l’utilisateur envisage un accès à distance au service de contrôleur, accordez à l’utilisateur les autorisations d’accès à distance.

  10. Cliquez sur OK pour valider les modifications et revenir à l’onglet Sécurité.

  11. Cliquez sur OK pour valider les modifications.

  12. Redémarrez le service Contrôleur SQL Server Distributed Replay à partir de Services.msc. Vous pouvez également exécuter les commandes suivantes sur la ligne de commande pour redémarrer le service :

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

Configurer le service client

Avant de configurer le service client, utilisez des outils de mise en réseau comme un test ping pour vérifier que le contrôleur et les ordinateurs clients peuvent communiquer.

  1. Installez le client Distributed Replay à l’aide du programme d’installation de SQL Server.

  2. Ouvrez Services.msc et accédez au service client SQL Server Distributed Replay.

  3. Cliquez avec le bouton droit sur le service, puis cliquez sur Propriétés. Définissez le compte de service sur un compte commun au contrôleur et aux ordinateurs clients du réseau.

  4. Cliquez sur OK pour fermer la fenêtre Propriétés. Si vous avez ignoré l’étape de l’Assistant Programme d’installation de SQL Server pour configurer le client Distributed Replay, vous pouvez le configurer via le fichier de configuration. Dans une installation classique, le fichier de configuration se trouve dans C:\Program Files (x86)\Microsoft SQL Server<version>\Tools\DReplayClient\DReplayClient.config.

  5. Vérifiez que le fichier DReplayClient.config contient le nom de l’ordinateur du contrôleur en tant que contrôleur pour l’inscription.

  6. Redémarrez le service client SQL Server Distributed Replay à partir de Services.msc. Vous pouvez également exécuter les commandes suivantes à partir de la ligne de commande pour redémarrer le service :

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

    Les journaux du contrôleur Distributed Replay se trouvent dans C:\Program Files (x86)\Microsoft SQL Server<version>\Tools\DReplayClient\Log. Les journaux indiquent si le client peut s’inscrire auprès du contrôleur.

    Si la configuration a réussi, le journal affiche le message Inscrit auprès du contrôleur <Nom du contrôleur>.

Pour plus d’options de configuration, consultez Configurer Distributed Replay.

Configurer les outils d’administration Distributed Replay

Vous pouvez utiliser les outils d’administration Distributed Replay pour tester rapidement si Distributed Replay fonctionne correctement dans l’environnement. Tester la configuration peut être particulièrement utile dans un environnement dans lequel plusieurs ordinateurs clients sont inscrits auprès d’un contrôleur. Vous devrez peut-être installer SQL Server Management Studio (SSMS) pour obtenir ces outils d’administration.

  1. Accédez à l’emplacement d’installation de SSMS et recherchez l’outil d’administration Distributed Replay dreplay.exe et ses composants dépendants. Actuellement, SSMS 17 est la dernière version de SSMS à inclure dreplay.exe.
  2. À l’invite de commandes, exécutez dreplay.exe status -f 1.

Si les étapes précédentes ont réussi, la sortie de la console indique que le contrôleur peut voir ses clients à l’état READY.

Configurer le pare-feu pour l’accès à distance à Distributed Replay

L’accès à distance à Distributed Replay nécessite l’ouverture de ports visibles dans le domaine ou le réseau virtuel.

  1. Ouvrez Pare-feu Windows avec fonctions avancées de sécurité.
  2. Accédez à Règles de trafic entrant.
  3. Créez une nouvelle règle de pare-feu entrante pour le programme C:\Program Files (x86)\Microsoft SQL Server<version>\Tools\DReplayController\DReplayController.exe.
  4. Autorisez l’accès au niveau du domaine à tous les ports afin que DReplayController.exe puisse communiquer avec le service de contrôleur à distance.
  5. Enregistrez la règle.

Configurez les ordinateurs cibles

Deux relectures sont nécessaires pour exécuter un test A/B ou une expérience. Autrement dit, vous aurez peut-être besoin de deux instances distinctes d’installations SQL Server pour un scénario de migration.

Vous pouvez également installer les deux versions des instances SQL Server sur le même ordinateur. L’inconvénient est que vous devez vous assurer que les instances sont isolées lorsqu’une relecture est en cours.

Les étapes suivantes doivent être effectuées pour chaque relecture :

  1. Restaurez la sauvegarde de la base de données.
  2. Fournissez les autorisations pour que l’utilisateur du compte de service client accède aux bases de données sous l’instance SQL Server. Les autorisations sont requises pour que les requêtes soient exécutées sur l’instance SQL Server.
  3. Lancez la relecture.

Voir aussi