GNU/Linux >> Tutoriales Linux >  >> Linux

Uso de iostat para monitorear el rendimiento del sistema en Linux (Ejemplos incluidos)

El iostato El comando se utiliza para monitorear la carga del dispositivo de entrada/salida del sistema mediante la observación del tiempo que los discos físicos están activos en relación con sus tasas de transferencia promedio. Esta información se puede utilizar para cambiar la configuración del sistema para equilibrar mejor la carga de entrada/salida entre los discos físicos y los adaptadores.

A continuación se muestra un resultado de muestra cuando ejecuta el comando iostat sin ningún argumento.

# iostat
Linux 3.10.0-514.2.2.el7.x86_64 (geeklab)     11/07/2017      _x86_64_        (128 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.36    0.00    1.07    0.24    0.00   98.32

Device:            tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtn
sda              17.26         8.80       242.60    3795176  104664988
sdb               0.52         5.66        36.17    2440242   15603348
sdc               0.02         0.34         0.00     147313          0
sdd               0.01         0.09         0.00      39527          0
sde               0.01         0.10         0.00      41189          0
sdf               0.01         0.09         0.00      39025          0
.....

La primera línea muestra la versión del kernel de Linux, el nombre del host, la fecha actual, la arquitectura y la cantidad de CPU en su sistema.

El informe de la utilidad iostat tiene las siguientes secciones:
– Utilización de la CPU
– Utilización del dispositivo

Informe de utilización de la CPU

Las siguientes dos líneas muestran las estadísticas de la CPU. Para sistemas multiprocesador, los valores de CPU son promedios globales entre todos los procesadores. Las columnas se definen de la siguiente manera:

%usuario El porcentaje de CPU utilizado al ejecutar aplicaciones a nivel de usuario
%agradable El porcentaje de CPU utilizado durante la ejecución a nivel de usuario con buena prioridad
%sistema El porcentaje de CPU utilizado durante la ejecución en el nivel del sistema (kernel)
%ioespera El porcentaje de tiempo que las CPU estuvieron inactivas mientras el sistema tenía una solicitud de E/S de disco pendiente
% robo El porcentaje de tiempo invertido en espera involuntaria por la CPU o las CPU virtuales mientras el hipervisor prestaba servicio a otro procesador virtual
% inactivo El porcentaje de tiempo que la CPU estuvo (o las CPU estuvieron) inactiva y el sistema no tuvo una solicitud de E/S de disco pendiente

Informe de utilización del dispositivo

Las líneas restantes en el ejemplo muestran estadísticas por dispositivo físico o por partición. Puede incluir dispositivos de bloque y particiones como argumentos para el comando iostat. Si no se incluyen argumentos, el informe muestra todos los dispositivos para los que el kernel tiene estadísticas. Las columnas se definen de la siguiente manera:

Dispositivo Nombre del dispositivo o partición tal como aparece en el directorio /dev
tps Número de transferencias (solicitud de E/S) por segundo emitidas al dispositivo
kB_lectura/s Cantidad de datos leídos del dispositivo expresada en kilobytes por segundo.
kB_wrtn/s Cantidad de datos escritos en el dispositivo expresada en kilobytes por segundo
kB_leer Número total de kilobytes leídos
kB_wrtn Número total de kilobytes escritos

Se pueden incluir estadísticas más detalladas proporcionando diferentes opciones al comando iostat. Se enumeran algunas de las opciones de la línea de comandos:

-c Muestra el informe de utilización de la CPU.
-d Mostrar el informe de utilización del dispositivo.
-m Mostrar estadísticas en megabytes por segundo.
-x Mostrar estadísticas ampliadas.

Se pueden ejecutar varios informes en diferentes intervalos mediante el uso de argumentos de intervalo y recuento. El siguiente ejemplo muestra 6 informes en intervalos de 2 segundos para todos los dispositivos:

# iostat –d 2 6

Ejemplo de comando iostat

Ejemplo 1:comando iostat

Para ver las estadísticas de la CPU y la utilización del dispositivo de entrada/salida, use el siguiente comando:

# iostat 
Linux 3.10.0-693.21.1.el7.x86_64 (jamiericho1.mylabserver.com) 	03/16/2018 	_x86_64_	(1 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           5.90    0.00    2.60    1.76    2.87   86.87

Device:            tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtn
xvda             68.90       947.14      1117.86     340222     401546
xvdf              2.76        55.51         0.00      19940          0

El primer resultado de iostat es la suma de la información desde el inicio del sistema. No hemos especificado ningún intervalo para que se ejecute el comando iostat, por lo que mostrará información resumida desde el inicio del sistema de forma predeterminada.

Ejemplo 2:iostat con intervalo

Para poder ver una tendencia en las estadísticas o mostrar continuamente las estadísticas en un intervalo regular, use el comando iostat con el intervalo provisto. Por ejemplo, para reportar estadísticas cada 5 segundos:

# iostat 5

También puede limitar el número de veces que se generarán las estadísticas proporcionando un número de intervalo. Por ejemplo, para ejecutar el comando iostat en un intervalo de 5 segundos con solo 3 intervalos:

# iostat 5 3

Ejemplo 3:Mostrar solo estadísticas de CPU

Para mostrar solo las estadísticas de la CPU del sistema, utilice la opción “-c ” opción con iostat.

# iostat -c
Linux 3.10.0-693.21.1.el7.x86_64 (jamiericho1.mylabserver.com) 	03/16/2018 	_x86_64_	(1 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           2.64    0.00    1.20    0.78    1.34   94.03

Ejemplo 4:muestra las estadísticas del disco

Otra opción útil para usar con iostat es “-d ” que solo muestra las estadísticas de disco del sistema.

# iostat -d
Linux 3.10.0-693.21.1.el7.x86_64 (jamiericho1.mylabserver.com) 	03/16/2018 	_x86_64_	(1 CPU)

Device:            tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtn
xvda             28.82       389.03       465.87     340222     407421
xvdf              1.14        22.80         0.00      19940          0

Ejemplo 5:Mostrar estadísticas extendidas

Para mostrar estadísticas extendidas con iostat, use “-x " opción. Por ejemplo,

# iostat -x
Linux 3.10.0-693.21.1.el7.x86_64 (jamiericho1.mylabserver.com) 	03/16/2018 	_x86_64_	(1 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           1.52    0.00    0.71    0.45    0.83   96.50

Device:         rrqm/s   wrqm/s     r/s     w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
xvda              0.03     1.57   11.38    6.75   242.60   288.58    58.59     0.17    9.13    0.91   23.00   0.42   0.76
xvdf              0.00     0.00    0.70    0.00    14.10     0.00    40.16     0.00    2.84    2.84    0.00   2.15   0.15

Ejemplo 6:combinar varias opciones

Siempre puede combinar varias opciones de los ejemplos que se muestran arriba. Con esto, puede mostrar un informe de uso de disco extendido en un intervalo de 2 segundos durante 3 intervalos, como se muestra en el siguiente ejemplo.

# iostat -xdt 2 3
Linux 3.10.0-693.21.1.el7.x86_64 (jamiericho1.mylabserver.com) 	03/16/2018 	_x86_64_	(1 CPU)

03/16/2018 04:57:55 AM
Device:         rrqm/s   wrqm/s     r/s     w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
xvda              0.03     1.45   10.47    6.23   223.11   265.50    58.53     0.15    9.12    0.91   22.93   0.42   0.70
xvdf              0.00     0.00    0.65    0.00    12.96     0.00    40.16     0.00    2.84    2.84    0.00   2.15   0.14

03/16/2018 04:57:57 AM
Device:         rrqm/s   wrqm/s     r/s     w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
xvda              0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00    0.00    0.00   0.00   0.00
xvdf              0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00    0.00    0.00   0.00   0.00

03/16/2018 04:57:59 AM
Device:         rrqm/s   wrqm/s     r/s     w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
xvda              0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00    0.00    0.00   0.00   0.00
xvdf              0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00    0.00    0.00   0.00   0.00

Toma,
-t – mostrar la marca de tiempo del intervalo

Uso de vmstat para solucionar problemas de rendimiento en Linux


Linux
  1. Cómo monitorear el rendimiento del sistema Linux con Sysstat

  2. 24 ejemplos de iostat, vmstat y mpstat para la supervisión del rendimiento de Linux

  3. Uso de iostat para monitorear el rendimiento del sistema en Linux (Ejemplos incluidos)

  4. Ejemplos de comandos "apagar" en Linux

  5. Ejemplos de uso del comando dmsetup en Linux

Cómo monitorear el tiempo de actividad del sistema Linux usando Uptimed

Cómo monitorear el rendimiento de Linux usando la herramienta systat

Comando iostat en Linux

Solucionar problemas y monitorear el rendimiento del sistema Linux con nmon

Cómo monitorear las métricas del sistema en tiempo real usando la herramienta Glances en Linux

Ejemplos de comandos iostat en Linux