Comment surveiller les performances des systèmes Linux avec la commande iostat

Linux-iostat-command

la commande iostat est utilisée pour surveiller l’utilisation du processeur et les statistiques d’E / S (entrées / sorties) de tous les disques et systèmes de fichiers. la commande nfsiostat est utilisée pour surveiller les statistiques d’e/s du système de fichiers réseau (NFS).

commande iostat surveiller le chargement des dispositifs d’E/S (Entrée/ Sortie) en observant le temps, les dispositifs sont actifs par rapport à leurs taux de transfert moyens. Cette commande est particulièrement utile pour générer des rapports que nous pouvons utiliser pour optimiser la charge de sortie d’entrée & du système.

la commande iostat génère généralement deux rapports:

  • Rapport d’utilisation du processeur
  • Rapport de statistiques d’e/s sur tous les disques

Pour générer les rapports, la commande iostat lit certains des fichiers système. Ces fichiers sont,

  • / proc/diskstats pour les statistiques du disque
  • / proc/stat pour les statistiques du système
  • / sys pour les statistiques des périphériques de bloc
  • / proc/devices pour les noms de périphériques persistants
  • / proc/self/mountstats pour tous les systèmes de fichiers réseau
  • / proc/uptime pour les informations sur la disponibilité du système

Dans ce tutoriel, nous allons apprendre à installer l’utilitaire iostat sur des systèmes Linux, puis nous discuterons de la façon de générer des rapports à l’aide de la commande iostat,

Installation d’Iostat sur des systèmes Linux:

iostat fait partie du paquet ‘sysstat’, nous pouvons l’installer sur notre système en utilisant la commande suivante,

CentOS/RedHat

# yum install sysstat -y

Ubuntu/Debian

$ sudo apt-get install sysstat -y

Fedora

# dnf install sysstat -y

Voyons maintenant quelques exemples pour comprendre le iostat commande mieux.

Exemple:1 Obtenir des statistiques complètes (CPU & Périphériques)

Pour obtenir les statistiques complètes du système, ouvrez le terminal & exécutez la commande suivante,

# iostat

Cela produira la sortie suivante à l’écran,

iostat-command-output

Ici dans la sortie de la commande iostat,

  • % utilisateur, est l’utilisation du PROCESSEUR pour l’utilisateur,
  • % nice, est l’utilisation du PROCESSEUR pour les applications avec une belle priorité,
  • % system, est le PROCESSEUR utilisé par le système,
  • %iowait, est le pourcentage de temps pendant lequel le PROCESSEUR était inactif mais il y avait une e / s exceptionnelle request,
  • %steal, pourcentage de temps d’attente du PROCESSEUR pendant que l’hyperviseur fonctionnait sur un autre processeur,
  • % idle, est le pourcentage de temps pendant lequel le système était inactif sans demande en attente.

Périphériques, affiche le nom de tous les périphériques du système,

  • Tps, est l’abréviation de transfert par seconde,
  • Blk_read/s & Blk_write/s sont la vitesse de transfert pour les opérations de lecture et d’écriture,
  • Blk_read & Blk_write indique le nombre total de blocs lus & écrits.

Exemple:2 Générer uniquement des statistiques CPU

Pour générer uniquement les statistiques CPU du système, nous utiliserons les options ‘c’ avec iostat. Exécutez la commande suivante à partir du terminal,

# iostat -c

iostat-cpu-utilization

Exemple: 3 Pour générer des statistiques d’e/s pour tous les périphériques (option -d)

Pour obtenir le rapport iostat uniquement pour les périphériques connectés sur le système, nous utiliserons l’option ‘d’ avec la commande iostat,

# iostat -d

device-statistics-iostat-command

Exemple:4 Générer des statistiques d’e / s détaillées

Bien que généralement les statistiques fournies par la commande iostat soient suffisantes, mais si vous souhaitez obtenir des statistiques encore plus détaillées, nous pouvons utiliser l’option ‘-x’ avec la commande iostat. L’exemple est illustré ci-dessous,

# iostat -x

Detailed-io-statistics-iostat-command

Exemple:5 Générer des rapports détaillés pour les périphériques & CPU séparément

Pour obtenir des informations détaillées sur les périphériques du système, nous utiliserons l’option ‘d’ avec l’option ‘x’,

# iostat -xd

Detailed-stats-disk-only-iostat-command

De même, pour générer les informations détaillées pour le CPU, nous utiliserons les options ‘c’ & ‘x’,

# iostat -xc

Exemple : 6 Obtention de statistiques d’e/s pour un seul périphérique

iostat peut également fournir les statistiques d’e/s pour un seul périphérique. Pour obtenir les statistiques d’un périphérique, exécutez la commande iostat avec l’option ‘p’ suivie du nom du périphérique,

# iostat -p sda

io-statistics-single-device-iostat-command

Exemple : 7 Générer des rapports en Mo ou en Ko

Nous pouvons également générer les statistiques système en Mégaoctets ou en kilooctets. Pour générer les rapports en mo, nous utiliserons l’option ‘m’ avec la commande iostat,

# iostat -m

iostat-report-mb

De même, nous pouvons également générer les rapports au format d’unité kb avec l’option ‘k’,

# iostat -k

Exemple:8 Génération d’un rapport de statistiques d’e/s système avec retard

Pour capturer les statistiques système avec un retard, on peut mentionner la commande iostat suivie d’un intervalle en secondes & nombre de rapports requis,

# iostat 3 2

Dans cet exemple, nous capturons 2 rapports à 3 secondes d’intervalle,

iostat-reports-delay

Nous pouvons également utiliser le paramètre delay avec d’autres options de la commande iostat dont nous avons discuté ci-dessus.

Exemple:9 Générer le rapport de statistiques LVM

Pour générer les statistiques LVM, nous pouvons utiliser l’option ‘N’ avec la commande iostat,

# iostat -N

LVM-statistics-iostat-command

Exemple : 10 Générer les rapports pour uniquement les périphériques actifs

Nous pouvons également générer des rapports pour les périphériques actifs & omettre les périphériques des rapports inactifs pendant la période d’échantillonnage. Nous utiliserons l’option ‘z’ avec la commande iostat pour y parvenir,

# iostat -z 2 5

iostat-reports-active-device-delay

Exemple:11 Générer des rapports iostat avec l’horodatage

Pour générer les rapports iostat avec un horodatage, nous utiliserons l’option ‘t’ avec la commande iostat,

# iostat -t

iostat-report-timestamp

Exemple: 12 Générer un rapport statistique basé sur le nom du périphérique persistant

Pour obtenir le rapport basé sur le nom persistant du périphérique, nous utiliserons l’option ‘j’ suivie du mot clé ‘ID’ & nom persistant du périphérique,

Utilisez la commande blkid pour trouver l’UUID du disque.

blkid-command-output

Une fois que vous avez trouvé l’UUID / ID, utilisez la commande iostat ci-dessous,

# iostat -j id 12244367-e751-4c1c-9336-f30d623fceb8

iostat-id-command-output

Exemple : 13 Générer des statistiques d’e/s pour le système de fichiers réseau (NFS)

Nous pouvons utiliser la commande nfsiostat pour générer les rapports de statistiques d’e/s NFS. la commande nfsiostat est la partie du paquet ‘nfs-utils’. Supposons que nous ayons monté deux partages NFS sur notre serveur, donc pour générer le rapport de statistiques pour le partage NFS, exécutez la commande ci-dessous,

# nfsiostat

nfsiostat-command-output

Exemple:14 Générer un rapport de statistiques d’E / S système sur une période de temps

commande iostat générer les statistiques d’e / s en direct de votre système et si vous souhaitez afficher les rapports de statistiques sur une période de temps (statistiques d’e / s système de date antérieure), nous devrions utiliser l’utilitaire sar. La commande Sar est également fournie par le package ‘sysstat’

Lire aussi: « Générer un rapport CPU, Mémoire et E / S à l’aide de la commande SAR »

C’est tout, nous avons couvert toutes les options / paramètres pouvant être utilisés avec la commande iostat. Vous pouvez essayer de mélanger ces options pour obtenir des résultats plus souhaités / détaillés. Veuillez mentionner toute question ou question que vous avez concernant le tutoriel.