Ce document explique comment comparer les performances des disques persistants sur les instances de machine virtuelle (VM) Windows. Pour les VM Linux, consultez la page Effectuer l'analyse comparative des performances des disques persistants sur une VM Linux.
Pour mesurer les IOPS et le débit d'un disque utilisé sur une instance en cours d'exécution, effectuez l'analyse du système de fichiers avec la configuration souhaitée. Utilisez cette option pour tester une charge de travail réaliste sans perdre le contenu de votre disque existant. Notez que lorsque vous comparez le système de fichiers sur un disque existant, de nombreux facteurs propres à votre environnement de développement peuvent affecter les résultats de l'analyse comparative. Vous risquez donc de ne pas atteindre les limites de performances des disques.
Pour mesurer les performances brutes d'un disque persistant, évaluez directement le périphérique en mode bloc. Utilisez cette option pour comparer les performances brutes des disques avec les limites de performances des disques.
Configurer le logiciel d'analyse comparative
Pour comparer les performances des disques persistants sur des VM Windows, utilisez DISKSPD
.
Ouvrez Powershell et téléchargez l'outil
DISKSPD
à l'aide de la commande suivante:$client = New-Object System.Net.WebClient $client.DownloadFile("https://github.com/Microsoft/diskspd/releases/latest/download/DiskSpd.zip","$env:temp\DiskSpd-download.zip") Expand-Archive -LiteralPath "$env:temp\DiskSpd-download.zip" C:\DISKSPD Get-ChildItem C:\DISKSPD
Effectuer l'analyse comparative des IOPS et du débit d'un disque sur une instance de VM en cours d'exécution
Si vous souhaitez mesurer les IOPS et le débit pour une charge de travail réaliste sur un disque actif sur une instance de VM en cours d'exécution sans perdre le contenu de votre disque, effectuez l'analyse comparative sur un nouveau répertoire sur le système de fichiers existant.
Dans les étapes suivantes, nous partons du principe que le disque à tester est installé en tant que D:
et que les commandes sont exécutées dans une fenêtre Invite de commande avec élévation de privilèges:
Vérifiez la configuration du logiciel
DISKSPD
et remplacez le répertoire par le binaire 64 bits:cd C:\DISKSPD\amd64
Créez un fichier de 10 Go nommé
DISKTEST.DAT
sur le disque:set TESTFILE=D:\DISKTEST.DAT diskspd -d0 -c10G %TESTFILE%
Testez le débit en écriture à l'aide d'écritures séquentielles comportant plusieurs flux parallèles (16 ou plus). Prévoyez une taille de bloc d'E/S de 1 Mo et une profondeur d'E/S d'au moins 64 :
diskspd -d60 -b1M -o64 -Sh -w100 -t16 -si %TESTFILE%
Testez les IOPS en écriture à l'aide d'écritures aléatoires. Prévoyez une taille de bloc d'E/S de 4 ko et une profondeur d'E/S d'au moins 256 :
diskspd -d60 -b4K -o256 -Sh -w100 -r %TESTFILE%
Testez le débit en lecture à l'aide de lectures séquentielles comportant plusieurs flux parallèles (16 ou plus). Prévoyez une taille de bloc d'E/S de 1 Mo et une profondeur d'E/S d'au moins 64 :
diskspd -d60 -b1M -o64 -Sh -t16 -si %TESTFILE%
Testez les IOPS en lecture à l'aide de lectures aléatoires. Prévoyez une taille de bloc d'E/S de 4 ko et une profondeur d'E/S d'au moins 256 :
diskspd -d60 -b4K -o256 -Sh -r %TESTFILE%
Effectuer un nettoyage :
del %TESTFILE%
Analyse comparative des performances brutes des disques persistants
Pour mesurer les performances des volumes Persistent Disk uniquement en dehors de votre environnement de développement, testez les performances de lecture et d'écriture pour un périphérique en mode bloc sur un disque persistant et une VM non critiques.
Ajoutez un disque Persistent Disk à l'instance de VM que vous souhaitez analyser.
Vérifiez la configuration du logiciel
DISKSPD
et remplacez le répertoire par le binaire 64 bits:cd C:\DISKSPD\amd64
Vérifiez qu'il n'existe aucune partition non réservée sur le disque. Saisissez
diskpart
dans une fenêtre Invite de commande avec élévation de privilèges.diskpart
Répertoriez les disques associés à la VM:
DISKPART> list disk
Le résultat affiche le disque de 1 To que vous venez de créer, qui correspond au disque 1 dans l'exemple de résultat suivant:
Disk ### Status Size Free Dyn Gpt -------- ------------- ------- ------- --- --- Disk 0 Online 120 GB 1024 KB * Disk 1 Online 1024 GB 1023 GB *
Sélectionnez le disque que vous souhaitez analyser.
DISKPART> select disk 1
Répertoriez les partitions sur le disque sélectionné.
DISKPART> list partition
Partition ### Type Size Offset ------------- ---------------- -------- ------- Partition 1 Reserved 15 MB 17 KB Partition 2 Primary 1024 GB 16 MB
Sélectionnez la partition principale 2:
DISKPART> select partition 2
Supprimez la partition sélectionnée:
DISKPART> delete partition
Quittez l'utilitaire DiskPart
DISKPART> exit
Les étapes précédentes doivent être répétées si le disque que vous souhaitez comparer possède d'autres partitions en dehors de la partition réservée. Lorsque seule la partition réservée reste disponible, passez aux étapes suivantes:
Après avoir identifié le disque et vérifié qu'il n'y a pas de partition, définissez la variable d'environnement
TESTDRIVE
sur "#" suivie du numéro du disque à tester.C:/> set TESTDRIVE=#1
Testez le débit en écriture à l'aide d'écritures séquentielles comportant plusieurs flux parallèles (16 ou plus). Prévoyez une taille de bloc d'E/S de 1 Mo et une profondeur d'E/S d'au moins 64 :
diskspd -d60 -b1M -o64 -Sh -t16 -si -w0 %TESTDRIVE%
Testez les IOPS en écriture à l'aide d'écritures aléatoires. Prévoyez une taille de bloc d'E/S de 4 ko et une profondeur d'E/S d'au moins 256 :
diskspd -d60 -b4K -o256 -Sh -r -w0 %TESTDRIVE%
Testez la latence en écriture. Lors du test de la latence par E/S, la VM ne doit pas atteindre la limite de bande passante ou d'IOPS, sinon la latence observée ne reflétera pas la latence réelle des E/S du disque persistant.
diskspd -d60 -b4K -o4 -Sh -r -w0 -L %TESTDRIVE%
Testez le débit en lecture à l'aide de lectures séquentielles comportant plusieurs flux parallèles (16 ou plus). Prévoyez une taille de bloc d'E/S de 1 Mo et une profondeur d'E/S d'au moins 64 :
diskspd -d60 -b1M -o64 -Sh -t16 -si %TESTDRIVE%
Testez les IOPS en lecture à l'aide de lectures aléatoires. Prévoyez une taille de bloc d'E/S de 4 ko et une profondeur d'E/S d'au moins 256 :
diskspd -d60 -b4K -o256 -Sh -r %TESTDRIVE%
Pour tester la latence en lecture, il est important de remplir le disque avec des données afin d'obtenir une mesure de latence réaliste. La VM ne doit pas atteindre les limites d'IOPS ni de débit lors de ce test : une fois qu'un disque persistant atteint sa limite de saturation, il repousse toute opération entrante d'E/S, ce qui se traduit par une augmentation artificielle de Latence des E/S.
diskspd -d60 -b4K -o4 -Sh -r -L %TESTDRIVE%
Testez la bande passante en lecture séquentielle.
diskspd -d60 -b1M -o64 -Sh -t4 -si %TESTDRIVE%
Testez la bande passante en écriture séquentielle.
diskspd -d60 -b1M -o64 -Sh -t4 -si -w100 %TESTDRIVE%
Effectuez un nettoyage du volume Persistent Disk et de la VM non critiques :
- Supprimez le disque utilisé pour l'analyse comparative des performances.
- Supprimez la VM créée pour l'analyse comparative des performances.
Étapes suivantes
- Apprenez à surveiller les performances de vos disques en examinant les métriques de performances des disques persistants.
- Découvrez les tarifs des disques persistants.
- Découvrez comment optimiser les performances des disques persistants.