GNU/Linux >> Tutoriels Linux >  >> Linux

Utilisation d'iostat pour surveiller les performances du système sous Linux (exemples inclus)

L'iostat La commande est utilisée pour surveiller le chargement des périphériques d'entrée/sortie du système en observant le temps pendant lequel les disques physiques sont actifs par rapport à leurs taux de transfert moyens. Ces informations peuvent être utilisées pour modifier la configuration du système afin de mieux équilibrer la charge d'entrée/sortie entre les disques physiques et les adaptateurs.

Vous trouverez ci-dessous un exemple de sortie lorsque vous exécutez la commande iostat sans aucun argument.

# iostat
Linux 3.10.0-514.2.2.el7.x86_64 (geeklab)     11/07/2017      _x86_64_        (128 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.36    0.00    1.07    0.24    0.00   98.32

Device:            tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtn
sda              17.26         8.80       242.60    3795176  104664988
sdb               0.52         5.66        36.17    2440242   15603348
sdc               0.02         0.34         0.00     147313          0
sdd               0.01         0.09         0.00      39527          0
sde               0.01         0.10         0.00      41189          0
sdf               0.01         0.09         0.00      39025          0
.....

La première ligne affiche la version du noyau Linux, le nom d'hôte, la date actuelle, l'architecture et le nombre de processeurs sur votre système.

Le rapport de l'utilitaire iostat comporte les sections suivantes :
– Utilisation du processeur
– Utilisation de l'appareil

Rapport d'utilisation du processeur

Les deux lignes suivantes affichent les statistiques du processeur. Pour les systèmes multiprocesseurs, les valeurs CPU sont des moyennes globales parmi tous les processeurs. Les colonnes sont définies comme suit :

%utilisateur Le pourcentage de CPU utilisé lors de l'exécution d'applications au niveau de l'utilisateur
%bien Le pourcentage de CPU utilisé lors de l'exécution au niveau de l'utilisateur avec une bonne priorité
%système Le pourcentage de CPU utilisé lors de l'exécution au niveau du système (noyau)
%j'attends Le pourcentage de temps pendant lequel le ou les processeurs étaient inactifs alors que le système avait une demande d'E/S disque en attente
%voler Le pourcentage de temps passé en attente involontaire par le ou les CPU virtuels pendant que l'hyperviseur servait un autre processeur virtuel
% inactif Le pourcentage de temps pendant lequel le CPU était (ou les CPU étaient) inactif et le système n'avait pas de demande d'E/S disque en attente

Rapport d'utilisation de l'appareil

Les lignes restantes de l'exemple affichent des statistiques par périphérique physique ou par partition. Vous pouvez inclure des périphériques de bloc et des partitions en tant qu'arguments de la commande iostat. Si aucun argument n'est inclus, le rapport affiche tous les périphériques pour lesquels le noyau dispose de statistiques. Les colonnes sont définies comme suit :

Appareil Nom du périphérique ou de la partition tel qu'indiqué dans le répertoire /dev
tps Nombre de transferts (requête d'E/S) par seconde émis vers l'appareil
kB_read/s Quantité de données lues à partir de l'appareil exprimée en nombre de kilo-octets par seconde.
ko_wrtn/s Quantité de données écrites sur l'appareil exprimée en nombre de kilo-octets par seconde
ko_lu Nombre total de kilo-octets lus
ko_wrtn Nombre total de kilo-octets écrits

Des statistiques plus détaillées peuvent être incluses en fournissant différentes options à la commande iostat. Certaines des options de ligne de commande sont répertoriées :

-c Afficher le rapport d'utilisation du processeur.
-d Afficher le rapport d'utilisation de l'appareil.
-m Afficher les statistiques en mégaoctets par seconde.
-x Afficher des statistiques étendues.

Plusieurs rapports peuvent être exécutés à des intervalles différents à l'aide des arguments d'intervalle et de nombre. L'exemple suivant affiche 6 rapports à 2 secondes d'intervalle pour tous les appareils :

# iostat –d 2 6

Exemple de commande iostat

Exemple 1 – commande iostat

Pour afficher les statistiques d'utilisation du CPU et du périphérique d'entrée/sortie, utilisez la commande suivante :

# iostat 
Linux 3.10.0-693.21.1.el7.x86_64 (jamiericho1.mylabserver.com) 	03/16/2018 	_x86_64_	(1 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           5.90    0.00    2.60    1.76    2.87   86.87

Device:            tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtn
xvda             68.90       947.14      1117.86     340222     401546
xvdf              2.76        55.51         0.00      19940          0

La première sortie d'iostat est la somme des informations depuis le démarrage du système. Nous n'avons spécifié aucun intervalle pour l'exécution de la commande iostat, elle affichera donc par défaut des informations récapitulatives depuis le démarrage du système.

Exemple 2 – iostat avec intervalle

Pour pouvoir voir une tendance dans les statistiques ou afficher en continu les statistiques à intervalle régulier, utilisez la commande iostat avec intervalle fourni. Par exemple, pour rapporter des statistiques toutes les 5 secondes :

# iostat 5

Vous pouvez également limiter le nombre de fois où les statistiques seront générées en fournissant un certain nombre d'intervalles. Par exemple pour exécuter la commande iostat à un intervalle de 5 secondes avec 3 intervalles uniquement :

# iostat 5 3

Exemple 3 - Afficher uniquement les statistiques du processeur

Pour afficher uniquement les statistiques CPU du système, utilisez le "-c ” option avec iostat.

# iostat -c
Linux 3.10.0-693.21.1.el7.x86_64 (jamiericho1.mylabserver.com) 	03/16/2018 	_x86_64_	(1 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           2.64    0.00    1.20    0.78    1.34   94.03

Exemple 4 - Afficher les statistiques du disque

Une autre option utile à utiliser avec iostat est "-d ” qui affiche uniquement les statistiques de disque du système.

# iostat -d
Linux 3.10.0-693.21.1.el7.x86_64 (jamiericho1.mylabserver.com) 	03/16/2018 	_x86_64_	(1 CPU)

Device:            tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtn
xvda             28.82       389.03       465.87     340222     407421
xvdf              1.14        22.80         0.00      19940          0

Exemple 5 - Afficher les statistiques étendues

Pour afficher des statistiques étendues avec iostat, utilisez le "-x " option. Par exemple,

# iostat -x
Linux 3.10.0-693.21.1.el7.x86_64 (jamiericho1.mylabserver.com) 	03/16/2018 	_x86_64_	(1 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           1.52    0.00    0.71    0.45    0.83   96.50

Device:         rrqm/s   wrqm/s     r/s     w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
xvda              0.03     1.57   11.38    6.75   242.60   288.58    58.59     0.17    9.13    0.91   23.00   0.42   0.76
xvdf              0.00     0.00    0.70    0.00    14.10     0.00    40.16     0.00    2.84    2.84    0.00   2.15   0.15

Exemple 6 – Combinaison de plusieurs options

Vous pouvez toujours combiner plusieurs options parmi les exemples ci-dessus. Avec cela, vous pouvez afficher un rapport d'utilisation étendue du disque à un intervalle de 2 secondes pendant 3 intervalles, comme indiqué dans l'exemple ci-dessous.

# iostat -xdt 2 3
Linux 3.10.0-693.21.1.el7.x86_64 (jamiericho1.mylabserver.com) 	03/16/2018 	_x86_64_	(1 CPU)

03/16/2018 04:57:55 AM
Device:         rrqm/s   wrqm/s     r/s     w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
xvda              0.03     1.45   10.47    6.23   223.11   265.50    58.53     0.15    9.12    0.91   22.93   0.42   0.70
xvdf              0.00     0.00    0.65    0.00    12.96     0.00    40.16     0.00    2.84    2.84    0.00   2.15   0.14

03/16/2018 04:57:57 AM
Device:         rrqm/s   wrqm/s     r/s     w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
xvda              0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00    0.00    0.00   0.00   0.00
xvdf              0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00    0.00    0.00   0.00   0.00

03/16/2018 04:57:59 AM
Device:         rrqm/s   wrqm/s     r/s     w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
xvda              0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00    0.00    0.00   0.00   0.00
xvdf              0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00    0.00    0.00   0.00   0.00

Ici,
-t – afficher l'horodatage de l'intervalle

Utilisation de vmstat pour résoudre les problèmes de performances sous Linux


Linux
  1. Comment surveiller les performances du système Linux avec Sysstat

  2. 24 Exemples iostat, vmstat et mpstat pour la surveillance des performances Linux

  3. Exemples d'utilisation de la commande dmsetup sous Linux

  4. Exemples de commandes resize2fs sous Linux

  5. Système de file d'attente Linux

Comment surveiller la disponibilité du système Linux à l'aide d'Uptimed

Comment surveiller les performances de Linux à l'aide de l'outil systat

Commande iostat sous Linux

Dépanner et surveiller les performances du système Linux avec nmon

Comment surveiller les métriques système en temps réel à l'aide de l'outil Glances sous Linux

Exemples de commandes iostat sous Linux