¿Cuáles son las velocidades "buenas" para iSCSI y NFS sobre Ethernet de 1GB?

9

Tengo un cuadro de OpenSolaris que comparte dos sistemas de archivos ZFS. Uno es una conexión NFS a una caja CentOS que ejecuta el servidor VMware (las imágenes de disco se almacenan en ZFS). El otro es una conexión iSCSI a un servidor Windows 2008 con formato NTFS en la parte superior de ZFS. Ambas conexiones son directas sobre gig-E (sin interruptores).

Estoy ejecutando munin para controlar las cajas, pero no estoy seguro de qué tipo de números debería esperar. ¿Alguien puede darme algunos números de referencia para comparar o hacer alguna sugerencia sobre dónde comenzar a ajustar?

Aquí están las estadísticas de NFS que estoy viendo, publicaré iSCSI una vez que arregle munin en la caja de Solaris: P

interfaz

cliente nfs

Sysadminicus
fuente
¿Qué unidades estás buscando? KBPS? IO / seg?
WerkkreW
Ni siquiera sé por dónde empezar a buscar. He actualizado la publicación con las estadísticas que tengo de munin. Avíseme si hay mejores lugares para buscar.
Sysadminicus

Respuestas:

12

Hemos empujado una escritura Sun X4100 sobre GigE e iSCSI enlazados a un Sun X4500 a 280MB / s.

Se puede hacer mucho para ajustar la pila TCP en Solaris para ayudar, esta es mi configuración de ajuste de stock. (tome de una colección de documentos de Sun):

$ cat /etc/rc3.d/S99ndd
#!/bin/bash

NDD=/usr/sbin/ndd

$NDD -set /dev/tcp tcp_xmit_hiwat 1048576
$NDD -set /dev/tcp tcp_recv_hiwat 8388608
$NDD -set /dev/tcp tcp_max_buf 8388608
$NDD -set /dev/udp udp_xmit_hiwat 1048576
$NDD -set /dev/udp udp_recv_hiwat 8388608
$NDD -set /dev/udp udp_max_buf 8388608
$NDD -set /dev/tcp tcp_conn_req_max_q 65536
$NDD -set /dev/tcp tcp_conn_req_max_q0 65536
$NDD -set /dev/tcp tcp_fin_wait_2_flush_interval 67500

Además, vale la pena analizar en su máquina OpenSolaris cambiar el intervalo fsflush, el ajuste de interrupción "mágico" y desactivar los anillos suaves. Agregue lo siguiente a / etc / system (se requiere reiniciar):

* "fsflush" tuning
set tune_t_fsflushr = 5
set autoup = 300
* Disable the Automatic Interrupt Adjustment
set dld:dld_opt = 2
* Disable "soft rings"
set ip:ip_squeue_fanout = 0
set ip:ip_soft_rings_cnt = 0

Vale la pena mencionar que hago esto en Solaris 10, no en OpenSolaris, pero creo que los ajustables deberían funcionar para usted de la misma manera.

Soy un gran admirador de Filebench por jugar con las opciones de ajuste y hacer pruebas de rendimiento.

La versión de OpenSolaris 2009.06 (recientemente renombrada) parece ser muy emocionante en el mundo de iSCSI y ZFS.

Espero que esto ayude un poco!

jharley
fuente
3

Obtengo alrededor de 90 MB / seg en mis matrices EMC AX150i a través de iSCSI en Ethernet de 1 GB.

Brent Ozar
fuente
1

Por un solo dd o bonnie ++ (velocidad bruta, escritura lineal), debe acercarse bastante a la velocidad del cable.

Pero su cuello de botella será la matriz de discos, una vez que comience a recibir la carga aleatoria de E / S de varias máquinas virtuales, mucho más que el transporte.

Además, si no tiene una memoria caché de escritura respaldada por batería con una cantidad significativa de RAM, su rendimiento se verá afectado tan pronto como comience a recibir muchas escrituras con cualquier otro IO.

jwiz
fuente
0

He podido enviar datos a través de iSCSI a unos 200 Mbit / seg en enlaces de 1 GB. Pero tenía un RAID 6 de 14 discos alojado por un EMC CX4-240 sin mucho uso del caché en ese momento.

El mayor cuello de botella probablemente será la cantidad de caché del controlador y la velocidad de los discos (para cuando el caché se llene).

mrdenny
fuente
1
Fallamos en la etapa de planificación al colocar los 12 discos en el mismo controlador. Me imagino que dividirlos entre otro controlador sería una ganancia de velocidad fácil para nosotros.
Sysadminicus
Podría, todo depende de dónde esté el cuello de botella. Nuestro RAID 6 es un controlador único, ya que todo está dentro de un solo estante. Pero está en una pieza de hardware bastante alta. ¿Dónde está el cuello de botella? Es posible que simplemente necesite colocar más caché en el controlador y / o asignar un mayor porcentaje de caché como caché de escritura.
mrdenny
Tengo una configuración similar (aunque con AX4-5). No uso iSCSI, pero obtuve transferencias extremadamente rápidas utilizando protocolos sin cifrar entre dos máquinas en la SAN. Ojalá supiera de un buen documento (s) de optimización de SAN.
Matt Simmons
0

Tengo alrededor de 80 MB / S en mi servidor de Windows a través de ISCSI en Ethernet 1G. Destino: KernSafe iStorage Server http://www.kernsafe.com/Product.aspx?id=5 Iniciador: Microsoft Initiator www.microsoft.com/downloads/details.aspx?familyid=12cb3c1a-15d6-4585-b385-befd1319f825&displaylang= en

Disco duro: ATA 7200


fuente
0

Para aquellos de nosotros que estamos más cerca del extremo semiprofesional de las cosas (en lugar de los profesionales), obtengo una lectura constante y constante de 150 MB, 120 MB de escritura desde el servidor W2012, un doble de 1 gb nic unido a través del conmutador administrado draytek a blackarmorsnas a través de cobre RJ45, transferencia única de archivo de 20 GB. No hay otras operaciones simultáneas durante la prueba. Para lograr esto, estoy usando jumbo frames 9k, rx & tx flow, es decir, todas las optimizaciones de controladores normales, pero no hay más ajustes que encender las cosas y subir el marco jumbo al máximo.

usuario174818
fuente