Performance

Surveiller les E/S de disque avec iotop sous Linux

Surveiller les E/S de disque avec iotop sous Linux
Sur les serveurs Linux, vous avez beaucoup de processus en cours d'exécution et chacun de ces processus effectue des opérations d'E/S. Ainsi, ces processus consomment la bande passante du disque de stockage.

Nous pouvons utiliser la commande htop pour voir une liste de tous les processus en cours d'exécution de notre serveur Linux. Mais que se passe-t-il si nous voulons surveiller la quantité de bande passante disque que chacun de ces processus consomme? Eh bien, nous pouvons utiliser iotop.

iotop est un outil interactif de surveillance des E/S sur Linux tout comme htop. Avec iotop, vous pouvez facilement surveiller l'utilisation de la bande passante en lecture et en écriture sur le disque pour chaque exécution traitée sur Linux.

Dans cet article, je vais vous montrer comment installer iotop sur les distributions Linux populaires et comment utiliser iotop pour surveiller l'utilisation de la bande passante en lecture et en écriture par processus en cours d'exécution. Je vais utiliser Ubuntu 18.04 LTS pour la démonstration, mais les mêmes commandes devraient fonctionner sur toutes les distributions Linux modernes. Alors, commençons.

Installer iotop sur Ubuntu :

iotop est disponible dans le référentiel de packages officiel d'Ubuntu. Ainsi, vous pouvez facilement télécharger iotop en utilisant le gestionnaire de packages APT.

Tout d'abord, mettez à jour le cache du référentiel de packages APT avec la commande suivante :

$ sudo apt mise à jour

Maintenant, installez iotop avec la commande suivante :

$ sudo apt installer iotop

iotop doit être installé.

Maintenant, vérifiez si iotop fonctionne avec la commande suivante :

$ iotop --version

iotop fonctionne comme vous pouvez le voir.

Installation d'iotop sur CentOS 7 :

iotop est disponible dans le référentiel de packages officiel de CentOS 7. Vous pouvez facilement l'installer avec le gestionnaire de packages YUM comme suit :

$ sudo yum install iotop -y

Utilisation de base d'iotop :

Pour surveiller l'utilisation du disque de chaque processus en cours d'exécution avec iotop, exécutez iotop comme suit :

$ sudo iotop

Comme vous pouvez le voir, la fenêtre interactive iotop s'ouvre. Ici, vous pouvez voir quel processus utilise le disque.

Comme vous pouvez le voir sur la capture d'écran ci-dessous, en haut à gauche, la vitesse/bande passante totale de lecture du disque est affichée. De la même manière, en haut à droite, la vitesse d'écriture/la bande passante totale du disque est affichée.

Comme vous pouvez le voir, iotop affiche des colonnes pour,

Dans la plupart des cas, l'ID de thread (TID) est équivalent à l'ID de processus (PID).

Affichage des processus effectuant des opérations d'E/S uniquement :

Par défaut, iotop affiche tous les processus en cours, qu'ils effectuent ou non des opérations d'E/S. Donc la liste est très longue. Il est plus difficile de trouver les processus dont nous avons besoin et de les surveiller.

Heureusement, iotop vous permet d'afficher uniquement les processus qui effectuent des opérations d'E/S. Pour ce faire, vous pouvez utiliser le -o ou alors -seul option d'iotop.

Pour afficher uniquement les processus effectuant des opérations d'E/S, exécutez iotop comme suit :

$ sudo iotop -o

Ou alors

$ sudo iotop --seulement

Comme vous pouvez le voir, le processus avec TID 1345 et 1957 effectue actuellement des opérations d'E/S.

C'est la commande que j'exécute pour simuler les opérations d'E/S dans cet article.

$ dd if=/dev/urandom of=iotest.img bs=1M compte=1000

REMARQUE: Si vous n'avez pas démarré iotop avec le -o ou alors -seul option, vous pouvez toujours basculer dans ce mode en appuyant sur la o touche de ton clavier. Vous pouvez basculer entre ces 2 modes d'iotop en utilisant le o clé.

Affichage de l'utilisation totale des E/S par processus :

iotop vous permet également de surveiller le nombre de lectures et d'écritures sur disque au total que chaque processus a effectuées après le démarrage d'iotop. Pour ce faire, vous devez utiliser le -une ou alors -accumulé option. Vous pouvez également l'utiliser avec le -o ou alors -seul option aussi.

Par example,

$ sudo iotop -ao

Comme vous pouvez le voir, le nombre total de lectures de disque et d'écritures de disque par processus est affiché.

Affichage du PID au lieu du TID :

Comme je l'ai dit précédemment, l'ID de thread (TID) est le même que l'ID de processus (PID) la plupart du temps. Vous pouvez les utiliser indifféremment. Mais si vous voulez vraiment être sûr que vous travaillez avec exactement l'ID de processus (PID), alors iotop a le -P ou alors -processus option que vous pouvez utiliser pour changer la colonne TID par défaut en colonne PID.

Pour afficher la colonne PID au lieu de la colonne TID, exécutez iotop comme suit :

$ sudo iotop -P

Ou alors

$ sudo iotop --processes

Comme vous pouvez le voir, la colonne TID est remplacée par la colonne PID.

Filtrage des processus iotop :

Vous pouvez filtrer les processus iotop en fonction de l'ID de processus (PID), de l'ID de thread (TID) et du propriétaire traité (USER).

Par exemple, si vous souhaitez surveiller les E/S disque des processus avec les PID 2024 et 2035 uniquement, vous devez exécuter iotop comme suit :

$ sudo iotop -P -p 2024 -p 2035

Comme vous pouvez le voir, seuls les processus avec les PID 2024 et 2035 sont surveillés.

Si vous souhaitez surveiller les E/S disque des threads avec les TID 2024 et 2035 uniquement, vous devez exécuter iotop comme suit :

$ sudo iotop -P -p 2024 -p 2035

Encore une fois, disons que vous voulez surveiller les E/S disque des processus exécutés en tant qu'utilisateur shovon. Pour ce faire, exécutez iotop comme suit :

$ sudo iotop -P -u shovon

Comme vous pouvez le voir, seuls les processus exécutés en tant qu'utilisateur shovon est affiché.

Si vous souhaitez surveiller plusieurs utilisateurs à la fois, vous pouvez également le faire.

Par exemple, pour surveiller les E/S disque de tous les processus que les utilisateurs shovon et lis sont en cours d'exécution, exécutez iotop comme suit :

$ sudo iotop -P -u shovon -u lis

Donc, c'est essentiellement comment vous utilisez iotop pour surveiller les E/S de disque sous Linux. Merci d'avoir lu cet article.

Meilleurs émulateurs de console de jeu pour Linux
Cet article répertorie les logiciels d'émulation de console de jeu populaires disponibles pour Linux. L'émulation est une couche de compatibilité logi...
Meilleures distributions Linux pour les jeux en 2021
Le système d'exploitation Linux a parcouru un long chemin depuis son apparence originale, simple et basée sur le serveur. Ce système d'exploitation s'...
Comment capturer et diffuser votre session de jeu sur Linux
Dans le passé, jouer à des jeux n'était considéré qu'un passe-temps, mais avec le temps, l'industrie du jeu a connu une croissance énorme en termes de...