- Registriert
- März 2009
- Beiträge
- 2.055
Vom Prinzip ist das das Konzept von Unraid, allerdings holt Unraid (erneut) heiße Dateien nicht zurück auf den SSD Cache. Der Mover läuft einfach alle x Stunden und ist der SSD Cache voll, landen die Dateien sogar direkt auf den HDDs. Das müsste man also selbst per Skript lösen. Ich plane bereits so eines zu schreiben. Bei Unraid gibt es nämlich einen simplen Trick. Ist die Datei auf SSD und HDD, dann überspringt Unraids Mover diese Datei.Skysnake schrieb:Daten die neu sind werden erstmal auf die SSDs geschrieben, wenn dann Zeitspanne X abgelaufen ist wird es auf die Platten migriert.
Der übliche Weg ist aber, dass man ein SSD RAID als Cache hat und da permanent die heißen Daten selbst drauf ablegt. Also zb Container und VMs. Man kümmert sich dann selbst um Backups.
Du kannst ja einem Container beliebig viele Pfade zuordnen. Da die SSDs und HDDs auch direkte Pfade in Unraid besitzen, kannst du sie gezielt zuordnen. Beispiel:Skysnake schrieb:Nein, ich meine Docker Volumes
/mnt/user/Filme
Das ist der Share mit dem Namen "Filme". Dieser ist für den Nutzer über \\tower\Filme erreichbar und wenn bei diesem der Cache aktiviert wurde, dann landen hochgeladene Dateien erstmal dort:
/mnt/cache
Das ist der direkte Pfade zum SSD Cache. Shares, die den Cache nur temporär zb für Uploads nutzen, werden durch den Mover auf die dem Share zugeordneten HDDs verschoben:
/mnt/disk3
/mnt/disk4
/mnt/disk5
Das sind die direkten Pfade zu den HDDs des Arrays, die beispielhaft dem Share "Filme" zugeordnet wurden. Wo die Dateien gerade liegen, kann der Nutzer über \\tower\Filme nicht sehen. Für ihn ist das also ein normaler Ordner.
Ob du nun deine Container Datenbank auf den SSDs und der HDD ablegen kannst, hängt jetzt natürlich von dem Container ab. Also ob der in zwei verschiedene Pfade schreiben kann.
Ähnliches nutze ich zb beim Plex Container. Da habe ich zb den Pfad /tmp/plextranscode für das Transcoding hinterlegt. Dieser Pfad ist eine RAM Disk (tmpfs). Die restlichen Pfade zielen allgemein auf den Share /mnt/user/appdata und da für diesen der Cache auf permanent eingestellt wurde, landen die Datenbank, Cover usw auf dem SSD RAID (welches ich zusätzlich per RSYNC inkrementell auf die HDDs sichere).
Ja, das ist dann aber auch das Maximum. Aktuell kann man noch nicht mehrere Arrays anlegen. Also zb 2x 12 HDDs mit jeweils 2 Paritäten (außer mit einer Unraid VM). Aktuell gingen nur 1x 24 HDDs mit 2 Paritäten. Aber dieses Feature ist bereits geplant. In der neusten Beta kann man bereits mehrere RAID Pools anlegen und sich einen davon als Cache aussuchen. Dadurch kann man neben dem HDD Array auch ein performanteres HDD RAID betreiben. Ich kaufe mir aber lieber mehr SSDs und sorge so für mehr Platz für heiße Daten.Skysnake schrieb:Btw, geht mit unraid eigentlich auch doppelte Parität wie bei Raid6
Korrekt. Daher hast du bei Unraid nur zwei Möglichkeiten:Skysnake schrieb:Es gibt halt wie gesagt da kein stripeing über mehrere Platten.
A) deinen SSD Cache groß genug planen und das evtl mit 64/128GB RAM kombinieren
B) neben dem HDD Array + SSD Cache auch ein HDD RAID einplanen. Das RAID ist dann aber ohne SSD Cache. Hier wäre viel RAM also besonders nützlich.
Es gibt sogar Nutzer, die haben einen kleinen USB Stick als Array und betreiben im Cache ein großes HDD RAID, also auch ohne SSDs. Geht alles aber dann muss man sich logischerweise vom Stromsparen verabschieden.
Hast du denn überhaupt so viele heiße Daten, das sie nicht auf einen 1 bis 2TB großen SSD Cache passen?