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.
 

  1. 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.

  2. 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.
  3. 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.