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
Answertopia.com

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

  




 

 

Linuxtopia - Red Hat 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