Configurare la Riproduzione distribuita con Database Experimentation Assistant
Nota
Questo strumento è stato ritirato 15 dicembre 2024. Abbiamo smesso di supportare questo strumento per eventuali problemi che si verificano e non emetterà correzioni di bug o altri aggiornamenti.
Database Experimentation Assistant (DEA) usa gli strumenti di Riproduzione distribuita dall'installazione di SQL Server per riprodurre una traccia acquisita in un ambiente di test aggiornato. È consigliabile eseguire un test usando un piccolo file di traccia prima di eseguire una riproduzione completa per garantire una riproduzione corretta delle query.
Requisiti di Riesecuzione distribuita
- Sono necessari ulteriori 78% di spazio su disco rigido per creare i file IRF sul controller di Riesecuzione Distribuita.
- 200 MB o 512 MB è la dimensione ideale per il rollover della traccia da usare per acquisire tracce di produzione o di prestazioni.
- I requisiti minimi di CPU e RAM per il controller di Riesecuzione distribuita e i computer client sono una CPU a core singolo con 3,5 GB di RAM.
- Il tempo di riproduzione richiede circa 1,55 volte il tempo di acquisizione per via dell'utilizzo di un controller e quattro macchine secondarie per riprodurre la traccia di produzione.
- Se si utilizzano le versioni "pubblicate" dei file di definizione delle tracce di produzione e prestazioni, e la definizione di traccia delle prestazioni filtra le tracce per un database di interesse, l'analisi mostra che la dimensione della Traccia delle Prestazioni è circa 15 volte superiore rispetto alla dimensione della Traccia di Produzione .
Configurare una rete virtuale o un dominio
Riesecuzione distribuita richiede l'uso di account comuni tra computer. A causa di questo requisito e per motivi di sicurezza, è consigliabile eseguire Riesecuzione distribuita in una rete virtuale o in una rete controllata dal dominio:
- Creare il controller e i computer client nell'ambiente.
- Assicurarsi che i computer controller e client possano effettuare il ping tra loro in rete.
- Le macchine client di Riesecuzione distribuita devono avere connettività al computer di destinazione della riproduzione che esegue SQL Server.
Configurare il servizio controller
Per configurare il servizio controller:
Installare il controller Distributed Replay usando il programma di installazione di SQL Server. Se hai saltato il passaggio del programma di installazione di SQL Server che configura il controller di Distributed Replay, puoi configurare il controller tramite il file di configurazione. In un'installazione tipica il file di configurazione si trova in C:\Programmi (x86)\Microsoft SQL Server<versione>\Tools\DReplayController\DReplayController.config.
I log del controller di Replay distribuito si trovano in C:\Programmi (x86)\Microsoft SQL Server<versione>\Tools\DReplayController\Log.
Aprire Services.msc e passare al servizio controller di riesecuzione distribuita di SQL Server.
Fare clic con il pulsante destro del mouse sul servizio e quindi selezionare Proprietà. Impostare l'account del servizio su un account comune al controller e alle macchine client nella stessa rete.
Selezionare OK per chiudere la finestra Proprietà.
Riavviare il servizio Controller di Riesecuzione distribuita di SQL Server da Services.msc. È anche possibile eseguire i comandi seguenti nella riga di comando per riavviare il servizio:
NET STOP "SQL Server Distributed Replay Controller"
NET START "SQL Server Distributed Replay Controller"
Per altre opzioni di configurazione, vedere Configurare Riesecuzione distribuita.
Configurare DCOM
Questa configurazione è necessaria solo nel computer controller.
Aprire dcomcnfg.exe.
Espandere Component Services>Computers>My Computer>DCOM Config.
In configurazione DCOMfare clic con il pulsante destro del mouse su DReplayControllere quindi scegliere Proprietà .
Selezionare la scheda Sicurezza.
In Autorizzazioni di avvio e attivazioneselezionare Personalizzae quindi selezionare Modifica.
Aggiungi l'utente che inizierà la riproduzione. Assegnare all'utente autorizzazioni di avvio locale e attivazione locale. Se l'utente prevede di avviare o attivare in modalità remota, assegnare all'utente autorizzazioni di avvio remoto e attivazione remota.
Selezionare OK per eseguire il commit delle modifiche e tornare alla scheda sicurezza.
In Autorizzazioni di accessoselezionare Personalizzae quindi selezionare Modifica.
Aggiungi l'utente che inizierà la riproduzione. Concedere all'utente autorizzazioni di accesso locale. Se l'utente prevede di accedere al servizio controller in remoto, concedere all'utente le autorizzazioni di accesso remoto.
Selezionare OK per eseguire il commit delle modifiche e tornare alla scheda sicurezza.
Selezionare OK per eseguire il commit delle modifiche.
Riavviare il servizio Controller di Riesecuzione distribuita di SQL Server tramite Services.msc. È anche possibile eseguire i comandi seguenti nella riga di comando per riavviare il servizio:
NET STOP "SQL Server Distributed Replay Controller"
NET START "SQL Server Distributed Replay Controller"
Configurare il servizio client
Prima di configurare il servizio client, usare strumenti di rete come ping per verificare che il controller e i computer client possano comunicare.
Installare il client Distributed Replay usando il programma di installazione di SQL Server.
Aprire Services.msc e passare al servizio client di Riesecuzione distribuita di SQL Server.
Fare clic con il pulsante destro del mouse sul servizio e quindi selezionare Proprietà. Impostare l'account di servizio su un account comune sia per il controller che per i computer client nella rete.
Selezionare OK per chiudere la finestra Proprietà. Se hai saltato il passaggio del programma di installazione di SQL Server che consente di configurare il client di Distributed Replay, puoi configurarlo tramite il file di configurazione. In un'installazione tipica il file di configurazione si trova in C:\Programmi (x86)\Microsoft SQL Server<versione>\Tools\DReplayClient\DReplayClient.config.
Assicurarsi che il file DReplayClient.config contenga il nome del computer controller come controller per la registrazione.
Riavviare il servizio client Riesecuzione distribuita di SQL Server da Services.msc. È anche possibile eseguire i comandi seguenti dalla riga di comando per riavviare il servizio:
NET STOP "SQL Server Distributed Replay Client"
NET START "SQL Server Distributed Replay Client"
I log del controller di Riesecuzione distribuita si trovano in C:\Programmi (x86)\Microsoft SQL Server<versione>\Tools\DReplayClient\Log. I log indicano se il client può registrarsi con il controller.
Se la configurazione ha esito positivo, il log visualizza il messaggio Registrato presso il controller <Nome del controller>.
Per altre opzioni di configurazione, vedere Configurare Riesecuzione distribuita.
Configurare gli strumenti di amministrazione della riesecuzione distribuita
È possibile usare gli strumenti di amministrazione di Riesecuzione distribuita per verificare rapidamente se la Riesecuzione distribuita funziona correttamente nell'ambiente. Il test della configurazione può essere particolarmente utile in un ambiente in cui più computer client vengono registrati con un controller. Potrebbe essere necessario installare SQL Server Management Studio (SSMS) per ottenere gli strumenti di amministrazione.
- Andare al percorso di installazione di SSMS e cercare lo strumento di amministrazione Distributed Replay dreplay.exe e i suoi componenti dipendenti. Attualmente, SSMS 17 è la versione più recente di SSMS per includere dreplay.exe.
- Al prompt dei comandi, esegui
dreplay.exe status -f 1
.
Se i passaggi precedenti hanno avuto esito positivo, l'output della console indica che il controller riesce a visualizzare i client in uno stato READY
.
Configurare il firewall per l'accesso Distributed Replay remota
L'accesso remoto a Distributed Replay richiede l'apertura di porte visibili all'interno del dominio o della rete virtuale.
- Apri Windows Firewall con Sicurezza Avanzata.
- Vai a Regole in ingresso.
- Creare una nuova regola del firewall in ingresso per il programma C:\Programmi (x86)\Microsoft SQL Server<versione>\Tools\DReplayController\DReplayController.exe.
- Consentire l'accesso a livello di dominio a tutte le porte per DReplayController.exe di poter comunicare con il servizio controller in modalità remota.
- Salva la regola.
Configurare i computer di destinazione
Per eseguire un test A/B o un esperimento, sono necessarie due riproduzioni. Ciò significa che potrebbero essere necessarie due istanze separate di installazioni di SQL Server per uno scenario di migrazione.
È anche possibile installare le due versioni delle istanze di SQL Server nello stesso computer. È importante assicurarsi che le istanze siano isolate quando è in corso un replay.
Per ogni riproduzione devono essere eseguiti i passaggi seguenti:
- Ripristinare il backup del database.
- Fornire le autorizzazioni per l'utente dell'account del servizio client per accedere ai database nell'istanza di SQL Server. Le autorizzazioni sono necessarie per l'esecuzione delle query nell'istanza di SQL Server.
- Avvia la riproduzione.