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!
sysbenchlínea de comando en particular ? ¿Estás simulando un escenario de uso del mundo real?