Tengo un sistema en ejecución con baja utilización de IO:
- HP DL380G7 (24 gb de RAM)
- Smart Array p410i con 512 MB de caché de escritura respaldada por batería
- 6 unidades SAS 10k rpm 146gb en RAID10
- Debian Squeze linux, ext4 + LVM, hpacucli instalado
iostat (cciss / c0d1 = matriz raid10, dm-7 = partición lvm 60G para prueba):
Dispositivo: rrqm / s wrqm / sr / sw / s rMB / s wMB / s avgrq-sz avgqu-sz await svctm% util cciss / c0d0 0,00 101,20 0,00 6,20 0,00 0,42 138,58 0,00 0,00 0,00 0,00 cciss / c0d1 0,00 395,20 3,20 130,20 0,18 2,05 34,29 0,04 0,26 0,16 2,08 dm-0 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 dm-2 0,00 0,00 3,20 391,00 0,18 1,53 8,87 0,04 0,11 0,05 1,84 dm-3 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 dm-4 0,00 0,00 0,00 106,80 0,00 0,42 8,00 0,00 0,00 0,00 0,00 dm-5 0,00 0,00 0,00 0,60 0,00 0,00 8,00 0,00 0,00 0,00 0,00 dm-6 0,00 0,00 0,00 2,80 0,00 0,01 8,00 0,00 0,00 0,00 0,00 dm-1 0,00 0,00 0,00 132,00 0,00 0,52 8,00 0,00 0,02 0,01 0,16 dm-7 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 dm-8 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00
hpacucli "Ctrl all show config"
Smart Array P410i en la ranura 0 (integrada) (sn: 5001438011FF14E0) matriz A (SAS, espacio no utilizado: 0 MB) Logicaldrive 1 (136.7 GB, RAID 1, OK) physicaldrive 1I: 1: 1 (puerto 1I: casilla 1: bahía 1, SAS, 146 GB, OK) physicaldrive 1I: 1: 2 (puerto 1I: casilla 1: bahía 2, SAS, 146 GB, OK) matriz B (SAS, espacio no utilizado: 0 MB) Logicaldrive 2 (410.1 GB, RAID 1 + 0, OK) physicaldrive 1I: 1: 3 (puerto 1I: casilla 1: bahía 3, SAS, 146 GB, OK) physicaldrive 1I: 1: 4 (puerto 1I: casilla 1: bahía 4, SAS, 146 GB, OK) physicaldrive 2I: 1: 5 (puerto 2I: casilla 1: bahía 5, SAS, 146 GB, OK) physicaldrive 2I: 1: 6 (puerto 2I: casilla 1: bahía 6, SAS, 146 GB, OK) physicaldrive 2I: 1: 7 (puerto 2I: casilla 1: bahía 7, SAS, 146 GB, OK) physicaldrive 2I: 1: 8 (puerto 2I: casilla 1: bahía 8, SAS, 146 GB, OK) SEP (ID del proveedor PMCSIERA, modelo SRC 8x6G) 250 (WWID: 5001438011FF14EF)
hpacucli "Ctrl Mostrar todo el estado"
Smart Array P410i en la ranura 0 (integrado) Estado del controlador: OK Estado de caché: OK Estado de la batería / condensador: OK
Comando Sysbench
sysbench --init-rng = on --test = fileio --num-threads = 16 --file-num = 128 --file-block-size = 4K --file-total-size = 54G --file-test -mode = rndrd --file-fsync-freq = 0 --file-fsync-end = fuera de ejecución --max-request = 30000
Resultados de Sysbench
sysbench 0.4.12: punto de referencia de evaluación del sistema de subprocesos múltiples Ejecutando la prueba con las siguientes opciones: Número de hilos: 16 Inicializando el generador de números aleatorios desde el temporizador. Banderas adicionales para abrir archivos: 0 128 archivos, 432Mb cada uno Tamaño total de archivo de 54 Gb Tamaño de bloque 4Kb Número de solicitudes aleatorias para E / S aleatorias: 30000 Relación lectura / escritura para prueba de E / S aleatoria combinada: 1.50 Usar el modo de E / S sincrónico Haciendo prueba de lectura aleatoria ¡Hilos comenzados! Hecho. Operaciones realizadas: 30000 Lectura, 0 Escritura, 0 Otros = 30000 Total Lectura 117.19Mb Escrito 0b Total transferido 117.19Mb (935.71Kb / seg) 233.93 Solicitudes / seg ejecutadas Resumen de ejecución de prueba: tiempo total: 128.2455s cantidad total de eventos: 30000 tiempo total empleado en la ejecución del evento: 2051.5525 estadísticas por solicitud: min: 0.00ms promedio: 68.39ms max: 2010.15ms aprox. Percentil 95: 660.40ms Hilos de equidad: eventos (avg / stddev): 1875.0000 / 111.75 tiempo de ejecución (avg / stddev): 128.2220 / 0.02
iostat durante la prueba
avg-cpu:% user% nice% system% iowait% steal% inactivo 0,00 0,01 0,10 31,03 0,00 68,86 Dispositivo: rrqm / s wrqm / sr / sw / s rMB / s wMB / s avgrq-sz avgqu-sz await svctm% util cciss / c0d0 0,00 0,10 0,00 0,60 0,00 0,00 9,33 0,00 0,00 0,00 0,00 cciss / c0d1 0,00 46,30 208,50 1,30 0,82 0,10 8,99 29,03 119,75 4,77 100,00 dm-0 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 dm-2 0,00 0,00 0,00 51,60 0,00 0,20 8,00 49,72 877,26 19,38 100,00 dm-3 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 dm-4 0,00 0,00 0,00 0,70 0,00 0,00 8,00 0,00 0,00 0,00 0,00 dm-5 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 dm-6 0,00 0,00 0,00 0,00 0,00 0,00 0,00 7,00 0,00 0,00 100,00 dm-1 0,00 0,00 0,00 0,00 0,00 0,00 0,00 7,00 0,00 0,00 100,00 dm-7 0,00 0,00 208,50 0,00 0,82 0,00 8,04 25,00 75,29 4,80 100,00 dm-8 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00
Bonnie ++ v1.96
cmd: / usr / sbin / bonnie ++ -c 16 -n 0 Escribir un byte a la vez ... hecho Escritura inteligente ... hecho Reescribiendo ... hecho Leyendo un byte a la vez ... hecho Lectura inteligente ... hecho comenzarlos ... hecho ... hecho ... hecho ... hecho ... hecho ... hecho ... Versión 1.96 ------ Salida secuencial ------ - Entrada secuencial- --Random- Concurrencia 16 -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks-- Tamaño de la máquina K / seg% CP K / seg% CP K / seg% CP K / seg% CP K / seg% CP / seg% CP seo-db 48304M 819 99 188274 17 98395 8 2652 78 201280 8 265.2 1 Latencia 14899us 726ms 15194ms 100ms 122ms 665ms 1.96,1.96, seo-db, 16,1337541936,48304M ,, 819,99,188274,17,98395,8,2652,78,201280,8,265.2,1 ,,,,,,,,,,,,,, ,,,, 14899us, 726ms, 15194ms, 100ms, 122ms, 665ms ,,,,,,
Preguntas
Entonces, sysbench mostró 234 lecturas aleatorias por segundo.
Espero que sea al menos 400.
¿Cuál puede ser el cuello de botella? LVM?
Otro sistema con unidades mdadm raid1 + 2x 7200rpm muestra más de 200 lecturas aleatorias por segundo ...
¡Gracias por cualquier ayuda!
sysbench
línea de comando en particular ? ¿Estás simulando un escenario de uso del mundo real?