Was sind „gute“ Geschwindigkeiten für iSCSI und NFS über 1 GB Ethernet?


9

Ich habe eine OpenSolaris-Box, die zwei ZFS-Dateisysteme gemeinsam nutzt. Eine ist eine NFS-Verbindung zu einer CentOS-Box, auf der VMware Server ausgeführt wird (die Disk-Images werden in ZFS gespeichert). Die andere ist eine iSCSI-Verbindung zu einem Windows 2008-Server mit NTFS-Formatierung über dem ZFS. Beide Verbindungen sind direkt über Gig-E (keine Schalter).

Ich lasse Munin laufen, um die Boxen zu überwachen, aber ich bin mir nicht sicher, welche Art von Zahlen ich erwarten sollte. Kann mir jemand einige Basiszahlen zum Vergleich geben oder Vorschläge machen, wo ich mit der Abstimmung beginnen soll?

Hier sind die NFS-Statistiken, die ich sehe. Ich werde iSCSI veröffentlichen, sobald ich Munin auf der Solaris-Box repariert habe: P.

Schnittstelle

NFS-Client


Welche Einheiten suchen Sie? KBPS? IO / Sek.?
WerkkreW

Ich weiß nicht einmal, wo ich anfangen soll zu suchen. Ich habe den Beitrag mit den Statistiken von Munin aktualisiert. Lassen Sie mich wissen, ob es bessere Orte gibt, an denen Sie suchen können.
Sysadminicus

Antworten:


12

Wir haben einen Sun X4100, der über gebundenes GigE und iSCSI schreibt, auf einen Sun X4500 mit 280 MB / s übertragen.

Es kann viel getan werden, um den TCP-Stack unter Solaris zu optimieren, um Abhilfe zu schaffen. (Aus einer Sammlung von Sun Whitepapers):

$ 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

Es lohnt sich auch, einen Blick auf Ihren OpenSolaris-Computer zu werfen, indem Sie das fsflush-Intervall, die Interrupt-Einstellung "magic" und das Deaktivieren von Soft Rings ändern. Hängen Sie Folgendes an / etc / system an (Neustart erforderlich):

* "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

Erwähnenswert ist, dass ich dies unter Solaris 10 mache - nicht unter OpenSolaris -, aber ich denke, die Tunables sollten trotzdem für Sie funktionieren.

Ich bin ein großer Fan von Filebench, weil ich mit Optimierungsoptionen herumgespielt und Durchsatztests durchgeführt habe.

Die (kürzlich umbenannte) Version von OpenSolaris 2009.06 scheint in der Welt von iSCSI und ZFS sehr aufregend zu sein.

Hoffe das hilft einigen!


3

Ich erhalte ungefähr 90 MB / s für meine EMC AX150i-Arrays über iSCSI auf 1 GB Ethernet.


1

Für nur ein einzelnes dd oder bonnie ++ (Rohgeschwindigkeit, lineares Schreiben) sollten Sie der Drahtgeschwindigkeit ziemlich nahe kommen.

Ihr Engpass wird jedoch das Festplattenarray sein, sobald Sie die zufällige E / A-Last mehrerer VMs in Gang setzen, viel mehr als der Transport.

Wenn Sie keinen batteriegepufferten Schreibcache mit viel RAM haben, wird Ihre Leistung beeinträchtigt, sobald Sie mit anderen E / A-Vorgängen viele Schreibvorgänge ausführen.


0

Ich konnte Daten über iSCSI über 1 GB-Verbindungen auf etwa 200 Mbit / s übertragen. Aber ich hatte ein RAID 6 mit 14 Festplatten, das von einem EMC CX4-240 gehostet wurde, wobei zu diesem Zeitpunkt nicht viel anderes den Cache benutzte.

Der größte Engpass wird wahrscheinlich die Größe des Controller-Cache und die Geschwindigkeit der Festplatten sein (wenn der Cache voll ist).


1
Wir haben in der Planungsphase versagt, indem wir alle 12 Festplatten auf denselben Controller gelegt haben. Ich stelle mir vor, dass es für uns ein einfacher Geschwindigkeitsgewinn wäre, diese auf einen anderen Controller aufzuteilen.
Sysadminicus

Es könnte alles davon abhängen, wo der Engpass liegt. Unser RAID 6 ist ein einzelner Controller, da sich alles in einem einzigen Regal befindet. Aber es ist ein ziemlich hochwertiges Stück Hardware. Wo ist der Engpass? Möglicherweise müssen Sie einfach mehr Cache in den Controller einfügen und / oder einen höheren Prozentsatz des Cache als Schreibcache zuweisen.
Mrdenny

Ich habe ein ähnliches Setup (allerdings mit AX4-5). Ich verwende kein iSCSI, aber ich habe extrem schnelle Übertragungen mit unverschlüsselten Protokollen zwischen zwei Computern im SAN erhalten. Ich wünschte, ich wüsste von einem guten SAN-Optimierungsdokument.
Matt Simmons

0

Ich erhalte über ISCSI auf 1G-Ethernet ungefähr 80 MB / S auf meinem Windows-Server. Ziel: KernSafe iStorage Server http://www.kernsafe.com/Product.aspx?id=5 Initiator: Microsoft Initiator www.microsoft.com/downloads/details.aspx?familyid=12cb3c1a-15d6-4585-b385-befd1319f825&displaylang= en

Festplatte: ATA 7200


0

Für diejenigen von uns, die näher am Semi-Pro-Ende der Dinge sind (anstatt Pro), erhalte ich konstante und konsistente 150 MB Lese- und 120 MB Schreibzugriff vom W2012-Server Dual 1 GB Nic, kombiniert über einen von Draytek verwalteten Switch zu Blackarmorsnas über RJ45-Kupfer, einmalige Übertragung von 20 GB-Dateien. Keine anderen gleichzeitigen Operationen während des Tests. Um dies zu erreichen, verwende ich Jumbo-Frames 9k, RX & TX-Flow, dh alle normalen Treiberoptimierungen, aber keine anderen Optimierungen als das Einschalten und Erhöhen des Jumbo-Frames auf max.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.