Outils personnels

Gestion des IOs, iowaits : Différence entre versions

De wikiGite

Ligne 19 : Ligne 19 :
  
 
La colonne IO> indique les processus qui génèrent des IO. Avec ''top'' dans une autre console, on peut faire le rapport sur ce qui provoque le load average.
 
La colonne IO> indique les processus qui génèrent des IO. Avec ''top'' dans une autre console, on peut faire le rapport sur ce qui provoque le load average.
 +
== vmstat ==
 +
''vmstat'', bien que plus aride, donne à peu près les mêmes informations que top. Pour afficher une stat par seconde :
 +
# vmstat 1
 +
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  1380  16776  95812 260968    0    0    7    27    0  16  0  0 96  3  0
 +
  0  0  1380  16776  95812 260972    0    0    0    0 1026  97  0  0 100  0  0
 +
  0  0  1380  16776  95812 260972    0    0    0    0 1006  87  0  0 100  0  0
 +
  0  0  1380  16776  95820 260964    0    0    0  164 1019  119  0  1 100  0  0
 +
  0  0  1380  16776  95820 260972    0    0    0    0 1008  89  0  0 100  0  0
  
 
== A voir ==
 
== A voir ==
 
"atop" existe aussi. A tester.
 
"atop" existe aussi. A tester.

Version du 20 janvier 2012 à 09:30

S'il est assez simple avec ps de trouver ce qui provoque une utilisation excessive du CPU ou de la mémoire, c'est plus compliqué quand ce sont les attentes disques (iowaits). Si top indique un load average anormal, qui semble provenir d'iowaits importants ("%wa" dans l'entête), on peut utiliser iotop (sur CentOS : dépôt EPEL) :

# iotop
Total DISK READ: 0.00 B/s | Total DISK WRITE: 36.02 K/s
  TID  PRIO  USER     DISK READ  DISK WRITE  SWAPIN     IO>    COMMAND                                       
 1142 be/3 root        0.00 B/s    9.21 K/s  0.00 %  0.38 % [kjournald]
    5 rt/3 root        0.00 B/s    0.00 B/s  0.00 %  0.13 % [migration/1]
31527 be/4 dovecot     0.00 B/s    0.00 B/s  0.00 %  0.08 % imap-login
 2984 be/4 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % gpm -m /dev/input/mice -t exps2
 1638 be/2 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % audispd
 2401 be/4 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % automount
31959 be/4 dovecot     0.00 B/s    0.00 B/s  0.00 %  0.00 % pop3-login
    1 be/4 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % init [3]
29402 be/4 root        0.00 B/s    0.00 B/s  0.00 %  0.00 % spamd child
 2797 be/4 mysql       0.00 B/s    0.00 B/s  0.00 %  0.00 % mysqld --basedir=/usr --~var/lib/mysql/mysql.sock
 2766 be/4 mysql       0.00 B/s    0.00 B/s  0.00 %  0.00 % mysqld --basedir=/usr --~var/lib/mysql/mysql.sock
 2767 be/4 mysql       0.00 B/s    0.00 B/s  0.00 %  0.00 % mysqld --basedir=/usr --~var/lib/mysql/mysql.sock
 2768 be/4 mysql       0.00 B/s    0.00 B/s  0.00 %  0.00 % mysqld --basedir=/usr --~var/lib/mysql/mysql.sock

La colonne IO> indique les processus qui génèrent des IO. Avec top dans une autre console, on peut faire le rapport sur ce qui provoque le load average.

vmstat

vmstat, bien que plus aride, donne à peu près les mêmes informations que top. Pour afficher une stat par seconde :

# vmstat 1
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   1380  16776  95812 260968    0    0     7    27    0   16  0  0 96  3  0
 0  0   1380  16776  95812 260972    0    0     0     0 1026   97  0  0 100  0  0
 0  0   1380  16776  95812 260972    0    0     0     0 1006   87  0  0 100  0  0
 0  0   1380  16776  95820 260964    0    0     0   164 1019  119  0  1 100  0  0
 0  0   1380  16776  95820 260972    0    0     0     0 1008   89  0  0 100  0  0

A voir

"atop" existe aussi. A tester.