Follow Techotopia on Twitter

On-line Guides
All Guides
eBook Store
iOS / Android
Linux for Beginners
Office Productivity
Linux Installation
Linux Security
Linux Utilities
Linux Virtualization
Linux Kernel
System/Network Admin
Programming
Scripting Languages
Development Tools
Web Development
GUI Toolkits/Desktop
Databases
Mail Systems
openSolaris
Eclipse Documentation
Techotopia.com
Virtuatopia.com

How To Guides
Virtualization
General System Admin
Linux Security
Linux Filesystems
Web Servers
Graphics & Desktop
PC Hardware
Windows
Problem Solutions

  




 

 

NOTE: CentOS Enterprise Linux is built from the Red Hat Enterprise Linux source code. Other than logo and name changes CentOS Enterprise Linux is compatible with the equivalent Red Hat version. This document applies equally to both Red Hat and CentOS Enterprise Linux.
Linuxtopia - CentOS Enterprise Linux Introduction a l'administration systeme - Informations sp�cifiques � Red Hat Enterprise Linux

3.3. Informations sp�cifiques � Red Hat Enterprise Linux

Sous Red Hat Enterprise Linux, le contr�le de l'utilisation de la largeur de bande et du CPU se fait gr�ce � l'utilisation des outils examin�s dans le Chapitre 2�; il est par cons�quent recommand� de lire ce chapitre (si ce n'est pas d�j� fait) avant de poursuivre.

3.3.1. Contr�le de la largeur de bande sur Red Hat Enterprise Linux

Comme nous l'avons mentionn� dans la Section 2.4.2, il est difficile de contr�ler directement l'utilisation de la largeur de bande. N�anmoins, en analysant les statistiques au niveau des p�riph�riques, il est possible d'�valuer grossi�rement si une largeur de bande insuffisante pose un probl�me quelconque pour votre syst�me.

Avec vmstat, il est possible de d�terminer si l'activit� g�n�rale des p�riph�riques est excessive, en examinant les champs bi et bo�; en outre, les champs si et so fournissent des informations un peu plus pr�cises sur le degr� d'activit� du disque r�sultant des activit�s d'E/S associ�es au swap.

   procs                      memory    swap          io     system         cpu
 r  b  w   swpd   free   buff  cache  si  so    bi    bo   in    cs  us  sy  id
 1  0  0      0 248088 158636 480804   0   0     2     6  120   120  10   3  87
        

Dans l'extrait ci-dessus, le champ bi montre que deux blocs par seconde sont �crits sur les p�riph�riques blocs (essentiellement les disques durs), alors que le champ bo indique lui que six blocs par seconde sont lus depuis les p�riph�riques blocs. Il est �galement possible de voir qu'aucune partie de cette activit� n'est due � un �change de m�moire (aussi appel� swapping) car les champs si et so montrent tous les deux un taux d'activit�s d'E/S associ� au swap �quivalent � z�ro kilo-octet/seconde.

En utilisant iostat, il est possible d'obtenir des informations plus pr�cises sur l'activit� associ�e au disque�:

Linux 2.4.21-1.1931.2.349.2.2.entsmp (raptor.example.com)     07/21/2003

avg-cpu:  %user   %nice    %sys   %idle
           5.34    4.60    2.83   87.24

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
dev8-0            1.10         6.21        25.08     961342    3881610
dev8-1            0.00         0.00         0.00         16          0
        

Cette sortie montre que le p�riph�rique dont le nombre majeur est 8 (correspondant � /dev/sda, le premier disque SCSI) avait une moyenne l�g�rement surp�rieure � une op�ration d'E/S par seconde (le champ tsp). La plupart de l'activit� d'E/S de ce p�riph�rique �tait constitu�e par des op�rations d'�criture (le champ Blk_wrtn), avec un peu plus de 25 blocs �crits par seconde (le champ Blk_wrtn/s).

Dans le cas o� des informations encore plus d�taill�es seraient n�cessaires, utilisez l'option -x de iostat�:

Linux 2.4.21-1.1931.2.349.2.2.entsmp (raptor.example.com)     07/21/2003

avg-cpu:  %user   %nice    %sys   %idle
           5.37    4.54    2.81   87.27

Device:    rrqm/s wrqm/s   r/s   w/s  rsec/s  wsec/s    rkB/s    wkB/s avgrq-sz
/dev/sda    13.57   2.86  0.36  0.77   32.20   29.05    16.10    14.53    54.52
/dev/sda1    0.17   0.00  0.00  0.00    0.34    0.00     0.17     0.00   133.40
/dev/sda2    0.00   0.00  0.00  0.00    0.00    0.00     0.00     0.00    11.56
/dev/sda3    0.31   2.11  0.29  0.62    4.74   21.80     2.37    10.90    29.42
/dev/sda4    0.09   0.75  0.04  0.15    1.06    7.24     0.53     3.62    43.01
        

Outre le fait que les lignes plus longues contiennent plus de champs, la premi�re chose dont il faut se souvenir est que cette sortie d'iostat affiche d�sormais des statistiques sur les partitions de mani�re individuelle. En utilisant df pour associer les points de montage aux noms de p�riph�riques, il est possible d'utiliser ce rapport pour d�terminer par exemple si la partition /home est soumise � une charge excessive.

En fait, la sortie renvoy�e par la commande iostat -x est compos�e de lignes plus longues contenant plus d'informations que l'extrait ci-dessus, comme le montre le reste de chaque ligne reproduit ci-apr�s (notez que la colonne relative aux p�riph�riques faisant partie de l'extrait d'origine a �t� rajout�e ici pour permettre une lecture plus facile):

Device:    avgqu-sz   await  svctm  %util
/dev/sda       0.24   20.86   3.80   0.43
/dev/sda1      0.00  141.18 122.73   0.03
/dev/sda2      0.00    6.00   6.00   0.00
/dev/sda3      0.12   12.84   2.68   0.24
/dev/sda4      0.11   57.47   8.94   0.17
        

Dans cet exemple, il est int�ressant de remarquer que /dev/sda2 est la partition swap du syst�me�; �tant donn� les nombreux champs affichant 0.00, il est �vident que le swapping ne pose aucun probl�me pour le syst�me.

Le deuxi�me �l�ment de la colonne de p�riph�riques,/dev/sda1, est un autre �l�ment int�ressant en raison des statistiques inhabituelles de cette partition �; en effet, l'activit� globale semble faible et pourtant, la taille moyenne des requ�tes d'E/S (le champ avgrq-sz), le temps d'attente moyen (le champ await) et le temps de service moyen (le champ svctm) sont beaucoup plus importants que pour les autres partitons�; pourquoi�? Parce que cette partition contient le r�pertoire /boot/, qui est l'endroit o� le noyau et le disque de m�moire vive initiale (ramdisk) sont stock�s. Lorsque le syst�me d�marre, les E/S des op�rations de lecture (notez bien que seuls les champs relatifs � rsec/s et rkB/s n'affichent pas de z�ros�; d'une mani�re g�n�rale, aucune op�ration d'�criture n'est effectu�e ici) utilis�es lors de ce processus se font pour de nombreux blocs, entra�nant des temps d'attente et de service relativement longs, comme l'affiche la sortie d'iostat.

Il est possible d'utiliser sar pour un affichage � plus long terme des statistiques d'E/S�; la commande sar -b affiche par exemple, un rapport d'E/S g�n�ral comme le montre l'extrait ci-dessous�:

Linux 2.4.21-1.1931.2.349.2.2.entsmp (raptor.example.com)     07/21/2003

12:00:00 AM       tps      rtps      wtps   bread/s   bwrtn/s
12:10:00 AM      0.51      0.01      0.50      0.25     14.32
12:20:01 AM      0.48      0.00      0.48      0.00     13.32
…
06:00:02 PM      1.24      0.00      1.24      0.01     36.23
Average:         1.11      0.31      0.80     68.14     34.79
        

Ici, comme dans l'affichage initial d'iostat, les statistiques sont regroup�es pour tous les p�riph�riques blocs.

Un autre rapport sur les E/S peut �tre cr�� gr�ce � sar -d, comme le montre l'extrait suivant�:

Linux 2.4.21-1.1931.2.349.2.2.entsmp (raptor.example.com)     07/21/2003

12:00:00 AM       DEV       tps    sect/s
12:10:00 AM    dev8-0      0.51     14.57
12:10:00 AM    dev8-1      0.00      0.00
12:20:01 AM    dev8-0      0.48     13.32
12:20:01 AM    dev8-1      0.00      0.00
…
06:00:02 PM    dev8-0      1.24     36.25
06:00:02 PM    dev8-1      0.00      0.00
Average:       dev8-0      1.11    102.93
Average:       dev8-1      0.00      0.00
        

Ce rapport fournit certes des informations p�riph�rique par p�riph�rique, mais de mani�re relativement superficielle.

Malgr� l'absence de statistiques explicites montrant l'utilisation de la largeur de bande pour un chemin des donn�es ou un bus sp�cifique, il est au moins possible d'une part de voir l'activit� des p�riph�riques et d'autre part, d'utiliser cette derni�re afin de d�terminer indirectement le chargement du bus.

3.3.2. Contr�le de l'utilisation CPU sur Red Hat Enterprise Linux

Contrairement � la largeur de bande, le contr�le de l'utilisation CPU est une t�che relativement simple. Que ce soit gr�ce � un simple pourcentage d'utilisation CPU dans le Moniteur syst�me de GNOME ou aux statistiques plus d�taill�es rapport�es par la commande sar, il est possible de d�terminer d'une part combien de puissance CPU est consomm�e et d'autre part, quel �l�ment la consomme.

Au-del� du Moniteur syst�me de GNOME, il existe un autre outil de contr�le des ressources � savoir, top, le premier outil abord� dans le Chapitre 2, qui fournit lui, une repr�sentation plus d�taill�e de l'utilisation CPU. Ci-apr�s figure un rapport �tabli par la commande top depuis un poste de travail � double processeur�:

  9:44pm  up 2 days, 2 min,  1 user,  load average: 0.14, 0.12, 0.09
90 processes: 82 sleeping, 1 running, 7 zombie, 0 stopped
CPU0 states:  0.4% user,  1.1% system,  0.0% nice, 97.4% idle
CPU1 states:  0.5% user,  1.3% system,  0.0% nice, 97.1% idle
Mem:  1288720K av, 1056260K used,  232460K free,       0K shrd,  145644K buff
Swap:  522104K av,       0K used,  522104K free                  469764K cached

  PID USER     PRI  NI  SIZE  RSS SHARE STAT %CPU %MEM   TIME COMMAND
30997 ed        16   0  1100 1100   840 R     1.7  0.0   0:00 top
 1120 root       5 -10  249M 174M 71508 S <   0.9 13.8 254:59 X
 1260 ed        15   0 54408  53M  6864 S     0.7  4.2  12:09 gnome-terminal
  888 root      15   0  2428 2428  1796 S     0.1  0.1   0:06 sendmail
 1264 ed        15   0 16336  15M  9480 S     0.1  1.2   1:58 rhn-applet-gui
    1 root      15   0   476  476   424 S     0.0  0.0   0:05 init
    2 root      0K   0     0    0     0 SW    0.0  0.0   0:00 migration_CPU0
    3 root      0K   0     0    0     0 SW    0.0  0.0   0:00 migration_CPU1
    4 root      15   0     0    0     0 SW    0.0  0.0   0:01 keventd
    5 root      34  19     0    0     0 SWN   0.0  0.0   0:00 ksoftirqd_CPU0
    6 root      34  19     0    0     0 SWN   0.0  0.0   0:00 ksoftirqd_CPU1
    7 root      15   0     0    0     0 SW    0.0  0.0   0:05 kswapd
    8 root      15   0     0    0     0 SW    0.0  0.0   0:00 bdflush
    9 root      15   0     0    0     0 SW    0.0  0.0   0:01 kupdated
   10 root      25   0     0    0     0 SW    0.0  0.0   0:00 mdrecoveryd
          

La premi�re information relative au CPU se trouve sur la toute premi�re ligne�: la moyenne de charge. Cette derni�re est repr�sent�e par un chiffre correspondant au nombre moyen de processus ex�cutables sur le syst�me. La moyenne de charge est souvent exprim�e sous forme de trois groupes de chiffres (de la m�me mani�re que top) qui correspondent respectivement � la moyenne de charge de la derni�re minute et des 5, 15 derni�res minutes�; dans notre exemple, le syst�me n'�tait pas tr�s occup�.

La ligne suivante, bien que n'�tant pas �troitement li�e � l'utilisation CPU a tout de m�me une relation indirecte avec cette derni�re, dans la mesure o� elle affiche le nombre de processus ex�cutables (un seul dans le cas pr�sent -- souvenez-vous de ce chiffre car il a une signification particuli�re dans cet exemple). Le nombre de processus ex�cutables repr�sente un bon indicateur du degr� de limitation dict� par le CPU.

Viennent ensuite deux lignes affichant l'utilisation courante de chacun des deux CPU sur le syst�me. Les statistiques d'utilisation montrent si l'augmentation des cycles CPU �taient le r�sultat d'un traitement intense au niveau de l'utilisateur ou au niveau du syst�me�; appara�t �galement ici une statistique indiquant le degr� selon lequel les processus aux priorit�s de programmation modifi�es sont la cause d'une augmentation du temps CPU. Finalement, appara�t une statistique relative au temps d'inactivit�.

Plus bas dans la section de l'affichage relative aux processus figurent des statistiques montrant que top lui-m�me est le processus utilisant le plus de puissance CPU�; en d'autres termes, le seul processus sur ce syst�me qui autrement serait ex�cutable est top prenant une "image" de lui-m�me.

TuyauAstuce
 

Il est important de ne pas oublier que l'op�ration consistant � ex�cuter un moniteur de syst�me a un impact sur les statistiques d'utilisation des ressources que vous obtenez. Tel est le cas, jusqu'� un certain point, pour tous les moniteurs bas�s sur des logiciels.

Afin d'obtenir de plus amples informations sur l'utilisation CPU, il est n�cessaire de changer d'outil. En examinant la sortie de vmstat, la vue d'ensemble du syst�me de notre exemple est l�g�rement diff�rente, comme le montre l'extrait suivant�:

   procs                      memory    swap          io     system         cpu
 r  b  w   swpd   free   buff  cache  si  so    bi    bo   in    cs  us  sy  id
 1  0  0      0 233276 146636 469808   0   0     7     7   14    27  10   3  87
 0  0  0      0 233276 146636 469808   0   0     0     0  523   138   3   0  96
 0  0  0      0 233276 146636 469808   0   0     0     0  557   385   2   1  97
 0  0  0      0 233276 146636 469808   0   0     0     0  544   343   2   0  97
 0  0  0      0 233276 146636 469808   0   0     0     0  517    89   2   0  98
 0  0  0      0 233276 146636 469808   0   0     0    32  518   102   2   0  98
 0  0  0      0 233276 146636 469808   0   0     0     0  516    91   2   1  98
 0  0  0      0 233276 146636 469808   0   0     0     0  516    72   2   0  98
 0  0  0      0 233276 146636 469808   0   0     0     0  516    88   2   0  97
 0  0  0      0 233276 146636 469808   0   0     0     0  516    81   2   0  97
        

Les informations ci-dessus ont �t� obtenues gr�ce � la commande vmstat 1 10 qui recueille des �chantillons sur le syst�me toutes les secondes, dix fois de suite. Au premier abord, les statistiques relatives au CPU (� savoir les champs us, sy et id) semblent similaires � celles affich�es par top, ou peut-�tre m�me l�g�rement moins d�taill�es. N�anmoins, contrairement � top, il est possible d'obtenir ici un certain nombre d'informations sur la mani�re dont le CPU est utilis�.

En examinant les champs system, on peut voir que le CPU traite en moyenne environ 500 interruptions par seconde et qu'il alterne entre les processus de 80 � presque 400 fois par seconde. Si vous pensez que ces chiffres repr�sentent une activit� intense, d�trompez-vous car les op�rations de traitement au niveau de l'utilisateur (le champ us) atteignent seulement 2% en moyenne, alors que celles effectu�es au niveau du syst�me (le champs sy) sont g�n�ralement inf�rieures � 1%. Dans cet exemple, il s'agit �galement d'un syst�me inactif.

En examinant les outils offerts par Sysstat, on peut voir que iostat et mpstat n'offrent que peu d'informations suppl�mentaires par rapport aux sorties obtenues avec top et vmstat. Toutefois, sar cr�e un certain nombre de rapports pouvant se r�v�ler utiles lors du contr�le de l'utilisation CPU.

Le premier rapport est obtenu gr�ce � la commande sar -q qui affiche la longueur de la file d'attente des processus ex�cutables (run), le nombre total des processus et les moyennes de charge enregistr�s lors de la derni�re minute et au cours des 5 derni�res minutes. Ci-apr�s figure un exemple de ce rapport�:

Linux 2.4.21-1.1931.2.349.2.2.entsmp (falcon.example.com)      07/21/2003

12:00:01 AM   runq-sz  plist-sz   ldavg-1   ldavg-5
12:10:00 AM         3       122      0.07      0.28
12:20:01 AM         5       123      0.00      0.03
…
09:50:00 AM         5       124      0.67      0.65
Average:            4       123      0.26      0.26
        

Dans cet exemple, le syst�me est certes toujours occup� (puisque plus d'un processus est ex�cutable � tout moment donn�), mais il n'est pas excessivement charg� (car ce syst�me pr�cis est dot� de plus d'un processeur).

Le rapport sar ci-dessous qui fournit des informations sur le CPU est produit par la commande sar -u�:

Linux 2.4.21-1.1931.2.349.2.2.entsmp (falcon.example.com)      07/21/2003

12:00:01 AM       CPU     %user     %nice   %system     %idle
12:10:00 AM       all      3.69     20.10      1.06     75.15
12:20:01 AM       all      1.73      0.22      0.80     97.25
…
10:00:00 AM       all     35.17      0.83      1.06     62.93
Average:          all      7.47      4.85      3.87     83.81
        

Les statistiques contenues dans ce rapport ne sont pas vraiment diff�rentes de celles fournies par de nombreux autres outils. Toutefois, le gros avantage dans le cas pr�sent est que sar fournit ces donn�es de mani�re constante et par l� m�me, repr�sente une commande beaucoup plus utile pour obtenir des moyennes � long terme ou pour cr�er des graphiques sur l'utilisation CPU.

Sur des syst�mes � processeurs multiples, la commande sar -U permet de fournir des statistiques aussi bien pour un processeur particulier que pour l'ensemble des processeurs. Ci-apr�s figure un exemple de sortie renvoy�e par sar -U ALL�:

Linux 2.4.21-1.1931.2.349.2.2.entsmp (falcon.example.com)      07/21/2003

12:00:01 AM       CPU     %user     %nice   %system     %idle
12:10:00 AM         0      3.46     21.47      1.09     73.98
12:10:00 AM         1      3.91     18.73      1.03     76.33
12:20:01 AM         0      1.63      0.25      0.78     97.34
12:20:01 AM         1      1.82      0.20      0.81     97.17
…
10:00:00 AM         0     39.12      0.75      1.04     59.09
10:00:00 AM         1     31.22      0.92      1.09     66.77
Average:            0      7.61      4.91      3.86     83.61
Average:            1      7.33      4.78      3.88     84.02
        

La commande sar -w �tablit un rapport sur le nombre de changements de contextes par seconde et permet par l� m�me, d'obtenir des informations suppl�mentaires sur les endroits monopolisant les cycles CPU�:

Linux 2.4.21-1.1931.2.349.2.2.entsmp (falcon.example.com)      07/21/2003

12:00:01 AM   cswch/s
12:10:00 AM    537.97
12:20:01 AM    339.43
…
10:10:00 AM    319.42
Average:      1158.25
        

Il est �galement possible de cr�er deux rapports sar diff�rents fournissant des informations sur l'activit� d'interruption. Le premier (produit � l'aide de la commande sar -I SUM) affiche une seule statistique sur les "interruptions par seconde"�:

Linux 2.4.21-1.1931.2.349.2.2.entsmp (falcon.example.com)      07/21/2003

12:00:01 AM      INTR    intr/s
12:10:00 AM       sum    539.15
12:20:01 AM       sum    539.49
…
10:40:01 AM       sum    539.10
Average:          sum    541.00
        

� l'aide de la commande sar -I PROC, il est possible de ventiler les donn�es relatives � l'activit� d'interruption par processeur (sur des syst�mes � processeurs multiples) et par niveau d'interruption (de 0 � 15) comme le montre l'extrait ci-dessous�:

Linux 2.4.21-1.1931.2.349.2.2.entsmp (pigdog.example.com)     07/21/2003

12:00:00 AM  CPU  i000/s  i001/s  i002/s  i008/s  i009/s  i011/s  i012/s
12:10:01 AM    0  512.01    0.00    0.00    0.00    3.44    0.00    0.00

12:10:01 AM  CPU  i000/s  i001/s  i002/s  i008/s  i009/s  i011/s  i012/s
12:20:01 AM    0  512.00    0.00    0.00    0.00    3.73    0.00    0.00
…
10:30:01 AM  CPU  i000/s  i001/s  i002/s  i003/s  i008/s  i009/s  i010/s
10:40:02 AM    0  512.00    1.67    0.00    0.00    0.00   15.08    0.00
Average:       0  512.00    0.42    0.00     N/A    0.00    6.03     N/A
        

Ce rapport (tronqu� afin de tenir sur la page) comprend une colonne par niveau d'interruption (le champ i002/s illustrant le taux pour le niveau 2 d'interruption). Si ce syst�me �tait dot� de processeurs multiples, la sortie comprendrait une ligne par p�riode d'�chantillonnage et ce, pour chaque CPU.

Un autre point important � noter concernant ce rapport est que sar ajoute ou retire des champs d'interruption sp�cifiques, si aucune information n'est recueillie pour le champ en question. Comme le montre l'exemple ci-dessus, la fin du rapport inclut des niveaux d'interruption (� savoir 3 et 10) qui n'apparaissaient pas au d�but de la p�riode d'�chantillonnage.

NoteRemarque
 

Il existe deux autres rapports sar fournissant des informations sur les interruptions — sar -I ALL et sar -I XALL. Toutefois, la configuration par d�faut de l'utilitaire de recueil de donn�es sadc ne r�colte pas les informations n�cessaires pour ces rapports. Pour permettre la cr�ation de tels rapports, il suffit de modifier le fichier /etc/cron.d/sysstat en modifiant la ligne suivante�:

*/10 * * * * root /usr/lib/sa/sa1 1 1
          

de sorte � qu'elle ressemble � la ligne ci-dessous�:

*/10 * * * * root /usr/lib/sa/sa1 -I 1 1
          

Notez bien que cette modification donne � sadc l'instruction de recueillir des donn�es suppl�mentaires et que par cons�quent, elle entra�ne la cr�ation de fichiers de donn�es plus volumineux. Il est donc essentiel de vous assurez que la configuration de votre syst�me permet bien prendre en charge une consommation d'espace suppl�mentaire.

 
 
  Published under the terms of the GNU General Public License Design by Interspire