Monitorizar el disk iops en Linux.
Uno de los factores que más afectan el rendimiento de un sitio web (o aplicación) en un servidor, es el aumento de la espera de I/O.
El acrónimo I/O son las siglas en inglés de Input/Output, por tanto en español se traduce como Entrada/Salida (E/S) y aunque se puede aplicar a protocolos, red, etc…, normalmente estas siglas son la forma de identificar la lectura y escritura que se producen en un disco.
Dicho lo anterior deducimos que cuando existe una alta tasa de lectura y escritura (I/O) en un disco, repercute de forma negativa en nuestro sistema provocando un aumento inesperado en la carga, y como consecuencia se reduce el rendimiento del sistema.
Este problema sucede porque los procesos de lectura o escritura entran en estado de suspensión (D), para que me entiendas… están esperando que se completen las I/O (E/S) del disco. Este problema se conoce vulgarmente como «cuello de botella«.
Como puedes imaginar es un problema grave que no solo afecta a servidores y vps, también a pc’s empresariales y domésticos.
En este articulo veremos como monitorizar y detectar un cuello de botella de I/O en el subsistema de almacenamiento.
Monitorizar el disk iops en Linux
Muchas aplicaciones gráficas de monitoreo de servidores incluyen la medición de «disk iops«, pero nosotros nos centramos en revisar el I/O del disco exclusivamente, y para ello mucho mejor desde la consola / terminal.
No existen muchas herramientas exclusivas para la operación que queremos realizar, pero de las pocas que hay… una destaca por encima del resto, es «iotop» (también veremos como identificar el consumo en top).
IOTOP
Normalmente no viene instalado de forma predeterminada, pero si en los repositorios oficiales. Instalamos la herramienta.
Debian, Ubuntu, Linux Mint y derivados:
apt-get install iotop
CentOS, RHEL y derivados:
yum install iotop
Fedora y derivados:
dnf install iotop
OpenSuse, Suse, GeckoLinux y derivados:
zypper install iotop
Arch Linux, Manjaro y derivados:
sudo pacman -S iotop
Una vez instalado, ejecutamos la aplicación con la opción R/W de disco.
iotop -o
La respuesta es interactiva y se identifica de manera sencilla. En las siguientes imagenes vemos dos ejemplos de salida, uno con una alta carga de I/O y otro con baja carga.
Ejemplo de alto consumo:
Monitorizar disk iops con iotop – Consumo alto
Ejemplo de consumo bajo:
Monitorizar disk iops con iotop2 – Consumo bajo
Como ves es bastante simple identificar los consumos, en un próximo articulo trataremos esta fantástica aplicación con más profundidad, ahora vemos como identificar en top.
TOP
Ejecutamos el monitor:
top
Observamos donde indica «wa«, normalmente ese valor debe ser 0,0, si no es así tienes un consumo excesivo.
Ejemplo de consumo excesivo:
Monitorizar disk iops con top
En Sololinux.es seguimos creciendo gracias a nuestros lectores, puedes colaborar con el simple gesto de compartir nuestros artículos en tu sitio web, blog, foro o redes sociales.