Une surveillance des E/S (Entrées/Sorties) efficace est cruciale pour maintenir un système Linux sain et réactif. Un outil puissant en ligne de commande pour cette tâche est iostat, qui fournit des rapports détaillés sur l'activité du CPU et du disque.
L'exécution de la commande iostat génère un instantané des métriques de performance de votre système.
pete@icebox:~$ iostat
Linux 3.13.0-39-lowlatency (icebox) 01/28/2016 _i686_ (1 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle
0.13 0.03 0.50 0.01 0.00 99.33
Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
sda 0.17 3.49 1.92 385106 212417
Le résultat est divisé en deux sections principales. Décortiquons-les.
Comprendre les métriques du CPU
Le premier rapport détaille l'utilisation du CPU, donnant un aperçu de la manière dont le processeur passe son temps.
- %user: Pourcentage du temps CPU passé à exécuter des processus au niveau utilisateur (applications).
- %nice: Pourcentage du temps CPU passé sur des processus de niveau utilisateur avec une priorité modifiée (nice).
- %system: Pourcentage du temps CPU passé à exécuter des processus au niveau système (noyau).
- %iowait: Pourcentage du temps où le CPU était inactif en attendant qu'une requête d'E/S disque en attente se termine. Des valeurs élevées ici peuvent indiquer un goulot d'étranglement du stockage.
- %steal: Dans un environnement virtualisé, c'est le pourcentage de temps pendant lequel un processeur virtuel attend un processeur réel pendant que l'hyperviseur dessert un autre processeur virtuel.
- %idle: Pourcentage du temps où le CPU était inactif et n'attendait aucune requête d'E/S disque.
Analyser l'utilisation du disque
Le deuxième rapport se concentre sur la surveillance des E/S au niveau du périphérique, montrant comment les données sont transférées vers et depuis vos périphériques de stockage.
- tps: Transferts par seconde émis vers le périphérique. Un transfert est une requête d'E/S, et plusieurs requêtes logiques peuvent être combinées en une seule.
- kB_read/s: Quantité de données lues depuis le périphérique, exprimée en kilooctets par seconde.
- kB_wrtn/s: Quantité de données écrites sur le périphérique, exprimée en kilooctets par seconde.
- kB_read: Nombre total de kilooctets lus depuis le périphérique depuis le dernier redémarrage.
- kB_wrtn: Nombre total de kilooctets écrits sur le périphérique depuis le dernier redémarrage.