¿Existe una buena utilidad de línea de comandos para monitorear la carga del disco duro en Linux? Algo parecido, top
pero luego monitorear el uso de la CPU iso de la actividad del disco.
Más específicamente, sospecho que para algunos servidores (carga pesada) después de varias optimizaciones en varias partes de los programas que se ejecutan en él, en este momento el cuello de botella es simplemente el registro de archivos en el disco. Pero me resulta muy difícil evaluar cuánto tráfico pueden manejar los servidores.
Mi herramienta ideal sería algo que imprima "Estás utilizando el 35% del ancho de banda de tu disco en este momento". ¿Algunas ideas?
linux
hard-drive
load-testing
Pieter
fuente
fuente
/sys/block/sda/stat
. El campo # 1 proporciona el número total de lecturas, el campo # 5 es el número total de escrituras, el campo # 9 es el número de operaciones de E / S en progreso. Ver más en kernel.org/doc/Documentation/iostats.txt Los valores son largos sin signo y pueden ajustarse.how do you do it with SNMP?
. Está bien iniciar sesión y verificar cosas, pero uno realmente necesita datos históricos.Respuestas:
Puede obtener una buena medida de esto utilizando la
iostat
herramienta.La utilización del disco aparece en la última columna. Esto se define como
fuente
apt-cache dump
no apareció nada para iostatiotop es una versión de top que analiza cuánto IO está usando cada proceso. Está en los repositorios estándar de ubuntu; No sé si está en RHEL o Fedora, pero debería estarlo.
Para los núcleos más antiguos (por ejemplo, CentOS 5.xo RHEL 5.x) que no admiten iotop, use topio en su lugar (documentado aquí: http://yong321.freeshell.org/freeware/pio.html#linux . Se basa en / proc // io para estadísticas io y proporciona una funcionalidad similar a iotop. Consulte el enlace para obtener más detalles.
fuente
Como sugiere sastanin en los comentarios, puede procesar directamente los valores dados en
/sys/block/sda/stat
o/proc/diskstats
. Esto puede ser útil cuando ninguna de las otras herramientas mencionadas están disponibles y no puede instalarlas fácilmente.Por ejemplo (IIUC) algo como esto (en bash) debería dar el número de lecturas por segundo:
Consulte https://www.kernel.org/doc/Documentation/iostats.txt y https://www.kernel.org/doc/Documentation/block/stat.txt para obtener documentación.
fuente
Debería echar un vistazo a atop , que combina el poder de iotop / top / iftop, todo en un solo lugar, y resalta las partes críticas de su sistema.
fuente
Recomendaría echar un vistazo a la herramienta nmon. Le mostrará la carga en vivo en una serie de parámetros del sistema, así como la grabación de datos en un archivo para su posterior examen. Es una herramienta gratuita disponible aquí :
fuente
para averiguar cuál es su ancho de banda total, puede usar
hdparm -T /dev/sda
para probar el rendimiento de la memoria caché del búfer (archivo)hdparm -t /dev/sda
para probar el rendimiento de lectura del dispositivoejemplos: mi computadora portátil obtiene 82 MB / seg. del disco SATA y 2 GB / seg. del caché. Mi dekstop obtiene 12 GB / seg. Del caché y 500 MB / seg. De la matriz RAID HW. Sospecho que esos últimos números podrían ser el doble en el hardware de clase de servidor.
establecer readahead superior a 256, 4096 funciona mejor para mí
veces leyendo 1 GB en diferentes tamaños de bloque y diferentes cabezas de lectura
fuente
--setra
es ahora-a
, y 2), loshdparm -{T,t}
comandos solo emiten lecturas de discostrace
, por lo que no son destructivas. (Se aplica el descargo de responsabilidad estándar sobre consejos en Internet)La herramienta estándar para mostrar la carga del disco duro es
iostat
.No le dirá cuánto% de ancho de banda de disco está usando, ya que no sabe cuánto ancho de banda tiene su disco. En cualquier caso, su disco solo tiene la cifra citada por el fabricante para grandes transferencias de datos contiguos.
fuente
Creo que RRDtool debería hacer lo que quieras aquí: usa un demonio para volcar los datos del sistema y luego te permite procesarlo como quieras. A menudo lo he usado para producir gráficos, etc. para medir la carga del sistema.
fuente