Surveillance des performances Linux avec les commandes Vmstat et Iostat

Voici notre série continue de Commandes Linux et Surveillance des performances Linux, dans cet article, vous apprendrez à propos de Vmstat et Iostat commandes, qui sont disponibles sur tous les principaux systèmes Unix-like (Linux/Unix/FreeBSD/Solaris) Systèmes d’exploitation.

vmstat commande (également connue comme outil de statistiques de mémoire virtuelle) montre des informations sur les processus, la mémoire, le disque et l’activité du CPU sous Linux, tandis que la iostat commande est utilisée pour surveiller l’utilisation du CPU, les statistiques d’entrée/sortie du système pour tous les disques et partitions.

Si les commandes vmstat et iostat ne sont pas disponibles sur votre machine Linux, veuillez installer le paquet sysstat. Les commandes vmstat, sar, et iostat font partie de la collection de paquets inclus dans sysstat – les outils de surveillance du système.

Vous pouvez télécharger et installer sysstat en utilisant le tarball source à partir du lien sysstat, mais nous recommandons l’installation via le gestionnaire de paquets.

Installer Sysstat sous Linux

$ sudo apt install sysstat         [On Debian, Ubuntu and Mint]
$ sudo yum install sysstat         [On RHEL/CentOS/Fedora and Rocky Linux/AlmaLinux]
$ sudo emerge -a app-admin/sysstat [On Gentoo Linux]
$ sudo pacman -S sysstat           [On Arch Linux]
$ sudo zypper install sysstat      [On OpenSUSE]    
Install Sysstat in Linux

Apprendre les exemples de commande Vmstat sous Linux

Dans cette section, vous apprendrez 6 exemples de commande vmstat et utilisation avec des captures d’écran.

1. Lister la mémoire active et inactive

Dans l’exemple ci-dessous, il y a six colonnes. La signification des colonnes est expliquée en détail dans la page de manuel de vmstat. Les champs les plus importants sont free sous la mémoire et si, so sous la colonne swap.

[root@tecmint ~]# vmstat -a

procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
 r  b   swpd   free  inact active   si   so    bi    bo   in   cs us sy id wa st
 1  0      0 810420  97380  70628    0    0   115     4   89   79  1  6 90  3  0
  • Free – Quantité d’espaces mémoire libres/inoccupés.
  • si – Mémoire échangée en provenance du disque par seconde en KiloOctets.
  • so – Mémoire échangée vers le disque par seconde en KiloOctets.

Note: Si vous exécutez vmstat sans paramètres, il affichera un rapport résumé depuis le démarrage du système.

2. Exécuter vmstat ‘X’ secondes et (‘nombre de fois’)

Avec cette commande, vmstat s’exécute toutes les deux secondes et s’arrête automatiquement après avoir exécuté six intervalles.

[root@tecmint ~]# vmstat 2 6

procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 0  0      0 810420  22064 101368    0    0    56     3   50   57  0  3 95  2  0
 0  0      0 810412  22064 101368    0    0     0     0   16   35  0  0 100  0  0
 0  0      0 810412  22064 101368    0    0     0     0   14   35  0  0 100  0  0
 0  0      0 810412  22064 101368    0    0     0     0   17   38  0  0 100  0  0
 0  0      0 810412  22064 101368    0    0     0     0   17   35  0  0 100  0  0
 0  0      0 810412  22064 101368    0    0     0     0   18   36  0  1 100  0  0

3. Vmstat avec Horodatages

vmstat commande avec le paramètre -t affiche les horodatages avec chaque ligne imprimée comme indiqué ci-dessous.

[tecmint@tecmint ~]$ vmstat -t 1 5

procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------ ---timestamp---
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 0  0      0 632028  24992 192244    0    0    70     5   55   78  1  3 95  1  0        2012-09-02 14:57:18 IST
 1  0      0 632028  24992 192244    0    0     0     0  171  514  1  5 94  0  0        2012-09-02 14:57:19 IST
 1  0      0 631904  24992 192244    0    0     0     0  195  600  0  5 95  0  0        2012-09-02 14:57:20 IST
 0  0      0 631780  24992 192244    0    0     0     0  156  524  0  5 95  0  0        2012-09-02 14:57:21 IST
 1  0      0 631656  24992 192244    0    0     0     0  189  592  0  5 95  0  0        2012-09-02 14:57:22 IST

4. Statistiques des différents compteurs

Commande vmstat avec l’option -s affiche un résumé de divers compteurs d’événements et statistiques de mémoire.

[tecmint@tecmint ~]$ vmstat -s

      1030800  total memory
       524656  used memory
       277784  active memory
       185920  inactive memory
       506144  free memory
        26864  buffer memory
       310104  swap cache
      2064376  total swap
            0  used swap
      2064376  free swap
         4539 non-nice user cpu ticks
            0 nice user cpu ticks
        11569 system cpu ticks
       329608 idle cpu ticks
         5012 IO-wait cpu ticks
           79 IRQ cpu ticks
           74 softirq cpu ticks
            0 stolen cpu ticks
       336038 pages paged in
        67945 pages paged out
            0 pages swapped in
            0 pages swapped out
       258526 interrupts
       392439 CPU context switches
   1346574857 boot time
         2309 forks

5. Surveiller les statistiques des disques Linux

vmstat avec l’option -d affiche toutes les statistiques des disques de Linux.

[tecmint@tecmint ~]$ vmstat -d

disk- ------------reads------------ ------------writes----------- -----IO------
       total merged sectors      ms  total merged sectors      ms    cur    sec
ram0       0      0       0       0      0      0       0       0      0      0
ram1       0      0       0       0      0      0       0       0      0      0
ram2       0      0       0       0      0      0       0       0      0      0
ram3       0      0       0       0      0      0       0       0      0      0
ram4       0      0       0       0      0      0       0       0      0      0
ram5       0      0       0       0      0      0       0       0      0      0
ram6       0      0       0       0      0      0       0       0      0      0
ram7       0      0       0       0      0      0       0       0      0      0
ram8       0      0       0       0      0      0       0       0      0      0
ram9       0      0       0       0      0      0       0       0      0      0
ram10      0      0       0       0      0      0       0       0      0      0
ram11      0      0       0       0      0      0       0       0      0      0
ram12      0      0       0       0      0      0       0       0      0      0
ram13      0      0       0       0      0      0       0       0      0      0
ram14      0      0       0       0      0      0       0       0      0      0
ram15      0      0       0       0      0      0       0       0      0      0
loop0      0      0       0       0      0      0       0       0      0      0
loop1      0      0       0       0      0      0       0       0      0      0
loop2      0      0       0       0      0      0       0       0      0      0
loop3      0      0       0       0      0      0       0       0      0      0
loop4      0      0       0       0      0      0       0       0      0      0
loop5      0      0       0       0      0      0       0       0      0      0
loop6      0      0       0       0      0      0       0       0      0      0
loop7      0      0       0       0      0      0       0       0      0      0
sr0        0      0       0       0      0      0       0       0      0      0
sda     7712   5145  668732  409619   3282  28884  257402  644566      0    126
dm-0   11578      0  659242 1113017  32163      0  257384 8460026      0    126
dm-1     324      0    2592    3845      0      0       0       0      0      2

6. Afficher les statistiques en mégabytes

Le vmstat affiche les statistiques de mémoire en kilooctets par défaut, mais vous pouvez également afficher des rapports avec des tailles de mémoire en mégabytes avec l’argument -S M. Considérez l’exemple suivant.

[root@tecmint ~]# vmstat -S M 1 5

procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 0  0      0    346     53    476    0    0    95     8   42   55  0  2 96  2  0
 0  0      0    346     53    476    0    0     0     0   12   15  0  0 100  0  0
 0  0      0    346     53    476    0    0     0     0   32   62  0  0 100  0  0
 0  0      0    346     53    476    0    0     0     0   15   13  0  0 100  0  0
 0  0      0    346     53    476    0    0     0     0   34   61  0  1 99  0  0

Apprendre les exemples de commande iostat dans Linux

Dans cette section, vous apprendrez à propos de 6 exemples de commande iostat et d’utilisation avec des captures d’écran.

7. Afficher les statistiques CPU et E/S des disques

iostat sans arguments affiche les CPU et E/S statistiques de toutes les partitions comme indiqué ci-dessous.

[root@tecmint ~]# iostat

Linux 2.6.32-279.el6.i686 (tecmint.com)         09/03/2012      _i686_  (1 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.12    0.01    1.54    2.08    0.00   96.24

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
sda               3.59       161.02        13.48    1086002      90882
dm-0              5.76       159.71        13.47    1077154      90864
dm-1              0.05         0.38         0.00       2576          0

8. Affiche les statistiques CPU Linux

iostat avec les arguments -c n’affiche que les CPU statistiques comme indiqué ci-dessous.

[root@tecmint ~]# iostat -c

Linux 2.6.32-279.el6.i686 (tecmint.com)         09/03/2012      _i686_  (1 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.12    0.01    1.47    1.98    0.00   96.42

9. Affiche les statistiques E/S des disques Linux

iostat avec les arguments -d n’affiche que les statistiques E/S des disques de toutes les partitions comme indiqué.

[root@tecmint ~]# iostat -d

Linux 2.6.32-279.el6.i686 (tecmint.com)         09/03/2012      _i686_  (1 CPU)

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
sda               3.35       149.81        12.66    1086002      91746
dm-0              5.37       148.59        12.65    1077154      91728
dm-1              0.04         0.36         0.00       2576          0

10. Affiche les statistiques E/S d’un dispositif spécifique

Par défaut, il affiche les statistiques de toutes les partitions, avec les arguments -p et le nom du dispositif n’affiche que les statistiques E/S des disques pour un dispositif spécifique seulement comme indiqué.

[root@tecmint ~]# iostat -p sda

Linux 2.6.32-279.el6.i686 (tecmint.com)         09/03/2012      _i686_  (1 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.11    0.01    1.44    1.92    0.00   96.52

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
sda               3.32       148.52        12.55    1086002      91770
sda1              0.07         0.56         0.00       4120         18
sda2              3.22       147.79        12.55    1080650      91752

11. Afficher les statistiques LVM

Avec le paramètre -N (en majuscule), il n’affiche que les statistiques LVM comme indiqué.

[root@tecmint ~]# iostat -N

Linux 2.6.32-279.el6.i686 (tecmint.com)         09/03/2012      _i686_  (1 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.11    0.01    1.39    1.85    0.00   96.64

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
sda               3.20       142.84        12.16    1086002      92466
vg_tecmint-lv_root     5.13       141.68        12.16    1077154      92448
vg_tecmint-lv_swap     0.04         0.34         0.00       2576          0

12. Vérifier la version d’Iostat

Avec le paramètre -V (en majuscule), il affiche la version de iostat comme indiqué.

[root@tecmint ~]# iostat -V

sysstat version 11.7.3
(C) Sebastien Godard (sysstat  orange.fr)

Le vmstat et le iostat contiennent un certain nombre de colonnes et de drapeaux qui ne peuvent pas être expliqués en détail. Si vous souhaitez en savoir plus à ce sujet, vous pouvez vous référer à la page de manuel de vmstat et de iostat.

# man vmstat
# man iostat

N’hésitez pas à le partager si vous trouvez cet article utile via notre zone de commentaires ci-dessous.

Source:
https://www.tecmint.com/linux-performance-monitoring-with-vmstat-and-iostat-commands/