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
Privacy Policy

  




 

 

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 4: Introduccion a la administracion de sistemas - Informaci�n espec�fica a Red Hat Enterprise Linux

3.3. Informaci�n espec�fica a Red Hat Enterprise Linux

La monitorizaci�n del ancho de banda y de la utilizaci�n del CPU bajo Red Hat Enterprise Linux implica utilizar las herramientas discutidas en el Cap�tulo 2; por lo tanto, si a�n no ha le�do ese cap�tulo, es bueno que lo haga antes de continuar.

3.3.1. Monitorizar el ancho de banda en Red Hat Enterprise Linux

Como se indic� en la Secci�n 2.4.2, es dif�cil monitorizar directamente la utilizaci�n del ancho de banda. Sin embargo, examinando las estad�sticas a nivel de dispositivos, es posible medir a grandes rasgos si la insuficiencia de ancho de banda es un problema en su sistema.

Usando vmstat, es posible determinar si es excesiva la actividad general de los dispositivos examinando los campos bi y bo; adem�s, revisando los campos si y so le dar� un poco m�s de conocimiento sobre cu�nta actividad de disco se debe a E/S relacionada a 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
        

En este ejemplo, el campo bi muestra dos bloques/segundos escritos a los dispositivos en bloque (principalmente unidades de disco), mientras que el campo bo muestra seis bloques/segundos le�do desde los dispositivos de bloque. Podemos determinar que ninguna de esta actividad se debe a intercambio de memoria (swap), ya que los campos si y so ambos muestran una tasa de E/S relacionada a swap de cero kilobytes/segundo.

Usando iostat, es posible obtener un poco m�s de detalles sobre la actividad relacionada al disco:

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
        

Esta salida nos muestra que el dispositivo con un n�mero major de 8 (el cual es /dev/sda, el primer disco SCSI) tiene un promedio un poco mayor de una operaci�n de E/S por segundo (el campo tsp). La mayor�a de la actividad de E/S para este dispositivo fueron escrituras (el campo Blk_wrtn), con un poco m�s de 25 bloques escritos cada segundo (el campo Blk_wrtn/s).

Si se necesitan m�s detalles, utilice la opci�n -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
        

M�s all� de las largas l�neas conteniendo m�s campos, la primera cosa a tener en mente es que esta salida de iostat est� mostrando ahora estad�sticas a un nivel de partici�n. Usando df para asociar los puntos de montaje con los nombres de dispositivos, es posible utilizar este informe para determinar si, por ejemplo, la partici�n conteniendo /home/ est� experimentando una sobrecarga excesiva.

En realidad, cada l�nea de salida de iostat -x es m�s larga y contiene m�s informaci�n que esto; he aqu� el resto de cada l�nea (agregando la columna del dispositivo para facilitar la lectura):

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
        

En este ejemplo, es interesante observar que /dev/sda2 es la partici�n swap del sistema; obviamente, a partir de los muchos campos de esta partici�nque leen 0.00, el swapping no es un problema en el sistema.

Otro punto interesante a tomar en cuenta es /dev/sda1. Las estad�sticas para esta partici�n son inusuales; la actividad general parece baja, pero por qu� el tama�o promedio de peticiones de E/S (el campo avgrq-sz), el tiempo promedio de espera (el campo await) y el tiempo promedio de servicio (el campo svctm) son mucho m�s grandes que en las otras particiones? La respuesta es que esta partici�n contiene el directorio /boot/, el cual es donde el kernel y el disco inicial ramdisk son almacenados. Cuando el sistema arranca, las lecturas de E/S (observe que solamente los campos rsec/s y rkB/s son diferentes de cero; no se hace ninguna escritura aqu� de forma regular) usadas durante el proceso de arranque son para grandes n�meros de bloques, resultando en despliegues iostat de esperas relativamente largas y tiempos de servicios.

Es posible utilizar sar para una vista de largo plazo de las estad�sticas de E/S; por ejemplo, sar -b muestra un informe general de E/S:

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
        

Aqu�, como en la pantalla inicial de iostat, las estad�sticas son agrupadas para todos los dispositivos de bloque.

Usando sar -d se produce otro informe relacionado a E/S:

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
        

Este informe proporciona informaci�n por dispositivo, pero con pocos detalles.

Mientras que no hay estad�sticas expl�citas mostrando la utilizaci�n del ancho de banda para un bus o datapath dado, al menos podemos determinar qu� est�n haciendo los dispositivos y utilizar su actividad para determinar indirectamente la carga del bus.

3.3.2. Monitorizar la utilizaci�n del CPU en Red Hat Enterprise Linux

A diferencia del ancho de banda, la supervisi�n de la utilizaci�n del CPU es mucho m�s directa. Desde un porcentage de utilizaci�n de CPU en el Monitor del sistema GNOME, hasta las estad�sticas m�s detalladas informadas por sar, es posible determinar de forma veraz cu�nto poder de CPU est� siendo utilizado y en qu�.

M�s all� del Monitor del sistema GNOME, top es la primera herramienta de supervisi�n de recursos discutida en el Cap�tulo 2 para proporcionar una representaci�n m�s profunda de la utilizaci�n de CPU. A continuaci�n se muestra un informe con top de una estaci�n de trabajo con dos procesadores:

  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 primera informaci�n relacionada con el CPU se presenta en la primera l�nea: la carga promedio. La carga promedio es un n�mero correspondiente al n�mero promedio de procesos ejecutables en el sistema. La carga promedio es a menudo listada como tres conjuntos de n�meros (como lo hace top), lo que representa la carga promedio para los �ltimos 1, 5 y 15 minutos, indicando que el sistema en este ejemplo no estaba muy ocupado.

La l�nea siguiente, aunque no est� relacionada estrictamente a la utilizaci�n del CPU, tiene una relaci�n indirecta, en que muestra el n�mero de procesos ejecutables (aqu�, solamente uno -- recuerde este n�mero, pues significa algo especial en este ejemplo). El n�mero de procesos ejecutables es un buen indicador de cuan comprometido computacionalmente puede estar un sistema.

Luego estan dos l�neas mostrando la utilizaci�n actual para cada uno de los dos CPUs en el sistema. Las estad�sticas de utilizaci�n se desglosan para mostrar si los ciclos de CPU gastados se hicieron para procesamiento a nivel de usuario o a nivel del sistema; tambi�n est� incluido una estad�stica que muestra cuanto tiempo de CPU se gast� por procesos con prioridades de planificaci�n alteradas. Finalmente, hay una estad�stica de tiempo ocioso.

Desplazandose m�s abajo en la secci�n relacionada a procesos, encontramos que el proceso ejecutando la mayor parte del poder de CPU es top mismo; en otras palabras, el proceso ejecutable en este sistema ocioso fue top tomando una "foto" de s� mismo.

SugerenciaSugerencia
 

Es importante recordar que el acto mismo de ejecutar un monitor del sistema afecta las estad�sticas de utilizaci�n de recursos que usted recibe. Todos los monitorizadores basados en software hasta cierto punto hacen esto.

Para obtener m�s conocimiento detallado sobre la utilizaci�n del CPU, debemos cambiar herramientas. Si examinanos la salida desde vmstat, obtenemos un entendimiento ligeramente diferente de nuestro sistema ejemplo:

   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
        

Aqu� hemos utilizado el comando vmstat 1 10 para tomar muestras del sistema cada segundo diez veces. Primero, las estad�sticas relacionadas al CPU (los campos us, sy, y id) parecen similares a lo que mostraba top, y quiz�s hasta aparece un poco menos detallado. Sin embargo, a diferencia de top, tambi�n podemos obtener un poco m�s de informaci�n en c�mo el CPU es utilizado.

Si examinamos los campos system, notamos que el CPU est� manejando alrededor de 500 interrupciones por segundo en promedio y que se intercambia entre procesos entre 80 y 400 veces en un segundo. Si piensa que esto parece mucha actividad, piense nuevamente, porque el procesamiento a nivel de usuario (el campo us) est� promediando solamente 2%, mientras que el procesamiento a nivel del sistema (el campo sy) es usualmente por debajo de 1%. Una vez m�s, esto es un sistema ocioso.

Revisando las herramientas que Sysstat ofrece, encontramos que iostat y mpstat proporcionan poca informaci�n adicional sobre lo que ya hemos experimentado con top y vmstat. Sin embargo, sar produce un n�mero de informes que son de ayuda cuando se supervisa la utilizaci�n del CPU.

El primer informe se obtiene por el comando sar -q, el cual muestra el largo de la cola de ejecuci�n, n�mero total de procesos y la carga promedio durante los �ltimos uno y cinco minutos. He aqu� un ejemplo:

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
        

En este ejemplo, el sistema siempre est� ocupado (dado que siempre hay m�s de un proceso ejecutable), pero no est� sobrecargado (puesto que este sistema particular tiene m�s de un procesador).

El pr�ximo informe sar relacionado con el CPU lo produce el comando 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
        

Las estad�sticas contenidas en este informe no son diferentes de aquellas generadas por muchas otras herramientas. El principal beneficio aqu� es que sar hace los datos disponibles de forma cont�nua y es por tanto m�s �til para obtener datos sobre promedios de largos tiempos, o para la producci�n de gr�ficos de utilizaci�n de CPU.

En sistemas multiproceso, el comando sar -U puede producir estad�sticas para un procesador individual o para todos los procesos. He aqu� un ejemplo de la salida desde 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
        

El comando sar -w informa sobre el n�mero de switches de contexto por segundo, haciendo posible ganar conocimiento adicional sobre d�nde se gastan los ciclos de 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
        

Tambi�n es posible generar dos informes sar diferentes en actividad interrumpida. El primero, (generado usando el comando sar -I SUM) muestra una estad�stica simple de "interrupciones por segundo":

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
        

Usando el comando sar -I PROC, es posible desglosar la actividad de interrupciones por procesador (en sistemas multiproceso) y por nivel de interrupciones (desde 0 a 15):

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
        

Este informe (el cual se ha truncado horizontalmente para ajustarse a la p�gina) incluye una columna por cada nivel de interrupci�n (por ejemplo, el campo i002/s ilustrando las tasas para nivel de interrupci�n 2). Si este fuese un sistema multiprocesador, habr�a una l�nea por per�odo de muestra para cada CPU.

Otro pundo importante a tomar en cuenta es que sar a�ade o elimina campos de interrupci�n espec�ficos si no se reunen datos para ese campo. El informe de ejemplo de arriba suministra un ejemplo de esto, el final del informe incluye los niveles de interrupci�n (3 y 10) que no estaban presentes al principio del per�odo de muestras.

NotaNota
 

Existen otros dos informes sar relacionados a interrupciones — sar -I ALL y sar -I XALL. Sin embargo, la configuraci�n predeterminada para la utilidad de recolecci�n de datos sadc no reune la informaci�n necesaria para estos informes. Esto se puede cambiar modificando el archivo /etc/cron.d/sysstat, y cambiando esta l�nea:

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

a esto:

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

Tenga en mente que este cambio ocasiona que se reuna informaci�n adicional por sadc y resulta en tama�os de archivos m�s grandes. Por lo tanto, aseg�rese de que la configuraci�n de su sistema pueda soportar el consumo de espacio adicional.

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