Uso del comando iostat con ejemplos en linux

Uso del comando iostat con ejemplos en linux.

El comando iostat se usa para monitorear la carga de entrada/salida (I/O) del dispositivo del sistema, normalmente el/los discos. La herramienta vigila el tiempo que los dispositivos están activos en relación con sus velocidades promedio de transferencia.

Al invocar iostat, se generan informes muy útiles para detectar sobrecargas y poder equilibrar el I/O de los discos del sistema. En este articulo conoceremos las opciones más usadas, así como una detallada explicación del informe.

Comando iostat

Comando iostat

 

Uso del comando iostat con ejemplos en linux

Instalar iostat

Iostat viene incluido en el paquete sysstat. Normalmente no suele venir instalado por defecto, por tanto primero debemos instalarlo.

Debian, Ubuntu, Linux Mint y derivados:

Rhel, CentOS, Fedora y derivados:

Arch Linux, Manjaro y derivados:

 

Sintaxis y uso básico de iostat

Una vez tengamos instalado el paquete de herramientas sysstat ya lo podemos utilizar, pero primero vemos su sintaxis (muchas opciones).

Para comenzar ejecutamos el comando sin opciones.

Obtenemos una salida similar a…

 

Explicación del informe de iostat

Si revisamos la salida de ejemplo anterior, observamos que se divide en tres partes.

  • Sistema
  • CPU
  • Dispositivo

La información del sistema es muy básica, pero cumple a la perfección como preámbulo de lo que viene después. Nos dice que tipo de sistema tenemos: Kernel, hostname, fecha, sistema y numero de núcleos de la cpu.

En el segundo apartado la cosa se complica, nos aporta los datos de consumo de la cpu que pasamos a explicar en la siguiente tabla.

NombreQué es...
%userMuestra el porcentaje de uso de la CPU a nivel de usuario normal
%niceMuestra el porcentaje de uso de la CPU a nivel de usuario con prioridades
%systemMuestra el porcentaje de uso de la CPU del kernel del sistema
%iowaitMuestra el porcentaje de tiempo que las CPU estaban inactivas y el sistema recibió peticiones I/O
%stealMuestre el porcentaje de tiempo que las CPU permanecían en espera mientras el hipervisor mandaba el servicio a otro procesador
%idleMuestra el porcentaje de tiempo que las CPU estaban inactivas y el sistema no recibía ninguna petición I/O

 

Por ultimo tenemos el apartado Device (dispositivo), que también pasamos a ver en una tabla.

NombreQué es...
Device

Nombre del dispositivo como esta en /dev
tpsNúmero de transferencias por segundo que se emitieron al dispositivo
Blk_read/s (kB_read/s, MB_read/s)Cantidad de datos leídos del dispositivo indicados ​​en diferentes bloques ( kilobytes , megabytes ) por segundo
Blk_wrtn/s (kB_wrtn/s, MB_wrtn/s)Cantidad de datos escritos en el dispositivo indicados en varios bloques (kilobytes, megabytes) por segundo
Blk_read (kB_read, MB_read)Número total de bloques (kilobytes, megabytes) leídos
Blk_wrtn (kB_wrtn, MB_wrtn)Número total de bloques (kilobytes, megabytes) escritos
rrqm/sNúmero de solicitudes de lectura por segundo en la cola del dispositivo
wrqm/sNúmero de solicitudes de escritura por segundo en la cola del dispositivo
r/sNúmero de solicitudes de lectura por segundo completadas
w/sNúmero de solicitudes de escritura por segundo completadas
rsec/s (rkB/s, rMB/s)Número de sectores (kilobytes, megabytes) leídos por segundo
wsec/s (wkB/s, wMB/s)Número de sectores (kilobytes, megabytes) escritos por segundo.
avgrq-szPromedio del tamaño (en sectores) de las solicitudes que se emitieron al dispositivo
avgqu-szPromedio del tamaño (en sectores) de la cola de solicitudes que se emitieron al dispositivo
awaitPromedio del tiempo (en milisegundos) de las solicitudes I/O emitidas al dispositivo
r_awaitPromedio del tiempo (en milisegundos) de las solicitudes de lectura emitidas al dispositivo
w_awaitPromedio del tiempo (en milisegundos) de las solicitudes de escritura emitidas al dispositivo
svctmPromedio del tiempo (en milisegundos) de las solicitudes I/O emitidas al dispositivo (versiones obsoletas de iostat, en deshuso)
%utilPromedio del tiempo de uso CPU en el cual se emitieron solicitudes I/O al dispositivo (ancho de banda del dispositivo)

 

Opciones de iostat

Ahora vemos las opciones de iostat, así como las variables de entorno a tener en cuanta.

OpciónUso
-cUso de la CPU
-dUso del dispositivo
-g group_name { device [...] | ALL }Estadísticas de un grupo de dispositivos
-hImprimir los informes más fáciles de interpretar por un humano
-kEstadísticas en kilobytes por segundo
-mEstadísticas en megabytes por segundo
-NMuestra los nombres del mapeador de los dispositivos registrados
-p [ { device [,...] | ALL } ]Muestra las estadísticas de dispositivos por bloque incluyendo las particiones usadas por el sistema
-TSolo se muestran las estadísticas por grupo de dispositivos
-tImprimir la hora en cada informe, no solo la fecha
-VVersión de sysstad
-xEstadísticas ampliadas
-zOmitir la salida del dispositivo que no tiene actividad actualmente
------------------------------
Variables de entorno
VariablesCasos de uso
S_TIME_FORMATSi esta variable existe y su valor es ISO, se omitirá la actual configuración regional y se utilizará el formato ISO 8601 ( AAAA - MM - DD )
POSIXLY_CORRECTCon esta variable las velocidades de transferencia se imprimirán en bloques de 512 K en vez de 1K

 

Ejemplos de iostat

El uso más común de iostat es con la opción x.

ejemplo…

Si solo quieres obtener la info de la cpu.

ejemplo…

Si por el contrario solo quieres ver las estadísticas del dispositivo.

ejemplo…

Mostrar estadísticas ampliadas del dispositivo.

ejemplo…

Ahora solicitamos el informe de estadísticas tres veces, en un intervalo de dos segundos y en Kilobytes.

ejemplo de salida…

Vemos el informe de la CPU dos veces, en un intervalo de dos segundos.

ejemplo de salida…

Como ultimo ejemplo mostramos las estadísticas por bloque.

ejemplo de salida…

 

Conclusión final

Hoy hemos visto una herramienta indispensable para un control total de los dispositivos, ademas tiene la particularidad que no es necesario ser root para poder visualizar las estadísticas. Puedes ver su manual en linea de comandos ejecutando lo siguiente…

 

Canales de Telegram: Canal SoloLinux – Canal SoloWordpress

Espero que este articulo te sea de utilidad, puedes ayudarnos a mantener el servidor con una donación (paypal), o también colaborar con el simple gesto de compartir nuestros artículos en tu sitio web, blog, foro o redes sociales.

 

Agregar comentario