Welches Mainbaord/CPU für ZFS RAID?

NullDevice

Lt. Junior Grade
Registriert
Jan. 2011
Beiträge
257
Hallo,

Ich plane ein RAID system für mein Heimnetzwerk + hin und wieder paar Besucher mit Laptops, also max. 5 gleichzeitige Clients.
Anwendung findet also nur im "kleineren" Bereich statt.

Trotzdem will ich keine allzu minderwertige Lösung implementieren. Es sind derzeit 4 TB Daten auf 2x2 TB HDDs (Hitachi 7200rpm). Am Ende rechne ich jedoch mit einem RAID aus 6 bis max 7 solcher Platten.

Ich möchte keine NAS oder ähnliches, da die mit Platz für so viele Platten für den vergleichsweise "kleinen" Einsatzzweck viel zu teuer kommen würden.
Bis jetzt hielt ich an dem Gedanken fest, einen Hardwarecontroller zu kaufen von Adaptec oder LSI/3ware.
Allerdings bin ich jetzt wieder ein wenig weggekommen von dem Gedanken, und denke eher an ZFS + Linux oder Opensolaris, was mir um einiges billiger kommen würde. Ausserdem spielt ja Performance nicht so die ganz grosse Rolle in meinem Fall, sondern eher Ausfallssicherheit / Redundanz.

Wichtig wäre also, dass ich ein Mainboard nehmen werde, das 8x SATA-II (od. SATA-6Gb Anschlüsse) hat.
1 davon werde ich wohl für die Systemplatte verwenden (kein RAID, nur Backups).
Der Rest wird wohl RAID6 werden für die Daten.

Ich hielt also ausschau nach einem passenden Mainboard.
Das wirft jedoch eine wichtige Frage auf: Für welchen Sockel, also für welche CPU?
Es sollte ein guter Kompriss aus Rechenleistung, Preis, und geringer Hitzeentwicklung sein.
Letzteres deshalb, weil 8 Platten in 1 Gehäuse ohnehin schon Kühlleistung genug abverlangen, und laut genug sein werden. Da brauch ich nicht auch noch eine überdimensionierte CPU die irre heiss wird und wieder viel Kühlung braucht.

Bei ZFS wird die Geschwindigkeit des RAID Arrays wohl stark von der CPU abhängen unter anderem. 8GB DDR3 RAM hab ich geplant, da ZFS davon profitiert wie ich gelesen habe. Ich glaube aber, dass bei den wenigen gleichzeitigen Schreib- und Lesezugriffen (auch wenn es jeweils um viele GB Daten auf einmal geht), nicht unbedingt grosse spürbare Unterschiede zwischen zB einem i7 und C2D oder ähnlichem sein werden. Wenn es doch so ist, werden sie wohl nicht so gross sein, dass das RAID6 dadurch "lahm" wirkt, oder? Geschwindigkeit spielt auch nicht die Erste Rolle in meinem Fall.

ABER: Ich kann mir gut vorstellen, dass es bei einem Restore des RAID6, also wenn mal eine Platte defekt ist und getauscht wird, durchaus Unterschiede gibt was die CPU anbelangt. Schliesslich ist ja in dem Fall hauptsächtlich Rechenleistung der Flaschenhals, und nicht die Plattenzugriffe. Oder liege ich da falsch?
Wenn es dann in so einem Fall nur halb so viele Stunden dauert, das RAID zu recovern, fällt das doch ins Gewicht. Hat schon jemand so was hinter sich mit ZFS und einer modernen CPU?

Bei den Socket Kategorien für Mainboards/CPUs muss ich mich erstmal entscheiden zwischen AMD (AM3), was mir sicherlich von der CPU her kostengünstig kommen würde, oder 1156, bzw 1155 (Sandybridge). - Bringt letzteres denn merkliche Unterschiede oder Vorteile für mich?
Dann bleibt noch zu überlegen ob ich nicht einen der beiden krassen Wege gehen soll:
Entweder auf einen C2D mit Sockel 775 zu setzen (jedoch mit DDR3), wobei ich mir nicht sicher bin ob das nicht unterdimesnioniert ist im Fall einer Wiederherstellung des Arrays (?).
Oder eben das andere extrem: Den teureren Weg zu gehen und einen 1366er Sockel zu nehmen, da bei solchen Systemen "mehr PCIe Lanes" gleichzeitig angesprochen werden können, wie ich gelesen habe. Zumindest wenn ich das richtig verstanden habe. Ob das wohl den Aufpreis wert ist? Jedoch verbraten diese CPUs angeblich ein wenig mehr, wie mir gesagt wurde, als die vom Sockel 1156.

Ich kann mich nicht entscheiden.
Was würdet ihr an meiner Stelle machen?

lg, ND
 
Hallo

ZFS ist wirklich eine Offenbarung für reine Storage Laufwerke. :evillol: Man vertbaut sich zwar Wege in andere Richtungen :freak: . Außerdem denkt man in anderen Systemen immer wieder – das müsste doch auch gehen :D

Ich hab jetzt seit fast einem Jahr ein ZFS Storage System im Einsatz und es noch nie Berreut.

Für ZFS ist die CPU wenn du nur speichern willst eigentlich sekundär.
Wichtig ist, dass sie 64 Bit unterstützt und ein mehr Kerner (2-4Kerne sollten reichen) is. :-)
Wenn du die Daten auch noch Komprimieren bzw. Deduplizieren wisst. braucht du natürlich alles an CPU Leistung was du bekommen kannst. :king:
Dann würde ich spontan den SB empfehlen, weil er viel Leistung bei einem sparsamen Idle Verbrauch hat. :rolleyes:
Andererseits ist ECC RAM in Storage Lösungen manchmal empfehlenswert, und den kann man bei den AMD Systemen einfacher einbauen.

In meinem Core i5 2 Kerner (nicht SB) System schaffe ich im Optimalfall so 140MB/s das reicht dicke aus um Gigabit zu sättigen. :king:
Das geht sogar noch mit Kompression (wird sogar etwas schneller :freak:)
Nur mit Dedup und Kompression brech ich schon auf 40MB/s ein – könnte also einen schnelleren Prozessor gebrauchen. – reicht aber eigentlich immer noch :evillol:


Controller nimmst du am besten das billigste, das du bekommst, da ZFS eh die ganze Logik macht und der Controller nur zum Anschluss der platten dient. :evillol:

Ansonsten bleibt an zu merken, dass du nicht Raid6 sondern RaidZ2 nutzen solltest. :heilig:
Da werden dann nur die Tatsächlich belegten bereiche Wiederhergestellt, außerdem kann es einzelne korrumpierte Daten (müssen nicht unbedingt Totalausfälle sein) auf den Festplatten korrigieren. :cool_alt:

Es stimmt auch, das ZFS von viel RAM profitiert, aber eine viel bessere Methode viel Leistung für wenig Geld aus ZFS raus zu holen ist es eine SSD als ZIL/ARK2 Cache in das System zu hängen. :evillol:

Da kannst dann auch als Platten beruhigt die Green Modelle z.B. WD oder Samsung nehmen. Im Idealfall hast du eh SSD Geschwindigkeit beim Lesen bzw. Schreiben :cool_alt:
Insgesammt könnte aber auch ohne SSD der Primäre ARK bei 8 Platten schnell genug hinter her kommen um Gigabit ansatzweise zu sättigen. :king:
 
Hi crossblade!
Danke für deine Antwort + Tipps.

Bist du wirklich sicher dass der Einbruch von 140 auf 40 mb/s bei Kompression an deinem i5 liegt? Oder evtl hast du eine sehr starke Kompression ausgewählt?

Hattest du auf dem System schon mal einen Restore? Würde mich interessieren wie lange es bei wie vielen Platten auf einem i5 dauert. Ich hab mir nämlich auch einen i5 überlegt, oder einen ähnlichen AMD Äquivalenten zum i5. Allerdings gibts dann im letzteren Falle kein Sandybridge :cool_alt:
 
Der Einbruch bei der stärkeren Kompression liegt dann an der gzip-5 Kompression ;) – die lohnt sich aber für Queltexte und das Datengrab man spart dadurch ggf. noch mal deutlich Speicher ein. :D
Für Details möchte ich dich aber auf meinen Projektlog verweisen, da ich die Details nicht mehr auswendig kenne. :rolleyes:
https://www.computerbase.de/forum/threads/core-i5-eierlegende-wollmilchsau-nas-router-vdr.734625/

Besonders im ersten Teil hab ich mich mit ZFS auseinander gesetzt. :) Inzwischen weiss ich zwar manches besser, aber die Grundlagen stimmen immer noch. ;)
Nur das ich ZIL und ARK2 teilweise durcheinander geschmissen habe :rolleyes:


Einen vollständigen Restore hat ich noch nicht aber das regelmäßige scrubbing hat auch noch keine Bit-Fehler gefunden. :D
Der Vorgang dauert etwas mehr als 4h bei einem mit nicht ganz 2TB gefüllten Pool. Also sollte ein kompletter Restore eines vollen 6TB RaidZ geschätzt so um die 12h dauern :king:
Das Hängt aber stark von füllungsgrad und Geschwindigkeit der Platten ab, da ZFS nur die Bereiche Wiederherstellt, die tatsächlich Daten enthalten :rolleyes:

Insbesondere empfehle ich vorab mit ein realen Daten zu testen, welche Parameter man verwenden sollte und sich in das Thema ZIL, ARK und RaidZ usw. ein zu arbeiten. :eek:
Wenn der Pool erst einmal steht kann man leider nicht mehr so viel ändern :(
 
Hast du schon mal das array vergrössert im Nachhinein? Ich hoffe nur dass das nicht allzu aufwendig ist. Da ich ja mit den 2x2TB anfange und später auf 6 Platten erhöhen werde.
...werde mir mal dein Projekt zu Gemüte führen :)
 
Ein RaidZ im nach hinein zu vergrößern ist leider nicht möglich. :( Man kann aber problemlos weitere Platten-Arrays zum Pool hinzu fügen. ;) Wenn du tatsächlich das Array vergrößern willst hilft nur zerstören und neu anlegen…:freak:

Man kann aber mit einem kleinen Trick erst ein Array mit zu wenigen Platten anlegen und auf Parität verzichten und dann diese nachrüsten und synchronisieren. Also mit einem neuen RaidZ2 mit zwei zu wenig Platten anfangen Daten überspielen und dann die beiden alten Platten einhängen.:freak:
Empfehlen kann man es aber nicht, da das Ganze relativ riskannt ist und die Daten gefährdet…:eek:
 
Zurück
Oben