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