Jump to content

Bevorzugte Cache Methode


Tiras

Recommended Posts

Der 2. Pool ist 10TB groß, also RAID5 oder 15TB und RAID0? Ich verstehe gerade nicht wie du die 10 oder 15TB ins Array sichern willst. Da ist doch nur Platz für 10TB und die anderen Sachen sollen da ja auch noch hingesichert werden.

 

Und warum brauchst du überhaupt einen so performanten Zugriff auf Bilder, Musik und Dokumente?

 

Ich habe zB meine Dokumente dauerhaft auf dem Client und sie werden über meine Backup-Routine regelmäßig auf meinen Server gesichert. So verfahre ich mit allem was ich gerade bearbeiten muss. Wenn ich zB ein Video schneide, dann habe ich die Clips alle auf dem Client und sobald das Video fertig geschnitten ist, wird das komplette Projekt auf den Server verschoben. Hängt bei dir natürlich davon ab wie groß du das VM Image deiner Workstation machen kannst bzw wie groß die Dateien sind, die zu deinem täglichen Workflow gehören. Ansonsten bliebe aber noch die Option das auf einen Share auszulagern, der auf dem 3. Pool mit Cache "Yes" eingestellt ist (setzt natürlich voraus, dass du da etwas größere SSDs verwendest).

 

Meine Bilder liegen dagegen auf einer einzelnen Disk im Array, weil ich da eigentlich nur ab und zu drauf zugreife und dann reichen mir die 100 bis 200 MB/s Download-Geschwindigkeit (je nach Position der Dateien auf der HDD). Beim Upload neuer Bilder ist es dank SSD Cache entsprechend >1 GB/s.

 

Meine Musik liegt aus Energiespargründen komplett auf dem SSD Cache. Da bei uns ständig Hörspiele und Musik abgespielt wird und ich nur deswegen keine Disk im Dauerlauf haben will. Außerdem ist die Latenz beim Abspielen dank der SSD quasi nicht vorhanden.

 

Ja und Filme liegen sowieso dauerhaft auf dem Array. Die werden ja beim Abspielen mit max 10 MB/s geladen (4K).

 

Jedenfalls wäre 2x 1TB für die VMs, 2x sagen wir mal 512GB für Magenta, Cache und Docker und die ganzen HDDs fürs Array denke ich auch keine schlechte Option.

 

Schlussendlich kannst du das aber echt machen wie du willst. Jede Variante geht ja bei Unraid. Du kannst auch nur Pools haben und nur einen leeren USB Stick im Array. Geht auch.

 

Link to comment
7 hours ago, mgutt said:

Der 2. Pool ist 10TB groß, also RAID5 oder 15TB und RAID0? Ich verstehe gerade nicht wie du die 10 oder 15TB ins Array sichern willst. Da ist doch nur Platz für 10TB und die anderen Sachen sollen da ja auch noch hingesichert werden.

Korrekt. Die 3 x 5 TB würden quasi ein RAID 5 ergeben. Die 2 x 4 TB und 1 x 2 TB sind (vorerst) als 10 TB im Array. Meine gesamt notwendige Kapazität liegt derzeit bei knapp 8 TB.

Das würde bedeuten, dass ich auf dem RAID 5 sowieso noch platz habe und sobald dieser auch zum Ende kommt, werden neue Disks eingebaut (sowohl im Array als auch im Pool).

 

7 hours ago, mgutt said:

Und warum brauchst du überhaupt einen so performanten Zugriff auf Bilder, Musik und Dokumente?

Das brauche ich nicht. Die Zuweisung  eines Caches für diese Ordner wäre einfach nur ein Nice-To-Have.

 

7 hours ago, mgutt said:

Ich habe zB meine Dokumente dauerhaft auf dem Client und sie werden über meine Backup-Routine regelmäßig auf meinen Server gesichert. So verfahre ich mit allem was ich gerade bearbeiten muss. Wenn ich zB ein Video schneide, dann habe ich die Clips alle auf dem Client und sobald das Video fertig geschnitten ist, wird das komplette Projekt auf den Server verschoben. Hängt bei dir natürlich davon ab wie groß du das VM Image deiner Workstation machen kannst bzw wie groß die Dateien sind, die zu deinem täglichen Workflow gehören. Ansonsten bliebe aber noch die Option das auf einen Share auszulagern, der auf dem 3. Pool mit Cache "Yes" eingestellt ist (setzt natürlich voraus, dass du da etwas größere SSDs verwendest).

Das war auch zuvor der Fall. Wir haben ausschließlich Apple Hardware, bis auf meinen PC. Das Problem ist hier, dass auf jedem Gerät die Benutzerdaten für bspw. MagentaCloud hinterlegt werden müssen, um es auf dem Geräte nutzen zu können. Deswegen war ich Dir sehr dankbar, als du mir in dem anderen Thema die App rclone empfohlen hast.

Das die Dateien lokal auf dem Client gehalten werden können ist mir schon klar, nur möchte ich sie gerne zentral halten und von dort aus das Backup steuern.

7 hours ago, mgutt said:

Ja und Filme liegen sowieso dauerhaft auf dem Array. Die werden ja beim Abspielen mit max 10 MB/s geladen (4K).

Das würde sich ja nicht ändern. Die Medien würden weiterhin auf dem Array - so zusagen als Backup - liegen, aber mit dem RAID 5 Cache/Pool als "Prefer". Da das auch nur HDDs sind, würde ich hier keinen wirklichen Performance Boost erhalten, sondern lediglich auf eine Ausfallsicherheit hoffen. 

Das gleiche gilt für den 1. Pool. Hier würde ich die 2 x 1 TB als RAID 1 nutzen und nur wirklich nur für VMs. Da die MagentaCloud derzeit nur 100 GB hat und für die Bilder, Dokumente, Kamera Videos etc. dient, reicht meiner Meinung nach eine 128 GB. Um die Daten zwischen den Pools/Array schnell zu verschieben, habe ich hier einfach nur an eine NVMe gedacht. Mir ist natürlich bewusst, dass eine HDD - egal ob inn- oder außerhalb des Arrays - vollkommen ausreichen würde.

 

Ich versuche einfach nur einen Weg für eine ordentliche Backupstrategie zu finden. Ich hätte mir auch für 3500 € ein QNAP kaufen können, die RAID fähig ist, eine einfache Benutzeroberfläche anbietet und VM ready ist. Aber das wollte ich nicht, da irgendwo meine finanziellen Möglichkeiten eine Grenze haben. Außerdem denke ich, dass Unraid all mein Vorhaben unterstützt.

 

Ich muss nur herausfinden wie....

 

Wie gesagt, möchte ich das Array nur nutzen:

  • damit die Daten wiederhergestellt werden, wenn eine Platte im Array defekt ist
  • ich weiterhin auf meine Daten zugreifen kann, auch wenn die defekte Platte im Array nicht sofort ausgetauscht wird
  • ich einen hohen Speicherplatz habe, ohne mir Gedanken über die Parity Disk machen zu müssen
  • ich durch das RAID 5 und Synchronisierung mit dem Array eine gewisse Datensicherheit/Ausfallsicherheit habe

Wie du gesagt hast, gibt es viele Möglichkeiten, die mir auch einfallen würden, aber bspw. eine Low QNAP hier dazu zustellen, die neben mein Unraid Plex ebenfalls als Plex dient, und sämtliche RAIDs enthält und somit Backups regelt, so dass in unraid ein Array mit NVMe und SSDs für VMs aufgebaut wird, war für mich aus Energiegründen keine Option.

 

Mein Unraid System funktioniert und läuft - bis auf die Platten die derzeit ihren Geist aufgeben - soweit stabil. Nur versuche ich jetzt das Maximum herauszufinden. Dein Tipp mit der Asus Karte war wirklich hilfreich. Wenn ich nun noch das nötige Kleingeld hätte, dann würde ich sogar ein Unraid System mit ausschließlich NVMe´s bauen. Aber dafür habe ich die Anwendungen nicht und mein Intranet liegt auch nur bei 1 GBit/s.

 

Lange rede, gar kein Sinn... Es geht mir bei diesem Vorschlag wie gesagt um Backup, hohen Speicher und evtl. max. Performance.

Edited by Tiras
Link to comment
42 minutes ago, Tiras said:

Das würde sich ja nicht ändern. Die Medien würden weiterhin auf dem Array - so zusagen als Backup - liegen, aber mit dem RAID 5 Cache/Pool als "Prefer". Da das auch nur HDDs sind, würde ich hier keinen wirklichen Performance Boost erhalten, sondern lediglich auf eine Ausfallsicherheit hoffen. 

 

Das Array hat nach deinem Plan eine Parität und damit 1x Ausfallsicherheit. Dein 2. Pool HDD hat ebenfalls eine Parität und damit auch 1x Ausfallsicherheit. Die Daten befinden sich bei "Prefer" ausschließlich auf dem Pool. Also unter dem Strich eine Ausfallsicherheit. Oder meinst du, dass du von Hand von dem 2. Pool auf dem Array ein Backup erstellst und damit das Backup ebenfalls eine separate Ausfallsicherheit hat? Dir ist aber schon klar, dass es keine gute Idee ist ein Backup im selben System aufzubewahren? Was ist bei Brand, Diebstahl oder Sicherheitslücken?

 

Besser wäre:

Alle Daten ins Array mit vorgeschaltetem SSD Cache. Bei Bedarf 2 Paritäten um eine doppelte Ausfallsicherheit zu erreichen. Das Backup auf verschlüsselte USB Laufwerke, die im Wechsel auf der Arbeit im Spind landen (= Remote und Offline Backup). Ich selbst habe einen zweiten Unraid Server für meine Backups an einem externen Standort.

 

50 minutes ago, Tiras said:
  • ich weiterhin auf meine Daten zugreifen kann, auch wenn die defekte Platte im Array nicht sofort ausgetauscht wird

Das ist grundsätzlich beim Array so. Wenn du 2 Paritäten hast, können 2 Platten ausfallen und die Daten sind ganz normal verfügbar.

 

 

 

Link to comment
17 minutes ago, mgutt said:

Dir ist aber schon klar, dass es keine gute Idee ist ein Backup im selben System aufzubewahren? Was ist bei Brand, Diebstahl oder Sicherheitslücken?

Du hast natürlich recht, aber Diebstahl kann ich hier schon mal ausschließen, da das System zuhause steht. Aber es macht natürlich kein Sinn Backups auf dem gleichen System zu sichern.

Dann bleibt mir wahrscheinlich doch nur, die TR-004 als externen Speicher via USB an dem Unraid Server anzuschließen, um dort die Backups zu speichern. In der TR-004 werden die 4 x 5 TB wieder eingebaut und als RAID 5 konfiguriert, damit auch dort eine gewisse Ausfallsicherheit vorhanden ist.

 

Im Unraid Server füge ich dem Array die 6 TB als Parity, die 2 x 4 TB und 1 x 2 TB hinzu. Für die Virtualisierungen werden die 2 x 1TB in einem Pool als RAID 1 konfiguriert und die 2 x 128 GB NVMe´s werden dann als Cache für Docker, Transcode etc. verwendet.

 

Die Backups werden dann automatisiert - via Script - direkt auf der TR-004 gespeichert. MagentaCloud möchte ich täglich via Script synchronisieren.

Ich glaube, dass das vorerst eine gute Lösung ist.

Link to comment

 

43 minutes ago, Tiras said:

da das System zuhause steht

Auch zu Hause kann es brennen, der Blitz einschlagen, jemand einbrechen oder dir einfach über eine Sicherheitslücke in Unraid das Backup auf der TR-004 verschlüsseln. Bei einem Freund haben sie genau dann eingebrochen als der im Urlaub war und der Bruder eine Etage darüber im Bett lag. Und die haben alles mitgenommen. Auch die USB Platten in den Schubladen. Ich verstehe auch nicht deinen Fokus auf die Ausfallsicherheit des Backups. Du findest es also wahrscheinlicher, dass dir in beiden Systemen (zu viele) Platten kaputt gehen, als dass eines der anderen Szenarien eintritt? Mein Array hat zB eine Parität und mein Backup Server gar keine. Die Wahrscheinlichkeit, dass mir 2 Platten im Hauptserver kaputt gehen und dann noch genau die im Backup-Server, wo die Filme von der einen defekten Platte drauf liegen, ist so ziemlich... Null? Ich mein klar, ich könnte auch eine Parity Platte in den Backup-Server packen und hätte auch da noch mehr Sicherheit, aber bevor ich das mache, habe ich den Backupserver in jedem Fall an einem anderen Ort platziert, als direkt neben meinem Hauptserver, der dann auch noch volle Schreibrechte besitzt. Das einzige was du im Moment hast ist ein Backup, von dem du gelöschte Dateien wiederherstellen kannst, die du versehentlich vom Hauptserver gelöscht hast. Mehr aber auch nicht.

 

Und nur um das noch mal klarzustellen: Ob du für dein Konzept die TR-004 oder einen separaten Pool nimmst, macht keinen Unterschied.

 

Hast du keinen Bekannten mit einem Router mit USB Anschluss und NAS Funktion? Dann könnte man die TR-004 dorthin stellen. Dann hätte man "nur" noch das Problem, dass eine Sicherheitslücke in Unraid vollen Schreibzugriff auf das Backupziel besitzt.

Link to comment
3 minutes ago, mgutt said:

Das einzige was du im Moment hast ist ein Backup, von dem du gelöschte Dateien wiederherstellen kannst, die du versehentlich vom Hauptserver gelöscht hast. Mehr aber auch nicht.

Ok, aber was bedeutet dann dein Backup-System? Das du ein gleichwertiges System an einem anderen Ort stehen hast, um in eines deiner genannten Fälle deine Dienste, Anwendungen etc. weiterhin nutzen zu können oder einfach deine Daten vom Hauptserver extern zu sichern und diese Sicherungsverwaltung eigenständig läuft?

Link to comment
8 hours ago, Tiras said:

Das du ein gleichwertiges System an einem anderen Ort stehen hast, um in eines deiner genannten Fälle deine Dienste, Anwendungen etc. weiterhin nutzen zu können

Das wäre High Availability oder auch Fallback. Beides ist mit Unraid (noch) nicht möglich. Also nein, das meine ich nicht.

 

8 hours ago, Tiras said:

einfach deine Daten vom Hauptserver extern zu sichern und diese Sicherungsverwaltung eigenständig läuft?

Ich weiß nicht was du mit eigenständig meinst, aber ja, es ist einfach nur ein externes Backup der Daten um gegen die oben genannten Fälle gewappnet zu sein. In meinem Fall holt mein Backup-Server die Daten lesend ab. Mein Server hat also beim Backup-Server keine Schreibrechte. Damit stelle ich sicher, dass falls mein Server gehackt wird, dass der nicht den Backup-Server platt machen kann.

 

6 minutes ago, Tiras said:

Kann ich einem Pool aus 4 Disks im RAID 6 nach und nach weitere Platten hinzufügen

Ja. In dem Fall führt man das BTRFS Balancing aus und die Daten werden komplett umverteilt. BTRFS beherrscht auch das Entfernen von Laufwerken, falls man zb zwei kleine gegen ein großes ersetzen möchte (wäre allerdings ein Shrink + ein Replace = dauert sehr lange).

 

Es kann aber sein, dass man das eine oder andere Kommando per Terminal ausführen muss. Ich habe das jedenfalls noch nie gemacht.

 

 

Link to comment
4 minutes ago, mgutt said:

Ja. In dem Fall führt man das BTRFS Balancing aus und die Daten werden komplett umverteilt.

Das Balancing muss ich ja schon ausführen, wenn ich die Platten im Pool hinzugefügt, das Array gestartet und das Dateiformat ausgewählt habe. Ich möchte nämlich zuerst ein Pool mit 4 Platten zu einem RAID 6 erstellen. Anschließend die Daten aus dem Array in dieses Pool verschieben und die Disk aus dem Array ebenfalls in diesen Pool RAID 6 hinzufügen. Vorher würde ich die Disk, die ich aus dem Array entferne natürlich schon BTRFS Encrypted formatieren, damit ich beim hinzufügen dieser Disk in den Pool und erneutem ausführen von Balancing nicht doch mit einer Formatierung und einem Datenverlust überrascht werde.

Link to comment
16 minutes ago, Tiras said:

Vorher würde ich die Disk, die ich aus dem Array entferne natürlich schon BTRFS Encrypted formatieren, damit ich beim hinzufügen dieser Disk in den Pool und erneutem ausführen von Balancing nicht doch mit einer Formatierung und einem Datenverlust überrascht werde.

Wenn man eine Platte einem RAID hinzufügt, wird die immer komplett platt gemacht. Sogar alle bestehenden Platten werden komplett umgeschrieben, da die Dateien ja jetzt anders zerstückelt werden müssen. Wo vorher mir 4 Platten im RAID6 die Dateien zu jeweils 50% Stücken auf 2 Platten lagen, liegen sie beim Hinzufügen einer weiteren Platte danach zu 33% Stücken auf 3 Platten. Auch die beiden Paritätsplatten werden dadurch neu erstellt.

 

Das ist übrigens beim unRAID Array nicht so. Da liegen die Dateien immer zu 100% auf einer Platte. Aus dem Grund kann es im Array auch niemals wie bei einem RAID6 zum Totalverlust kommen, wenn 3 Platten kaputt gehen.

Link to comment

Ok, aber was ist, wenn ich ein Pool im RAID 6 mit 5 Platten habe und eine Platte ist defekt? Wenn ich dich richtig verstanden habe, dann wird, wenn ich eine neue Platte einbaue das RAID 6 formatiert und neu erstellt. Somit gehen jedes mal sämtliche Daten verloren, oder habe ich das falsch verstanden? Wenn ich es falsch verstanden habe, was muss in  so einem Fall gemacht werden?

Link to comment
On 8/4/2021 at 9:31 PM, Tiras said:

Somit gehen jedes mal sämtliche Daten verloren, oder habe ich das falsch verstanden?

Wenn dich das Thema so interessiert, solltest du echt mal was dazu recherchieren.

 

On 8/4/2021 at 9:31 PM, Tiras said:

was ist, wenn ich ein Pool im RAID 6 mit 5 Platten habe und eine Platte ist defekt?

Dann wird diese eine Platte mit Hilfe der Parität wiederhergestellt.

 

On 8/4/2021 at 9:31 PM, Tiras said:

Somit gehen jedes mal sämtliche Daten verloren

Nein. Da muss ich wohl was falsch erklärt haben. Lies dir bitte durch wie ein RAID funktioniert und wie es sich von einem Unraid Array unterscheidet:

https://forums.unraid.net/topic/99393-häufig-gestellte-fragen/?tab=comments#comment-1021986

 

Wenn du das verinnerlicht hast:

Beim Tausch einer defekten Festplatte, wird diese über die Parität mit genau den Daten gefüllt, die vorher auf der defekten Platte waren. Bei einem RAID6 geht das mit bis zu zwei defekten Festplatten. Erst ab der 3. defekten Festplatte wären alle Daten verloren.

 

Auch beim Hinzufügen einer neuen Festplatte gehen keine Daten verloren. Ich wollte dir nur klar machen, dass die neue Festplatte überschrieben wird und du dir das formatieren sparen kannst.

 

On 8/4/2021 at 9:31 PM, Tiras said:

Ok, aber was bedeutet dann dein Backup-System?

 

Wie ich Backups mache, hatte ich hier mal erklärt:

https://forums.unraid.net/topic/101392-eure-backup-strategie/?tab=comments#comment-935293

 

 

 

Link to comment

Danke für dein Beispiel. Meine aktuelle Konfiguration sieht wie folgt aus:

1. Array (bestehend aus einer 240 GB SSD)

2. Pool_Data (bestehend aus 4 x 5 TB und 2 x 4 TB HDDs im BTRFS - RAID 6)

3. Service_nvme (bestehend aus 2 x 128 GB NVMEs im BTRFS - RAID 1)

4. Virtualizations_nvme (bestehend aus 2 x 1 TB NVME im BTRFS - RAID 1)

 

Die 2 x 4 TB werden demnächst gegen 2 x 5 TB ausgetauscht. Backups werden derzeit nur auf eine externe Platte gemacht, was mir aktuell erst einmal ausreicht, um die Daten bei einem Verlust wiederherstellen zu können.

 

Zu dem 2. Pool_Data habe ich jedoch eine Frage:

Als ich das RAID erstellt habe, mussten die Platten im Pool formatiert werden. Das hat nicht lange gedauert. Anschließend ging die Datenübertragung von 4,6 TB auch recht schnell. Als ich jedoch gerade in die Pool Einstellungen geschaut habe, wurde mir "Scrub" mit der Option "Correct Filesystem" angeboten. Da in den Details "No Information" stand und ich die Beschreibung für "Scrub" so verstanden habe, dass es aufgebaut wird, habe ich es ausgeführt. Kannst du mir evtl. genau erklären, was es genau mit dem Scrub auf sich hat und ob ich etwas falsch gemacht habe? Ich erinnere mich nämlich daran, dass der Aufbau eines RAID 6 eines Bekannten um die 18 Stunden gedauert hat, bis er das RAID nutzen konnte. Bei mir wird nun auch 20 Stunden angezeigt.

 

image.thumb.png.b92879426ebdfb6f4304d7dba6786f90.png

 

 

Link to comment

Ein scrub geht in Richtung Defragmentierung und Fehlerkorrektur. Man soll zb immer ein scrub machen, nachdem der Strom ausgefallen ist. Dass ein scrub so lange dauert, habe ich ehrlich gesagt noch nie gesehen.

 

Dass die Einrichtung eines frischen RAIDs schnell geht ist normal. Dann wird nur die Partition erstellt und nichts sektorenweise formatiert. Später Platten hinzufügen dauert dann wieder lange, weil dann wie gesagt alles umorganisiert wird.

Link to comment
10 hours ago, mgutt said:

Ein scrub geht in Richtung Defragmentierung und Fehlerkorrektur. Man soll zb immer ein scrub machen, nachdem der Strom ausgefallen ist. Dass ein scrub so lange dauert, habe ich ehrlich gesagt noch nie gesehen.

 

Dass die Einrichtung eines frischen RAIDs schnell geht ist normal. Dann wird nur die Partition erstellt und nichts sektorenweise formatiert. Später Platten hinzufügen dauert dann wieder lange, weil dann wie gesagt alles umorganisiert wird.

Also war meine Vorgehensweise nicht falsch, dass ich dem Pool alle Platten zugewiesen, sie formatiert und anschließend das RAID ausgewählt und auf Balance geklickt habe?

 

Wie gesagt, dauerte es bei einem Bekannten, der ein RAID 6 mit 6 x 10 TB erstellt hat auch 18 Stunden. Vielleicht wurde bei ihm automatisch dieses "Scrub" ausgeführt, um zu prüfen ob die Platten alle für das RAID Level geeignet sind. Ansonsten kann ich es mir nicht erklären....

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...