Optimización de ZFS para grandes lecturas y escrituras secuenciales

1

Actualmente estoy solucionando problemas en un ZFS que ejecuta Debian 7 con el módulo ZFS v0.6.5.2-2-wheezy, ZFS pool versión 5000, sistema de archivos ZFS versión 5.

Se accede al sistema a través de NFS y la carga de trabajo consta de muchas lecturas y escrituras secuenciales grandes a través de NFS. El tamaño del archivo está entre 50G y 100G y las lecturas y escrituras se producen en paralelo.

El sistema tiene 16 núcleos y 64 GB de memoria y utiliza discos de una SAN central de la empresa que es capaz de leer / escribir más de 1GByte / s en paralelo respaldado por muchos SSD.

Cuando solo escribo datos, puedo mantener 300 MByte / s sin problemas, pero tan pronto como empiezo a leer en paralelo, el rendimiento se reduce a alrededor de 150-200 MByte / s para lectura y escritura, pero regularmente se reduce a unos pocos MBytes / s durante varios segundos y, por lo tanto, el rendimiento promedio es de solo 100 MByte / s para cada lectura y escritura.

¿Cómo puedo optimizar ZFS para un gran rendimiento secuencial de lectura / escritura en paralelo y, si es posible, reducir el tiempo en que no se pueden escribir datos?

Florian Feldhaus
fuente
¿Qué más se está ejecutando en este servidor? ¿Ya has ajustado las configuraciones o está todo en stock? ¿Tienes habilitada la compresión y / o deduplicación? ¿Qué hace la CPU cuando las escrituras se ralentizan?
Daniel B
Hay otros procesos que se ejecutan en el servidor que cargan los datos en algún momento, pero esos procesos no se ejecutan cuando disminuye el rendimiento. No modifiqué la configuración de la configuración de zfs_arc_max a 17179869184 debido a problemas de memoria. Pero la caída del rendimiento también estaba ocurriendo antes de ese cambio.
Florian Feldhaus
Puede que tengas mejor suerte preguntando esto Falla del servidor , nuestro sitio hermano para administradores de servidores profesionales.
a CVn