Welches Homeserver-Betriebs-/File-System?

Bleifrei

Enthusiast
Thread Starter
Mitglied seit
16.08.2007
Beiträge
635
Hallo,

Bisher habe ich als Betriebssystem Windows Server eingesetzt und war auch ganz zufrieden. Das Dateisystem war zu 100% mit den Windows Clients kompatibel bzw. sogar identisch. Dateien konnten serverseitig indiziert werden(für Win 7 Bibliotheken notwendig). Die sequenziellen Transferraten bei einen Software RAID 0 waren super. Was mich allerdings gestört hat, waren die fehlende Leistungssteigerung bei einem RAID 1 sowie die IO /Random-Read und Write Performance bei allen RAIDs unter Windows.

Nun hab ich vermehrt über ZFS gelesen und das hört sich ja in der Theorie traumhaft an: 4 Platten als RAID 10 bzw. Striped Mirrors konfiguriert sollen 4fache Read- und doppelte Write-Performance liefern. und das alles bei größerer Datensicherheit.

Die Praxiswerte, die ich mit FreeNAS und NAS4Free über die SMB Freigabe ermittelt habe, waren allerdings ein schlechter Witz. 60MB/s sequenzell, Random auf dem Niveau einer einzelnen Platte oder darunter.
RAM war ausreichend vorhanden und theoretisch könnte noch eine SSD für als Log- oder Cache Device eingerichtet werden. An der Hardware sollte es aktuell nicht liegen.

Nun hab ich gehört, die ZFS und SMB Performance soll unter FreeNAS nicht so doll sein. Welches Betriebssystem ist denn performant bei ZFS über SMB?

Oder reichen ein paar Einstellungen für einen Performanceschub aus?


Für Windows gibt es keine Möglichkeit die IO-Performance zu verbessern, oder?


Danke für eure Hilfe

Gruß
Bleifrei
 
Wenn Du diese Anzeige nicht sehen willst, registriere Dich und/oder logge Dich ein.
Wenn's ZFS sein muss, kannst du ja auch ein iSCSI Target anbieten und darauf mit einem Windows-Server schreiben...

Wo genau geht dir bei deinem bestehenden Server die Leistung ab?
 
Wenn's ZFS sein muss, kannst du ja auch ein iSCSI Target anbieten und darauf mit einem Windows-Server schreiben...
das würde zwar den smb flaschenhals umgehen (falls er existiert), wäre aber imo relativ umständlich.
gibt es denn alternativen zu zfs? mit ähnlichen features

hat schon mal jemand aus ein zfs raid 10 mit annähernd 4facher random read performance einer einzelplatte erzeugt?

Wo genau geht dir bei deinem bestehenden Server die Leistung ab?
ich versteh die frage nicht ganz
 
FreeNASmuss man manuell "optimieren" damit es beste Performance bringt.
Schneller und Windows-kompatibler sind die Solaris-basierten Systeme mit dem Solaris CIFS Server anstatt SAMBA (OmniOS, OpenIndiana und Solaris)

Typische "Bremsen" sind aber oft nicht optimale Hardware (Solaris ist wie ESXi, geht nicht gut mit jeder Hardware), insbesondere Netzwerkadapter (Intel top, Realtek bad) und Controller (Intel IHC 10 und LSI HBA sind top, der Rest eher meist nicht).

weitere Probleme auf Windows-Seite
-auch hier Realtek Nics und Copy tools wie Teracopy

Ein Zil Laufwerk bringt bringt bei einem Fileserver übrigens garnichts und ein Cache auch erst bei vielen Usern, eher viel RAM einbauen.
 
Boah, dieses Thema schon wieder. :fresse:
SMB funktioniert auch unter FreeBSD problemfrei und performant. Bitte nicht immer die Einzelschicksale von Leuten die unfähig sind Samba zu konfigurieren oder andere Probleme zu beheben als allgemein gültigen Fakt zu sehen.
Ab Post #119 lesen, da hatten wir das Thema schon: http://www.hardwareluxx.de/communit...vs-freenas-mit-zfs-918728-3.html#post19841387

Was die Performance eines gemirrorten Stripe oder gestripten Mirros angeht nimmt sich ZFS eigentlich nichts mit der eines guten Hardware-RAID-Controller, die Performance kommt von dem Aufbau des Raids und hat weniger mit dem Dateisystem zu tun.

ZFS gibt es unter auf Solaris basierenden Distributionen wie Solaris 11, NexentaStor, OpenIndiana, Ilumian, SmartOS..., dann unter FreeBSD und unter Linux mittels ZFSonLinux.
Alle Lösungen haben ihre Vor- und Nachteile, man kann nicht sagen XYZ ist das beste, dafür sind die Anwendungsfälle zu unterschiedlich. Für mich ist ZFSonLinux ideal weil ich eine vernünftige Performance bei vollständiger Verschlüsselung erreichen will, andere Betriebssysteme kommen bei diesem Anwendungszwecke bei weitem nicht an die Werte von ZFSonLinux und dmcrypt heran.
Andere wollen den einfachen und genialen SMB-Server von Sun verwenden und setzen daher ein auf Solaris basierendes System ein.

Wenn du mehr über ZFS und Co. lernen willst, arbeite folgende bitte Threads durch:
http://www.hardwareluxx.de/community/f101/nas-mit-8-12-festplatten-brauche-hilfe-925448.html (Netzteil, Hardware, ECC)
http://www.hardwareluxx.de/community/f101/homeserver-upgrade-928660.html (Netzteil, Hardware, ECC, Virtualisierung)
http://www.hardwareluxx.de/community/f101/verschluesseltes-nas-929821.html (Verschlüsselung)
http://www.hardwareluxx.de/communit...-storage-pools-vs-freenas-mit-zfs-918728.html
http://www.hardwareluxx.de/communit...-refs-unter-windows-server-2012-a-928375.html
http://www.hardwareluxx.de/communit...controller-will-nicht-hp-dl180-g5-931056.html (Controller)
http://www.hardwareluxx.de/community/f101/norco-rpc-4224-aka-inter-tech-ipc-4u-4324l-889631.html (Gehäuse)
http://www.hardwareluxx.de/community/f101/medium-zfs-nas-build-fuer-soho-letzte-fragen-932645.html (Hardware)
http://www.hardwareluxx.de/community/f101/datengrab-mit-multimedialem-mehrwert-934234.html

Und dann gibt es auch noch Google.
https://www.google.de/search?hl=de&q=was+ist+zfs
https://de.wikipedia.org/wiki/ZFS_(Dateisystem)

Ich denke das du dort einiges lernen kannst, besonders Grundwissen. ;)
 
Zuletzt bearbeitet:
hat schon mal jemand aus ein zfs raid 10 mit annähernd 4facher random read performance einer einzelplatte erzeugt?

aktuelle Benchmarks z.B. bei a friendly guide for building ZFS based SAN/NAS solutions » ZFS Build

Insgesamt darf man von ZFS keine Wunder erwarten. Auf einer einzelnen Platte ist es langsamer als z.B. FAT32 - Checksums, copy on write und die anderen Sicherheitsfeatures sind nicht umsonst zu haben.

ZFS skaliert aber fast linear mit der Anzahl der VDEVS so dass selbst mehrere GByte/s möglich sind.
 
beim Board handelt es sich um das Supermicro X9SAE-V. Das Board oder der Chipsatz ist scheinbar nicht wirklich mit solaris kompatibel. ich wollte OpenIndiana mal testen, aber schon beim installieren wurden mir unendlich viele warnings angezeigt, sodass ich den versuch abgebrochen habe.
Ich glaub ich schau mir ZFSonLinux mal an
 
ich versteh die frage nicht ganz

Wozu brauchst du mehr Leistung und in welchen Bereichen (Random I/O bei welcher Blockgröße?)?

Fehlende Leistungssteigerung gut und schön, aber solange man z.B. um die 100MB/s sequenziell und ein paar MB/s in 4k random hat kann man ja eh zufrieden sein, besonders da sowas auch oft die Quellplatten gar nicht hergeben...
Andererseits kann es ja sein, dass du eine Renderfarm oder einen HPC-Cluster daheim betreibst - wofür benötigst du also konkret mehr Leistung und wie äußert sich die fehlende Leistung bisher?
 
ob ich die Leistung wirklich benötige, kann ich noch nicht sagen; momentan ist es eher ein Nice-to-Have

wenn es die möglichkeit gibt "gratis" mehr leistung zu erhalten, warum sollte man sie nicht nutzen?

genutzt werden soll das "RAID 10" für die Eigenen Dateien/ Daten von 4-5 Clients (quasi als Ersatz für eine Datenpartitionen) und vllt 1-2 VMs

Ich erhoffe mir, dass die Leistungssteigerung für einen einzelnen im besten fall besseres Arbeitstempo als eine interne Platte bringt und bei vielen parallenen zugriffen und kleinen dateien immer noch ein erträgliche Performance liefert.
 
Wieso ist ein Raid 10 "gratis"?
Du musst 4 Festplatten verwenden und hast nur den Platz von 2.
Wenn du wirklich gute Random I/O-Werte haben willst kommst du heutzutage sowieso nicht um eine SSD herum. Ob du das für deine Anwendungszweck wirklich brauchst ist eine andere Frage.
Für reine Average Read&Write reichen aktuelle 7200rpm SATA/SAS-Festplatten völlig aus um 1Gbit-Ethernet auszureißen, da benötigt man keinen Stripe.
Vielleicht wäre für dich eine sinnvolle Option ein Mirror aus zwei großen Festplatten zu verwenden und mit SSDs die Caching-Features von ZFS zu nutzen, also ZIL und L2ARC einzusetzen, siehe http://constantin.glez.de/blog/2011/02/frequently-asked-questions-about-flash-memory-ssds-and-zfs .
Man sollte hier auf SSDs setzen die nicht direkt auf TRIM angewiesen sind wie die meisten Enterprise-SSDs, bei Desktop-SSDs eventuell nur 90% der SSD belegen. Ein ZIL sollte man auch im Mirror betreiben, der L2ARC ist nicht wichtig, da reicht auch eine einzelne SSD da es sich nur um einen Lese-Cache handelt.
Jetzt denkst du sicherlich: Okay, da brauche ich also 3 SSDs. Nein, so ist das nicht, du benötigst nur 2 Stück. Einfach zwei Slices anlegen, ist aber auch in dem Artikel beschrieben.

VM-Storage (Betriebssystem, Programme) mache ich persönlich nur noch auf SSDs weil Fragmentierung dort völlig egal ist und man keinen Performanceverlust ohne Preallocation hat. Außerdem verkaufen wir quasi keine DesktopPCs oder Server mehr ohne SSD für Betriebssystem und Programme.Kunden mit kleineren Datensätzen auf ihren Servern bekommen sogar nur noch SSDs.
 
Zuletzt bearbeitet:
Was mich allerdings gestört hat, waren die fehlende Leistungssteigerung bei einem RAID 1 sowie die IO /Random-Read und Write Performance bei allen RAIDs unter Windows.

ich glaube hier liegt ein kleines Verständnisproblem vor...
IO Performance ist iim Grunde ein Wert, den niemand braucht, weil nirgends 100% klar definiert ist, was überhaupt IOPS sind. Das was dich interessiert, ist eher Random Access (Read/Write) Datenrate.

Die IO Performance bringt dir gelinde gesagt eher wenig bis gar nix. Wichtiger wird da die Random Access Datenrate. Sprich die Geschwindigkeit wenn viele viele kleine (wenige KB große) Files gleichzeitig gelesen/geschrieben werden müssen. Im Grunde steigt die IOPS Leistung mit der Anzahl der Datenträger im Raidverbund.
Der kleine aber feine Unterschied ist, das dieser Wert in der Praxis in meinen Augen absolut keine Bedeutung hat. Weil es nicht interessiert, wie viele Inputs/Outputs pro Sekunde gehändelt werden können, viel eher interessiert da ein Messwert anhand von realen Daten.

Da gibts im übrigen recht praxisnahe Rechnungen hier im HDD Unterforum.
Beispiel. Datenrate single HDD im Schnitt 100MB/sec read/write. Zugriffszeit sagen wir 10ms.
Willst du nun 1000 Files mit ner größe von jeweils sagen wir 64KB schreiben/lesen (die randomlike völlig verstreut auf der Disk liegen) ergibt sich folgende Rechnung:
1000 x 64KB = 62,5MB
1000 x 10ms Kopfbewegung = 10sec Zeit, die allein die Kopfbewegung benötigt.
62,5MB / 100MB/sec = 0,625sec Zeit für den reinen Datentransfer.

SUMME= 10sec + 0,625sec = 10,625sec für den Datentransfer in Summe.


Baust du nun sagen wir ein Raid 10 aus 8 HDDs, sprich anstatt 100MB/sec eben 400MB/sec wäre die Rechnung wie folgt:
1000 x 64KB = 62,5MB
1000 x 10ms Kopfbewegung = 10sec Zeit, die allein die Kopfbewegung benötigt.
62,5MB / 400MB/sec = 0,15625sec Zeit für den reinen Datentransfer.

SUMME= 10sec + 0,15625sec = 10,15625sec für den Datentransfer in Summe.

Ergibt also trotz vierfacher Datenrate einen Leistungsgewinn von brachialen ~4,4%...
Ob sich das lohnt, darf jeder für sich selbst entscheiden ;)

Und dabei ist die Rechnung sogar noch recht einfach gehalten. Da bei 64KB Filegröße und fragmentierten Datenträgern es dir spielend passieren kann, das diese 64KB nicht am Stück auf der Disk liegen, sondern schlicht wiederum zerhackt in 512Byte bzw. 4KB (je nach HDD) nochmals random auf der Platte verstreut sind.

PS: Mit ner SSD schaut das im übrigen anders aus, da wäre die Rechnung wie folgt:
1000 x 64KB = 62,5MB
1000 x 0,5ms Zugriffszeit = 0,5sec Zeit, die allein die Kopfbewegung benötigt.
62,5MB / 400MB/sec = 0,15625sec Zeit für den reinen Datentransfer.
SUMME= 0,5sec + 0,15625sec = 0,65625sec für den Datentransfer in Summe.
Man braucht also nichtmal mehr ein zentel der Zeit...


EDIT:
Noch dazu kommt, das dir der Transfer via Netzwerk noch mit rein spuckt. Denn die Zugriffszeiten im LAN kommen dazu nochmals oben drauf ;)
 
Wieso ist ein Raid 10 "gratis"?
Du musst 4 Festplatten verwenden und hast nur den Platz von 2.
Gratis im Vergleich zum Software RAID 0 oder 1 unter Windows, wo nur sequenziell bzw. gar keine performancesteigerung existiert.

@fdsonne:
OK, vielen dank. d.h. ja ich konnte auch genauso gut einen mirror pool unter Windows nutzen, da mit zfs, außer vllt mit viel Cache, kein performance Vorteil erreicht werden kann.
 
Da gibts im übrigen recht praxisnahe Rechnungen hier im HDD Unterforum.
Beispiel. Datenrate single HDD im Schnitt 100MB/sec read/write. Zugriffszeit sagen wir 10ms.
Willst du nun 1000 Files mit ner größe von jeweils sagen wir 64KB schreiben/lesen (die randomlike völlig verstreut auf der Disk liegen) ergibt sich folgende Rechnung:
1000 x 64KB = 62,5MB
1000 x 10ms Kopfbewegung = 10sec Zeit, die allein die Kopfbewegung benötigt.
62,5MB / 100MB/sec = 0,625sec Zeit für den reinen Datentransfer.

SUMME= 10sec + 0,625sec = 10,625sec für den Datentransfer in Summe.


Baust du nun sagen wir ein Raid 10 aus 8 HDDs, sprich anstatt 100MB/sec eben 400MB/sec wäre die Rechnung wie folgt:
1000 x 64KB = 62,5MB
1000 x 10ms Kopfbewegung = 10sec Zeit, die allein die Kopfbewegung benötigt.
62,5MB / 400MB/sec = 0,15625sec Zeit für den reinen Datentransfer.

SUMME= 10sec + 0,15625sec = 10,15625sec für den Datentransfer in Summe.

Ergibt also trotz vierfacher Datenrate einen Leistungsgewinn von brachialen ~4,4%...
Ob sich das lohnt, darf jeder für sich selbst entscheiden ;)

Die Rechnung dürfte insofern falsch sein, da beim Schreiben
- auf ein Raid-10 pro Plattenpaar nur die Hälfte der Gesamtdaten geschrieben werden.
- ZFS aus den letzten 5s kleinen Random Writes ein großes sequentielles Write macht
- Wenn die Platte nicht gerade sehr voll ist, würden viele writes auch ohne diesen Mechanismus sequentiell sein
- also schreiben, ohne Kopf neu positionieren.

Dass die Kopfbewegungen 10x solange dauern wie der Datentransfer kann ich daher nicht nachvollziehen.

Beim Lesen wird bei ZFS und Raid-10 pro Platte nur 1/4 der Datenmenge gelesen. Auch hier gibt es seqentiell
angeordnete Daten.

Bei einem 8fach Raid-10 (4 vdevs jeweils als mirror) verbessern sich die Werte entsprechend um den Faktor 4
im Vergleich zur Einzelplatte.
 
so, nach langem hin und her habe ich den Tipp von Sukrim aufgegriffen und mich an einer iSCSI Lösung versucht.

Genutzt wurde Ubuntu-Server als VM mit einer Striped Mirror ZFS Konfiguration.

Der Speicherplatz wurde als iSCSI Target bereitgestellt, sodass er im Windows Server transparent als Festplatte nutzbar ist und mit NTFS formatiert werden kann.

Ich muss sagen, ich bin von der theoretischen Leistung positiv überrascht.

Hier mal paar Vergleichswerte:

einzelne Platte unter Windows mit NTFS:
7m85-2n-98dc.png

Windows Storage Space bzw. Software RAID 0 aus 3 Platten (NTFS):
7m85-2o-f4b9.png

ZFS Striped Mirrors iSCSI Target (aus Windows Sicht einzelne Platte unter Windows mit NTFS):
7m85-2p-812b.png


Die Frage, die ich mir jetzt stelle: Kommen die "Dateisystem"-Eigenschaften von ZFS eigentlich zum tragen?
z.b. Copy-On-Write und self-healing mechanismen, ...
 
@Bleifrei
lass dich aber nicht von den Werten dort täuschen ;)
Gerade bei den unteren zwei Werten spielt der Cache eine riesige Rolle mit dort rein. Das macht sich genau dann bemerkbar, wenn du genau eine einzige "Last" anlegst. Vor allem solche Tools als Bench bringen dort ggf. den Nachteil mit, das diese aus mehreren Tests einen Mittelwert bilden. Clevererweise greift natürlich der Cache und das Ergebnis entspricht jeglicher Realität. Erst wenn deine Realität auch geanu das gleiche Verhalten zeigt, also sagen wir zwei mal das gleiche ließt oder zwei mal das gleiche schreibt, macht sich der Cache auch massivst dort bemerkbar. Legst du nun aber wirklich random read/write auf die HDDs, greift beim ersten mal der Cache so nicht direkt. (OK beim schreiben schon, aber auch da müssen die Files auf die Disks)
 
Hardwareluxx setzt keine externen Werbe- und Tracking-Cookies ein. Auf unserer Webseite finden Sie nur noch Cookies nach berechtigtem Interesse (Art. 6 Abs. 1 Satz 1 lit. f DSGVO) oder eigene funktionelle Cookies. Durch die Nutzung unserer Webseite erklären Sie sich damit einverstanden, dass wir diese Cookies setzen. Mehr Informationen und Möglichkeiten zur Einstellung unserer Cookies finden Sie in unserer Datenschutzerklärung.


Zurück
Oben Unten refresh