Unraid – kein Raid, die Nachteile von Unraid
Für meinen neuen Homeserver habe ich mich nach einem geeigneten Betriebssystem umgeschaut. Früher nutze ich nur Debian und darauf lief meine Nextcloud. Heute nutze ich viel mehr Funktionen und Dienste. PiHole, Mailserver, HomeAutomatisation, Jellyfin oder Plex und natürlich noch die gute alte Cloud.
Alle diese Anwendungen lassen sich super virtualisieren. Entweder als echte VM (Virtuelle Maschine) oder als Docker-Container.
Für die Verwaltung gibt es Software wie Unraid. Viel gelobt, viel genutzt, aber auch viel Schatten wo etwas Licht ist.
Warum Unraid bei mir nicht als Hauptsystem läuft und für welche Lösung ich mich entschieden habe, erfahrt ihr in diesem Beitrag.
Vorweg;
Unraid ist KEIN Raid und möchte auch kein Raid sein. Statt echtem Raid gibt es eine Parity-Festplatte. Auf dieser einen Platte wird eine Prüfsumme aller Festplatten geschrieben und damit kann man zu Not EINE (1) und nur eine einzige Festplatte wieder herstellen.
Fällt also eine Platte aus, kann diese über die Parity gerettet werden.
Es wäre auch möglich zwei Festplatten als Parity zu nutzen, dann können zwei Festplatten wieder hergestellt werden.
Die Parity muss die größte Platte im System sein – alle anderen können eine beliebige Größe haben. Die Mischung auf alten 2TB Festplatten und neuen 16TB Platten ist problemlos möglich. Auch der Mix mit USB-Laufwerken gelingt problemlos.
Die Daten werden dabei immer auf eine Platte geschrieben und die Parity wird berechnet.
Dafür ist Unraid da und das läuft auch problemlos. Das Virtualisieren von Maschinen, Docker, Freigaben usw. läuft alles Problemlos und ist die große Stärke von Unraid.
Kommen wir zum großen aber…
Nachteile von Unraid.
Beim Testen und Ausprobieren bin ich sehr schnell auf ein paar Probleme gestoßen. Einige lassen sich umgehen, andere sind nervig und wieder andere verhindern, dass ich Unraid produktiv nutzen kann.
- Booten – Unraid Bootet von einem USB Stick. Das funktioniert in 60% der Fälle. In 40% der Fälle läuft der Bootvorgang nicht durch. Liegt evt. An meinem USB Stick. Da aber nur 2 aus 8 Sticks überhaupt von Unraid als „geeignet“ eingestuft werden und sich bespielen lassen, ist das Debuggen etwas schwer.
- Festplatten Array startet nicht, wenn einige Festplatten verschlüsselt sind.
Unraid würfelt Platten zusammen in einem Array. Davon lassen sich mehrere erstellen und es ist auch möglich einzelne Festplatten zu verschlüsseln.
Meine Idee war es ein Grundsystem, unverschlüsselt, zu haben, auf dem z.B. PiHole läuft, dass die DNS-Abfrage in meinem System übernimmt.
Auch banale Freigaben und Docker-Container dürften gerne automatisch starten solange sie nicht auf der Verschlüsselten Festplatte liegen.
In der Realität funktioniert das leider nicht. Sobald eine Festplatte verschlüsselt ist, fährt das gesamte Array nicht hoch und somit auch keine Freigaben, VM’s und ähnliches.
Der Key für die Verschlüsselung könnte auf dem System hinterlegt werden – aber dann braucht man auch nicht mehr verschlüsseln. - Geschwindigkeit mangelhaft
Unraid ist kein Raid und somit hat man auch keine Vorteile eines Raids. Vor allem beim Lesen und Schreiben kommt das System schnell an Grenzen. Welche Grenzen das sind, ist mir nicht ganz klar.
Die Festplatte, auf die ich schreibe, macht ca. 250MB/s. Mein Lan schafft ca. 110MB/s in der Realität schreibt das System mit 20-45MB/s. Meine Parity habe ich sogar pausiert und trotzdem ist der Durchsatz mangelhaft.
Write-Cache und andere „tweeks“ habe ich versucht. Was natürlich hilft ist eine Cache SSD. Die wird dann schnell beschrieben und verteilt die Daten am Ende eines Tages auf die HDD’s.
Funktioniert bestimmt für die meisten – aber wenn so eine SSD mal ausfällt, dann sind halt die Daten die noch nicht auf den HDD’s liegen weg.
Kompromisse und Lösungen
Am Ende stellte sich die Frage welche Kompromisse man eingehen möchte und was wirklich notwendige und unverzichtbare Features sind.
Für sich steht meine Cloud an erster Stelle. Die muss laufen und die Daten müssen gesichert sein.
Auf praktische Altagshelfer wie PiHole möchte ich nicht verzichten.
Mein letztes NAS war komplett verschlüsselt was den Nachteil hat, dass keiner das Internet nutzen kann, wenn der Stromausfall das NAS killt und ich nicht zuhause bin, um das Passwort einzugeben.
Dazu kommt, dass das neue Mainboard bewusst 2.5 Gigabit LAN kann und ich somit zumindest theoretisch mit um die 300 MB/s Durchsatz haben müsste.
Unraid hat Vorteile und das, was es machen soll, macht es sogar sehr gut. Klar hier und da gibt es komische Menüs, die nicht selbsterklärend sind und dass man das Festplatten Array für viele Einstellung stoppen muss, ist auch etwas merkwürdig – aber es funktioniert.
Daher habe ich mich für folgendes entschieden.
Proxmox mit 4 Platten, ZFS und RAIDZ1 als Haupt-Speicher. Eine Platte Parität und 3 Platten mit nutzbarem Speicher.
Darauf läuft in einer VM meine Cloud – verschlüsselt wie es sein soll, und PiHole – unverschlüsselt. Dazu läuft UNRAID in einer VM und alle anderen Festplatten werden direkt an die Unraid VM durchgereicht.
Damit erhalte ich die volle Funktionalität von Unraid und habe trotzdem eine funktionierende Infrastruktur – dort wo ich diese dringend brauche.
Auch der überschüssige Platz auf den ZFS-Platten kann an Unraid durchgereicht werden.
Ich verspreche mir davon Datensicherheit und Geschwindigkeitsvorteile.
Ob das alles so klappt – berichte ich dann im nächsten Beitrag.
Wenn man jetzt noch Unraid richtig Virtualisieren könnte ohne einen, sehr Fehleranfälligen USB-Stick durch zu reichen. (Mir ist auf jeden fall keine Lösung bekannt?) Ich werde demnächst wohl den Weg von Unraid zu Proxmox mit Shared Storage gehen nur um den USB Stick als Boot Medium ohne das nichts läuft, loszuwerden.
Ja – genau das stört mich auch sehr.
Ich wollte mich immer mal damit auseinander setzen – theoretisch müsste es möglich sein einen USB Stick voll zu virtualisieren und daraus UNRaid laufen zu lassen.
Mit meinem Proxmox-Setup bin ich nach wie vor sehr zufrieden.
Das System von Unraid versteht man auch als Anwender seit dem C64 nicht wirklich.
Ich würde in einem N54L oder Gen.8 gerne 10Gbit-Platten-Zugriff (per 10Gbit-PCIe-Karte) erreichen und nutzen.
Also notfalls RAID-0 mit 4x 300MB/s (9,6Gbit/s), und zur Sicherung eine 5. Platte mit dem 4-fachen Speicher die per Extra Software (da bliebe wohl nur Windows oder ein normales Linux mit GUI) automatisch als Backup synchronisiert wird.
Oder gibt es bessere Methoden, die auch finanziell nicht ausarten?
Ohne Weiteres kann man in diesen Geräten auch nicht einfach 8 Platten zu einem RAID10 verbinden.
Die einzige PCIe-Schnittstelle eines Gen. 8 wäre mit der 10Gbit-Karte belegt.
Außerdem ist so ein 4x/4x-RAID-10 schon gefühlt eine Platten-Orgie.
Wenn das alles SSD sind, kosten die Gebraucht mit Glück und 2TB (für 8TB Nutzspeicher) und 300MB/s €50-€70.
Inkl. 8x €5 Porto im besten Fall €440 für 8 SSD.
Oder wenn es das gibt, 4 1-2TB große HDD mit 300MB/s die als Auktion günstiger sind.
Die Backup-Platte in jedem Fall eine HDD mit 8TB, weil es da keine normalen SSD gibt, und gebrauchte M.2 auch noch viele Hundert Euro kosten.
Ich hatte früher mal einen N40L und hatte da mindestens 6 Platten drin.
Selbst bei 4 Platten würde ich für mehr Geschwindigkeit RAID10 nehmen.
Warum brauchst du so viel schnellen Speicher?
Ich habe 2.5 Gigabit LAN und die Toshiba Enterprice HDD’s die machen so 250 MB/s und passen damit sehr gut zum LAN.
Ich kann mir vorstellen dass der N54L bei 10gb/s an andere Leistungsgrenzen stößt.
Mit dem i3 (13-12100) bin ich sehr zufrieden. Preis / Leistung ist echt super. Da könnte man einfach ein Bord mit min PCIe Plätzen nehmen und eine SATA Karte mit einbauen.
Wenn es noch schneller werden soll könnte man eine NVME als Cache nehmen und von dort auf die HDD’s oder SDD’s verteilen.
Wenn es einfacher werden soll würde ich eine aktuelle Synology https://amzn.to/448AyNF nehmen.
Da hat man halt so gut wie keine Arbeit mit und die Leistung ist echt in Ordnung.
Aber dein Problem klingt interessant 🙂 erzähl ma was du da machst.
Vg.
Bin zufällig auf Deinen Beitrag gestoßen, da ich auch nach einer Lösung suche, wie ich beides nutzen kann. Auch wenn der Blogbeitrag nicht mehr ganz frisch ist.
#Kurze Ergänzung meinerseits zu deinen angesprochenen Punkten:
##**1. Booten**
Hatte diese Probleme bisher nur mit „großen“ USB3+ Sticks. Am besten 16GB Stick USB2.0 in USB2 Port. Funktioniert schon ewig ohne Fehler, zumindest bei mir.
Ein Vorteil ist, dass man keine SSD als Bootplatte verschwendet.
##**Geschwindigkeit mangelhaft
Geschwindigkeit ist für mich absolut in Ordnung, habe eine 2,5gb (teilweise) und schaffe es eigentlich immer diese voll auszunutzen. Ist ja nicht nur der SSD Cache, vorher darf ja noch der Ram herhalten.
Bei meinem Setup werden erst ca. 64-80gb Ram genutzt und dann geht es erst weiter in den SSD Cache. Da habe ich 2x1tb M2SSDs im Raid. Also müssten beide hier verrecken, bevor die Daten verloren gehen.
Zu ZFS kann ich nicht viel sagen, habe es bisher gemieden, ECC habe ich zwar, muss aber anscheinend auch ziemlich die Festplatten runterfahren und im Homeserver auf Enterprise HDDs setzen…Da fehlt das Budget bzw. sehe ichs nicht ein.
Was mir an Unraid gefällt ist, dass die Platten eben permanent im Sleep sind und nur, im Idealfall, einmal in der Nacht hochfahren um den Cache zu leeren. was bei 4 HDDs ca. 20 Watt weniger Stromverbrauch bedeutet.
Alles was VMs, Cluster, VNetwork betrifft, will ich aber nicht auf Proxmox verzichten, Und einen weiteren Server aufstellen… Eigentlich auch nicht…
Natürlich habe ich auch versucht Unraid sp als VM zum Laufen zu bringen, dass ich damit leben kann. Ist aber bisher nicht wirklich gelungen.
Welches Dateiformat verwendest du mit den durchgeschleusten Platten, auch ZFS?
Da würde es keine Rolle spielen, da sie ja sowieso immer drehen (bitte korrigieren, wenn das Quatsch ist).
Ich möchte nur das „Unraid-Prinzip“ auch in der VM umsetzen und das ist so nicht (ohne weiteres) möglich, da Unraid nicht in der Lage ist diese Platten in den Sleep zu versetzen (auch keine temp. oder sonstige Infos bekommt).
Das geht nur, wenn man den ganzen Sata/PCIE Controller direkt durchreicht. Da der Host aber auch noch Hardware braucht geht das nicht so einfach.
Also 2tn Sata+Pcie M2 Controller eingebaut und dann gehts… zumindest fast, Spindown, Smartwerte, Temp funktionieren. Gefühlt gehen die Platten aber trotzdem nicht zuverlässig in sleep. Auch die Lüfter werden nicht mehr richtig angesteuert… Proxmox weiß nicht mehr das es die Platten gibt, Unraid weiß nicht das es die Lüfter gibt 🙂 warum das Mainboard es dann aber nicht regelt, keine Ahnung.
Absolutes Nogo ist für mich aber der Stromverbrauch. Der Server (i7 13gen, 128gb ram) ist ohne die Unraid VM im idle bei ca. 15-20 Watt (HDDs im sleep) wenn die VM läuft sind es dann aber 50-60Watt, was mir eindeutig zu viel ist….
Abschließend, dass Unraid als VM projekt wohl (bei mir) leider nix ist…
Wenn es bei dir noch Updates gibt, gerne her damit…
vg
Moin,
vielen Dank für deinen Beitrag.
Ich müsste wirklich mal ein Update schreiben.
Unraid als VM in proxmox war sehr leicht. Einfach den USB Stick einstecken und diesen direkt an eine VM durchschleifen.
Dort dann von diesem Booten.
Festplatten kann man ggf. als iSCSI durchschleifen, was bei mir sehr langsam läuft, oder als Mount-Punkt, oder halt direkt die ganze Festplatte.
Dann klappt es auch mit dem Stromsparenden „Sleep“ der Platten.
Nutzen tue ich das ganze aber schon lange nicht mehr. Ich habe alle Dienste auf Proxmox als LXC oder VM installiert.
Unraid ist am Ende auch nur ein Linux und irgendwie geht mir da ein „echtes“ Debian leichter von der Hand.
Das Stromsparen ist aber ein echtes Thema – da muss ich mal ran.
Dein Setup klingt sehr spannend – ist in etwa das komplette Gegenteil von meinem.
Es sollte geren klein uns Sparsam sein, du hast das in vernünftig gemacht, 2x NVME SSD, i7 und mehr als 64GB Ram 😀 klingt gut.
Es kann natürlich sein, dass meine performance Probleme einfach aus der CPU / Ram kommen.
Ich baue gerade einen wirklich kleinen sparsammen Homeserver für meine Eltern auf – da werde ich noch mal etwas testen und dann berichten.
Viele Grüße
Moin, ich bin zufällig auf deinen Beitrag gestoßen und wollte mal fragen nachfragen, wie es um dein Projekt bei deinen Eltern steht?
Etwas stromsparendes möchte ich auch gerne realisieren. Mittlerweile geht die Tendenz darauf eine Ugreen Nas (4bay mit n100 CPU) mit unraid zu bestücken. Performance ist bei mir nicht so wichtig. Hauptsache stromsparend.
LG
Leif
Moin Leif,
es hängt leider am Ausbau der Glasfaser… Die haben da draußen im Moment nur 1,5 Mbit… Aber das Glasfaserkabel liegt seit fast einem Jahr am Haus.
Ich habe auch einen N100 dafür gekauft. So ein Mini-PC von Amazon, ca. 120 EUR, mit 16 GB Ram und 512GB NVME.
Als Speicher habe ich ein 4 Bay USB Case für 3.5″ Platten.
Darauf läuft derzeit ein Proxmox-Backup-Server.
Das funktioniert sehr gut – langfristig ersetze ich evt. das Proxmox-Backup durch ein reines Proxmox mit einer Proxmox-Backup-VM.
Dann könnten bei denen local ein paar Dienste wie Home Assistant laufen.
Vg.