Tester vos déploiements
Cette section décrit les tests d'infrastructure qui peuvent être facilement réalisés pour tester vos déploiements.
Tests de performance du sous-système de stockage du serveur SQL
Il est conseillé de tester les performances du sous-système de stockage. Dans ce test, l'outil Diskspd est utilisé pour effectuer des tests de performance des disques. Diskspd est un outil de test de stockage créé par Microsoft. Il s'agit d'un utilitaire de ligne de commande qui dispose d'un certain nombre de paramètres. Lors de nos tests, les commandes suivantes ont été utilisées pour tester chaque lecteur :
cd C:\Users\Administrator\Downloads
.\diskspd.exe -c100G -d300 -r -w40 -t4 -o2 -b64K -Sh -L D:\testfile.dat > TestData.txt
.\diskspd.exe -c100G -d300 -r -w40 -t4 -o2 -b64K -Sh -L E:\testfile.dat > TestLog.txt
.\diskspd.exe -c100G -d300 -r -w40 -t4 -o2 -b64K -Sh -L F:\testfile.dat > TestTempDB.txt
Les options de commande sont les suivantes :
-
- -c100G- Crée un fichier de 100GB appelé testfile.dat dans le volume à tester.
-
- -d300- Période de mesure de 300 secondes (5 minutes).
-
- r- Accès aléatoire aux E/S.
-
- -w40- 40% de demandes d'écriture, avec 60% de lectures. Il s'agit d'une charge typique pour les bases de données OLTP du SQL Server
-
- -t4- Le nombre de threads par fichier et doit être d'un thread par vCPU disponible.
-
- -o2- Le nombre de demandes d'E/S en attente par cible et par thread, c'est-à-dire la profondeur de la file d'attente.
-
- -b64K- Taille de bloc de 64KB, ce qui est typique pour le serveur SQL.
-
- Sh- Désactive à la fois la mise en cache logicielle et la mise en cache matérielle de l'écriture.
-
- L- Mesure les statistiques de latence.
Les résultats sont saisis dans les fichiers txt. Comme guide pour l'interprétation des résultats :
- La section Total IO fournit des statistiques (lecture+écriture) par thread.
- La dernière ligne de la section Total IO fournit les valeurs totales pour l'ensemble du test.
- Le nombre total de Mo/s devrait être proche du MiBps dans la console IBM Cloud pour le volume, à moins que plusieurs volumes aient été divisés en bandes.
- AvgLat est la latence moyenne.
- Les deux sections suivantes présentent les statistiques relatives aux opérations de lecture et d'écriture.
- une latence < 5ms est considérée comme bonne
Les résultats résumés sont affichés dans les sections suivantes.
Les données sont à l'origine des résultats
Les principales informations tirées du test sont les suivantes :
diskspd.exe -c100G -d300 -r -w40 -t4 -o2 -b64K -Sh -L D:\testfile.dat
E-S | MiB/s | IOPS | Temps de latence moyen |
---|---|---|---|
Total E-S | 82.03 | 1312.45 | 6.088 |
E/S de lecture | 49.20 | 787.14 | 7.282 |
E/S d'écriture | 32.83 | 525.30 | 4.298 |
Enregistrer les résultats de l'entraînement
Les principales informations tirées du test sont les suivantes :
diskspd.exe -c100G -d300 -r -w40 -t4 -o2 -b64K -Sh -L E:\testfile.dat
E-S | MiB/s | IOPS | Temps de latence moyen |
---|---|---|---|
Total E-S | 82.03 | 1312.49 | 6.088 |
E/S de lecture | 49.20 | 787.13 | 7.101 |
E/S d'écriture | 32.83 | 525.36 | 4.570 |
Résultats de l'entraînement Tempdb
Les principales informations tirées du test sont les suivantes :
diskspd.exe -c100G -d300 -r -w40 -t4 -o2 -b64K -Sh -L F:\testfile.dat
E-S | MiB/s | IOPS | Temps de latence moyen |
---|---|---|---|
Total E-S | 223.58 | 3577.33 | 2.231 |
E/S de lecture | 134.11 | 2145.77 | 3.615 |
E/S d'écriture | 89.47 | 1431.56 | 0.156 |
Test de basculement
Le test de basculement consiste en deux tests :
Test de basculement d'un groupe de disponibilité
Pour tester le basculement du groupe de disponibilité, procédez comme suit :
- RDP au serveur bastion.
- Connectez-vous à la réplique primaire en utilisant SQL Server Server Management Studio (SSMS) hébergé sur le serveur bastion.
- Développez le groupe de disponibilité Always On dans l'explorateur d'objets.
- Cliquez avec le bouton droit de la souris sur le groupe de disponibilité et choisissez Basculement pour ouvrir l'assistant de basculement.
- Suivez les invites pour choisir une cible de basculement et basculer le groupe de disponibilité sur une réplique secondaire.
- Confirmez que la base de données est synchronisée sur la nouvelle réplique primaire.
- Revenez à la base primaire d'origine et confirmez que la base de données est synchronisée.
Test de basculement de la connectivité
Pour tester la connectivité avec l'auditeur DNN, procédez comme suit :
- RDP au serveur bastion.
- Ouvrez SQL Server Server Management Studio (SSMS) hébergé sur le serveur bastion.
- Connectez-vous à l'auditeur DNN.
- Ouvrez une nouvelle fenêtre de requête et exécutez la commande quey
SELECT @@SERVERNAME
pour vérifier quelle réplique est connectée. - Basculer le groupe de disponibilité sur une réplique secondaire.
- Exécutez à nouveau
SELECT @@SERVERNAME
pour confirmer que votre groupe de disponibilité est maintenant hébergé sur la réplique secondaire. Il se peut que vous deviez réessayer plusieurs fois/ Il est important de comprendre le temps de basculement dans votre environnement
Tests de charge des bases de données
Il existe un certain nombre d'outils de test de charge gratuits, open source ou sous licence, mais HammerDB est un outil open source que vous pouvez utiliser pour démontrer les performances d'une base de données SQL Server. Vous pouvez télécharger cet outil sur l'hôte bastion et l'utiliser pour tester le serveur SQL :
- Téléchargez HammerDB-4.1 sur l'hôte bastion à l'aide des commandes PowerShell suivantes :
$client = new-object System.Net.WebClient
$client.DownloadFile("https://github.com/TPC-Council/HammerDB/releases/download/v4.1/HammerDB-4.1-Win-x64-Setup.exe","C:\Users\Administrator\Downloads\HammerDB-4.1-Win-x64-Setup.exe")
-
Suivez la méthode d'installation par extraction automatique décrite dans la section Installation et démarrage de HammerDB sous Windows pour installer HammerDB sur l'hôte bastion.
-
Suivez la procédure de démarrage rapide pour configurer HammerDB afin qu'il exécute un test de charge sur le serveur requiredSQL
Consultez les informations sur le site HammerDB Meilleure pratique pour SQL Server Performance et évolutivité.
Pour les autres versions de HammerDB, voir le téléchargement de HammerDB.