• ComputerBase erhält eine Provision für Käufe über eBay-Links.

FreeNAS NAS mit SAN erweitern

blacklc2

Cadet 3rd Year
Registriert
Nov. 2013
Beiträge
57
Hallo,

ich hoffe hier richtig zu sein ansonsten bitte ich um Verschiebung des Threads.

Ich benutze privat einen selbstgebauten FreeNAS Server. Um mich nicht zu beschränken habe ich 2014 beim Aufbau direkt auf ein Gehäuse mit 24 Plattenplätzen gesetzt die ich auch recht flott gefüllt hatte. Da ich nicht aus dem Bereich Serverhardware komme, habe ich recht wenig professionelle Ahnung und brauche daher ein paar Tipps.

Hier ist eine grobe Übersicht was drin steckt. Das ist nicht ganz vollständig oder aktuell da immer mal was umgebaut wurde aber es hilft um über die Hardware reden zu können.

Geizhals Wunschliste

Ich nutze also eine HP SAS Expander der auch einen externen Anschluss bietet. Welche Art Gerät kann ich dort anschließen um noch mehr Platten an den Server anzubinden und wie funktioniert das genau?

Meine Idee ist ein SAN von SUN. Z.b. den J4400. Würde es funktionieren diesen an die Expander Karte anzuschließen? Werden die Platten dann einfach im FreeNAS erkannt? Welche Kabel braucht man?

Welche Möglichkeiten gibt es generell eine Art JBOD an einen PC anzubinden? Gibt es spezielle Controllerkarten oder wie wird das in Serverfarmen gemacht?

Vielen Dank für kurze Anregungen und Denkanstöße.
die besten Grüße
 
Sorry, ich kann Dir nicht direkt helfen, aber hänge mich mal an das Thema dran :)

Wenn Du auf der verlinkten Basis ein NAS gebaut hast und dieses nun per SAN ausbaust, ist das vorhandene überhaupt die ideale Plattform dafür? Bremst da nicht irgendeine Verbindung bzw. Schnittstelle? Ich hätte Dein Thema jetzt eher im Bereich Server-/RZ-Hardware verortet und nicht bei Home-NAS Systemen.
 
Moin,
Wieviel Speicherplatz benötigst du denn? Wo soll die Reise hingehen? Warum als JBOD? Nutzt du Virtualisierung? Für ein bisschen Spielerei und Dateiablage/Backup daheim ist das schon etwas happig.
Grundsätzlich hast du zwei Möglichkeiten. Entweder die Platten als Array über den Controller (HBA) zur Verfügung stellen, oder alternativ die Platten direkt über den HBA an das Gastsystem durchreichen und dort auf Softwareebene ein RAID oder JBOD erstellen. Was für dich sinnvoller ist hängt vom Einsatzgebiet ab.
Das anschließen eines weiteren Shelfs ist per SAS Expander envetuell möglich. Ich kenne es jedoch so, dass die Shelfs nur mit bestimmten Geräte Zusammenarbeiten. Die Erweiterungsshelfs stellen im Grunde nur Platten zur Verfügung das Management und die Konfiguration läuft über das Master Shelf. Du müsstest als schon etwas kompatibles finden, was per SAS external angebunden werden kann.
Beschreib mal ein wenig mehr was du vor hast.

Im Rechenzentrum wird sowas ähnlich gelöst, entweder Storage direkt im Server oder als SAN. Hier kann noch ein Storage Tiering genutzt werden, das bedeutet, du nutzt die Langsamen Platten (SATA 7200rpm) fürs Backup und Betreibst die Server und Dienste z.B auf den schneller SAS 15000rpm Platten. Performancekritische Dienste laufen womöglich noch auf einem SSD Storage. Mittlerweile findet man auch SSD only Storage Systeme immer öfters.
Zusätzlich laufen die Platten eigentlich immer in einem RAID Level, die Schreib- und Lesegeschwindigkeiten erhöhen sich hier drastisch im Vergleich zum JBOD. Auch Anordnungen mit SSD-Cache sind üblich um Zugriffe zu beschleunigen. Bei drehenden Platten hast du zwangsläufig immer eine Latenz und bekommst die Geschwindigkeiten nur gesteigert indem du mehr Platten nutzt um parallel von mehreren Datenträgern lesen und schreiben zu können.

Grüße
 
Zuletzt bearbeitet:
Interessant... Ich rüste da eher größere Platten nach, als daß ich noch welche dazu baue. Aber wenn Du unbedingt sehr viele Platten stapeln willst, warum nicht gleich ein Gehäuse mit viel Kapazität (z.B. 45x 3,5") nutzen, statt das Rack mit vielen kleinen Gehäusen vollzustopfen.

Mir persönlich reichen 12 Einschübe (beide Backups) oder gar nur 6 Einschübe (produktiv-Server). Bis ich mehr Platz brauche, sind auch die Festplatten wieder größer. Wenn's wirklich dringend notwendig wäre, könnte ich die Server ja auch per iSCSI, AoE oder FCoE (an dedizierten NICs) erweitern, war aber bisher nicht nötig. Die Zeiten, in denen ich (aus Verlegenheit heraus) noch mit FC gespielt habe, sind vorbei.

Aber ja, es gibt auch Gehäuse (z.B. 90x 3,5"), die Du über Expander extern anbinden kannst. Nur ist irgendwann tatsächlich auch mal die sinnvolle Grenze der Erweiterung erreicht, und Du solltest weitere aktive Geräte (z.B. multipath targets) einbinden statt nur drive bays, um die Last sinnvoller zu verteilen
 
Zuletzt bearbeitet:
Hallo und vielen Dank vorab für die Hilfe und das Interesse.

Es geht wenn man so will um Spielerei/Hobby aber auch natürlich und "wichtige" Sicherungen.

Der FreeNAS stellt in erster Linie einfach nur viel Platz zur Verfügung. Es sind 3 ZFS Pools mit je 8 Platten im Raid-Z2, also mit doppelter Parität. Je Pool sind dann verteilt Bilder Musik und Videos... Dazu eben auch Komplettsicherungen (ISOs) von PCs oder Dokumente etc.pp. Alles was eben so an Daten anfällt.

Geschwindigkeit spielt keine Rolle, da die Bedenken/Fragen bisher schon aufgekommen sind. Aktuell limitiert das GB-LAN sodass ich eh nur auf ca 112MB/sek Durchsatz komme. Das reicht mir auch. Wenn intern etwas kopiert wird dann geht das so mit ca . 500MB/sek. Das reicht auch.

Weiterhin läuft darauf Nextclound in einer VM. Damit ich meine Kontakte, Bilder vom Smartphone etc. von Unterwegs syncen und damit "sichern" kann.
In Vorbereitung ist Docker jetzt installiert und ich möchte noch PiHole fürs Netzwerk einrichten.
Von Unterwegs greife ich via OpenVPN auf den Server zu.
Es läuft noch eine Emby Installation in einer VM und mal sehen was mir noch so einfällt.

Alles in allem aber mit gaaanz wenig Auslastung. Der Server langweilt sich eigentlich den ganzen Tag.

Nun habe ich sehr viele RAW Bilder und Videos von einer 4K Kamera (Urlaub...) und frage mich eben wie ich das Gerät am besten erweitern kann.

Es gibt die Möglichkeit immer einen Festplattenpool nach und nach mit größeren Platten zu tauschen. Aber dann liegt danach ein Satz von 8 Platten rum, die eigentlich ok sind. Schade drum.

Nun dachte ich an eine externe Storage Erweiterung. Die Platten müssen wirklich nur 1zu1 an FreeNAS durchgereicht werden da hier ein SoftwareRaid erstellt wird. Daher dieser JBOD Gedanke und ein SAN Storage Shelf.

Auf dem Mainboard ist ein SAS-Controller, den habe ich an einen HP-SAS Expander angeschlossen und komme damit genau auf die 24 Platten.

Achja, die VMs und alles was nicht einfach nur eine SMB-Freigabe ist, liegen auf 2x 500GB SSDs die gespiegelt sind.

Bevor die Frage kommt. Alles was wichtig ist, ist nochmal gesichert weil der NAS keine Sicherung ist. Er stellt mir lediglich immer einfach alles zur Verfügung. Der NAS wird auf einem anderen FreeNAS im Nachbarort gesichert und auf externen Platten dann im Schrank. Also das soll nicht die Frage sein.

Vielen Dank für weitere Hilfe
Ergänzung ()

Die Idee mit dem größeren Gehäuse ist nicht schlecht. Ich wollte allerdings etwas ressourcensparend nicht die intakte Hardware tauschen und dann rumliegen haben sondern lieber erweitern. Wenn es nicht anders geht dann ist das aber eine Überlegung wert. Dann muss ich nur zusehen wie ich mehr als 24 Platten an dieses Mainboard bekomme. Meiner Meinung nach war der SAS-Expander schon nur rumgeschustert. Ich habe dann noch einen PCIE Slot frei und da ist der Platz schon sehr begrenzt zumal ich ja nicht noch einen SAS Controller habe den ich über einen weiteren Expander laufen lassen könnte.

Viele von euren Abkürzungen und Namen muss ich erst nachschlagen wie AoE, FCoE, HBA etc.
 
Zuletzt bearbeitet:
blacklc2 schrieb:
Geschwindigkeit spielt keine Rolle, da die Bedenken/Fragen bisher schon aufgekommen sind. [...] Der Server langweilt sich eigentlich den ganzen Tag.[...]

Warum gehst Du dann auf "relativ" leistungshungrige Hardware? Ein Goldmont (Intel Atom) würde dann höchstwahrscheinlich Deine Anforderungen ebenso gut erfüllen können, wie der in die Jahre gekommene Haswell Xeon, ist aber deutlich genügsamer in der Stromaufnahme (und der Wärmeabgabe).

blacklc2 schrieb:
Viele von euren Abkürzungen und Namen muss ich erst nachschlagen wie AoE, FCoE, HBA etc.

AoE= ATA over Ethernet
FCoE = Fiber Channel over Ethernet
HBA = Host Bus Adapter

AoE ist von der heiligen Dreifaltigkeit (iSCSI, FCoE und AoE) die Variante mit dem geringsten Overhead, da Rohdaten in Ethernet Frames übertragen werden. Nachteil ist jedoch, daß es nicht routbar ist.

Wenn Du auf diese Weise wirklich etwas aufbauen willst, würde ich mehrere (genügsame) iSCSI-Targets nehmen, die von einem zentralen NIS verwaltet werden, der selber keine weiteren Laufwerke als ein RAID1 für's System hat und würde die Arrays über die Targets aufspannen, daß sie sich auch noch einmal gegenseitig "absichern". Also im einfachsten Falle drei targets mit je drei Platten im RAID5, die dann noch einmal im NIS als RAID5 zusammengefasst werden. (redundante Netzteile, redundante USVs, redundante Switches bis zum NIS, der über mindestens 4 NICs verfügt, von denen zwei für die Targets und zwei für die Verbindung nach außen genutzt werden: Wenn schachteln, dann richtig! ;)).
 
AoE ist mal ein prima Ansatz was ich so im Wiki gelesen habe. Vielen Dank für diese Info.
Beim Rest gebe ich dir völlig Recht. Ganz oder gar nicht. Allerdings ist es ja noch Hobby und nicht maximal Professionell und muss auch nicht 100% ausfallsicher sein. Es genügt mir ja schon eine Spur besser als einfach nur eine Platte mit Daten. Da fahre ich nun mit genau dem System seit 2014 eigentlich ganz gut. Klar ist der Verbrauch höher aber die gute Hardware wegwerfen und neue holen damit mehr Strom gespart wird aber auch Leistung verloren geht? Wenn ich in einer VM nun doch mal was rechnen lasse während ich nicht da bin dann ist der aktuelle Aufbau schon ok für mich.

Ich belese mich in jedem Fall genau über deine angesprochenen Themen. Für weitere Vorschläge bin ich dennoch weiterhin zu haben. Hauptsache einfach, nicht so kostenintensiv und nicht zu professionell, nur ein bisschen :-)
Danke
 
blacklc2 schrieb:
Wenn ich in einer VM nun doch mal was rechnen lasse[...]

Das plane ich ein für die Zeiten, in denen einer der Backup-Server läuft (und ein Backup fährt). Die sind bei mir deutlich potenter als das Produktiv-System, aus unter Anderem auch diesem Grunde, laufen aber eben nur "kurz" und nur zu bestimmten Zeiten im Monat/Halbjahr statt 24/7.

Der andere Grund ist schlichtweg, daß die Backup-Server schon zuvor als "Arbeitsrechner" bei mir im Einsatz waren und alleine schon deswegen deutlich höher bestückt waren. So haben diese noch ein zweites (und drittes) Leben und ich zur Not noch ein wenig Rechenzeit übrig wenn ich sie brauche, ohne daß meine Stromrechnung unnötig strapaziert wird.
 
Ich folge grad nicht recht. Nach Deiner Auskunft hast Du ein Board mit on-board LSI SAS2 controller (8 Ports).

Und Du hast einen Expander, dessen einzige Aufgabe es ist, am SAS controller mehr Platten anzuschließen, als jener Ports bereitstellt.

Jetzt bin ich nicht sicher, ob man an den Onboard LSI auch Expander anschließen kann, aber -so macht es den Eindruck, wenn ich mir die Produktseite bei HP anschau- den HP Expander jedenfalls nicht.

Also ist entweder der HP überzählig oder der Onboard-Controller oder Du hast/brauchst noch einen SAS-Controller, ideralerweise ein HP SmartArray, das offiziell mit dem Expander kompatibel ist.

Ist bestimmt etwas ketzerisch, aber wäre es nicht, auch unter den genannten Umständen, eine Überlegung wert, erstmal eine virtuelle Infrastruktur aufzubauen?

Ist ja nicht so, als ob man wirklich X viele Platten gegen ein Storagesystem werfen müßte, um viel Platz zu bekommen. Das Board hat 8 SAS2-Ports, also kann man dort - nur als Beispiel - 8 10T-Platten anschließen und wenn man die als raidz2 konfiguriert, hat man 60TB Platz und das ohne irgendwelchen Zusatzaufwand, ohne groß Zusatzabwärme und ohne groß Zusatzradau (durch die Datenträger).

Bedenke auch, daß mit steigender Plattenzahl auch die Ausfallwahrscheinlichkeit steigt (1 aus x). Irgendwann ist dann der Punkt da, wo jede Woche irgendeine der Platten ausfällt. Dann hat man mehr Streß und laufende Kosten als daß man das ernsthaft akzeptabel nennen könnte.
 
  • Gefällt mir
Reaktionen: Twostone
Gute Punkte RalphS.
Zur Aufklärung. Ich gehe von dem SAS Controller auf dem Board mit 2 Kabeln in den HP Expander und von diesem mit 6 Kabeln wieder ab an die 6 Backplanes des Gehäuses. Dadurch habe ich nicht nur 8 Platten sondern eben 24 im Moment schon dran. An den SATA Ports vom Board sind 2x 120GB SSDs im Mirror für das FreeNAS OS und 2x 512GB SSDs im Mirror für Spielchen wie VMs, plugins, etc.

8x 3TB
8x 4TB
8x 6TB

Es ist noch nicht alles voll aber es wird langsam zumal je Pool 2 Platten abgerechnet werden können durch den Raid-Z2 oder Raid 6 sozusagen und weil die Platten nur bis 80% gefüllt sein sollten da es sonst Leistungseinbrüche usw. geben kann.
 
blacklc2 schrieb:
8x 3TB
8x 4TB
8x 6TB

Ist organisch gewachsen, nehme ich an?

Du brauchst entweder noch einen zweiten Server, oder Du hättest von Anfang an 8 Einschübe frei halten sollen, um auf größere Platten umschwenken zu können, ohne Teile des Servers vom Netz nehmen zu müssen. Fange an, die 3TB-Platten gegen 8TB zu tauschen. Danach sind die 4TB dran, die Du gegen 12TB tauscht, dann die 6TB, dann die 8TB, 12TB...
 
Genau das ist sozusagen die Notlösung und funktioniert unter FreeNAS wie du es beschreibst.
Man nimmt eine Platte und tauscht gegen eine größere... resilvern und weiter mit der nächsten bis der Pool komplett getauscht ist.
Wie oben geschrieben liegen dann eben nur 3 Sätze Platten einfach rum. Schade drum.

Ja das ist historisch gewachsen. Ich habe sogar noch >14x 1.5TB Platten und noch einige 2TB usw. hier rumliegen.
 
Beim Resilver kann auch gerne mal eine Platte ausfallen und es bedeutet auch immer Streß für die verbleibenden Platten. Ich ziehe meine Sätze immer komplett um, der alte Satz kommt inklusive der Reserve in die Backups.
 
Das hat nicht viel mit FreeNAS zu tun, sondern ist eine Eigenschaft von ZFS raidz, daß man die vdev-Anzahl bei der Einrichtung festlegt. Mehr geht nicht. Weniger auch nicht (abgesehen davon natürlich, daß man einen Status DEGRADED aktiv dulden kann, wenn man mehrfache Redundanz hat). Natürlich kann man einen raidz Pool auch vergrößern, aber dann halt nur in Stripe-Konfiguration (0+...) und dann hat man natürlich ordentlich Verschnitt.

Ergo wäre es eine Überlegung wert, die vorhandenen Pools in einen neuen zu konsolidieren, soweit genügend Speicherplatz dafür vorhanden ist.

Eventuell lassen sich ja die Daten von dem 8x3T-Pool in einen der beiden anderen Pools migrieren. Möglicherweise ist auch ein anderer Pool leerer oder besser freiräumbar (ISOs kann man meistens neu besorgen).

Wenn das geht, dann können die kleinen Platten raus und können durch einen 8x10T (oder größeren) Pool ersetzt werden.

Der faßt dann den ganzen Spaß, der sich bisher auf die 24-minus-6 Platten verteilt, auf 8-minus-2 Platten.


Tonnenweise Daten rumschieben ließe sich aber so oder so nicht vermeiden, entweder bedingt durch resilvering oder durch zfs send+receive.


Oder natürlich den anderen Weg: Noch einen Server hinstellen. Wenn der jetzt einen 10G HBA bekommen und in Deinem Supermicro 16er PCIe-Slot noch nichts stecken würde (für einen zweiten), dann könnte man das einfach über iSCSI laufen lassen. Der neue Server würde einfach die verbauten Platten als Targets bereitstellen und Du würdest die als vdevs in ZFS einbinden.

Aber, 10G brauchst Du da schon auf der Leitung.
 
Zurück
Oben