SSD im Array


Anym001

Recommended Posts

Hallo,

ursprünglich wollte ich eine SSD ins Array bauen, um den Downloads Ordner drauf zu packen. (Damit die HDD`s schlafen können)

Habe dann jedoch gelesen, dass SSD`s im Array nicht zu empfehlen sind.
Daraufhin wollte ich sie wieder entfernen, nur lässt mich Unraid nicht. (Bild im Anhang)

Wie kann ich die SSD nun wieder aus dem Array entfernen?
Oder ist das mit den SSD`s im Array mittlerweile wieder geändert worden?
 

Unbenannt.jpg

Edited by Anym001
Link to comment

Warum sollte man eine SSD nicht im Array nutzen dürfen? Klar geht das.

 

Nur als Parität sollte man sie nicht verwenden, da eine Parität nicht getrimmt werden kann, weshalb eine SSD-Parität mit der Zeit sehr langsam werden würde (außer man nimmt eine Enterprise SSD mit viel Over-Provisioning).

 

Um eine Disk aus dem Array entfernen zu können:
- Foto/Screenshot von der Disk-Übersicht machen

- Tools -> New Config -> Parity + Cache Preserve (behalten) 

- Danach kannst du alle Platten neu zuordnen und die SSD weglassen

 

Bitte beachte, dass in dem Moment die Parität kaputt ist und mit einem Check korrigiert werden muss. Es gibt auch noch eine Methode, wo die Parität ganz bleibt:

https://wiki.unraid.net/Shrink_array#The_.22Clear_Drive_Then_Remove_Drive.22_Method

  • Thanks 1
Link to comment
12 hours ago, mgutt said:

Warum sollte man eine SSD nicht im Array nutzen dürfen? Klar geht das.

 

Das habe ich mir zu Beginn auch gedacht.

Nur bringt Fix Common Problems folgende Fehlermeldung.
 

WARNINGS FOUND:

disk2 is an SSD.

 

SUGGESTED FIX:

SSD's are not currently supported within the array, and their background garbage collection *may* impact your ability to rebuild a disk

 

Kann man das einfach ignorieren?

Link to comment
51 minutes ago, Anym001 said:

Kann man das einfach ignorieren?

Für mich macht dieser Satz keinen Sinn. Ja, ein Rebuild kann auf eine SSD langsam sein, aber die "Ability", also die Fähigkeit dazu, kann man meiner Ansicht nach nicht verlieren.

 

Das es langsamer werden kann, liegt übrigens an der Art wie SSDs Daten schreiben. Bei einer HDD kann man an beliebigen Positionen Sektoren direkt beschreiben. Bei einer SSD liegt ein Sektor aber in einer Page und die wiederum in einem Block. Und SSDs können nur Blöcke schreiben.

 

Die SSD verteilt die neuen Daten dann ständig in neue Blöcke und lässt in Ruhephasen über die Garbage Collection die Blöcke zusammenfassen, so dass wieder Blöcke frei werden. Deswegen soll man auf SSDs immer etwas Platz lassen.

 

Sind keine Blöcke mehr freie, dann muss die SSD den Blick erst auslesen, die neuen Sektoren / Pages ergänzen und den ganzen Block neu schreiben. Dieser Vorgang dauert dann deutlich länger als das Schreiben in freie Blöcke.

 

Wie langsam sowas sein kann hängt auch vom Typ ab. QLC SSDs können ja schon auf 80 MB/s fallen, wenn der SLC Cache voll ist. Wenn die dann noch Blöcke überschreiben müssten, wäre das entsprechend noch langsamer. Aber vollständig die Fähigkeit zum Rebuild verlieren auch die nicht.

 

Vom Prinzip müsste man auch nur den Rebuild pausieren. Dann könnte die Garbage Collection ihren Job machen und danach geht es wieder schneller.

 

Eine SSD mit SLC Cache wird übrigens nicht so stark darunter leiden, da beim Leeren des SLC Caches die Daten zusammengefasst in einen Block geschrieben werden. Allerdings müsste man auch hier der SSD erstmal die Zeit geben den SLC Cache zu leeren. Denn wenn der voll ist, hat man das selbe Problem, dass es sonst langsamer wird.

 

Also lange Rede, kurzer Sinn. Meiner Ansicht nach kann man das ignorieren.

 

Allerdings bleibt die Frage welchen Grund man dafür hat eine SSD ins Array zu packen. Für Lese-Operationen ist es in Ordnung, aber schreiben wird natürlich voll durch die HDD Parity gebremst.

  • Thanks 1
Link to comment
4 minutes ago, mgutt said:

Also lange Rede, kurzer Sinn. Meiner Ansicht nach kann man das ignorieren.

 

Allerdings bleibt die Frage welchen Grund man dafür hat eine SSD ins Array zu packen. Für Lese-Operationen ist es in Ordnung, aber schreiben wird natürlich voll durch die HDD Parity gebremst.

 

Danke für deine Erläuterungen.

Dürfte in meinem Fall dann zu vernachlässigen sein.

 

Möchte hier die Downloads bzw. eher die Musik rauf packen.

Streame meine Musik via Jellyfin.

Um hier die die SpinUps's meiner HDD's zu verringern ist mir die Überlegung einer SSD gekommen.

 

Für Schreibprozesse ist es irrelevant, weil hier ja die Parity sowieso immer geweckt wird.

Link to comment

Dann spricht meiner Ansicht nach nichts dagegen.

 

Was du mal testen kannst ist ein Parity Check, danach einen Trim dieser SSD (per Terminal) und zuletzt noch mal ein Parity Check. Sollte es beim 2. Check zu Fehlern kommen, darf man in Zukunft niemals einen Trim ausführen, da dieser die Parity verändert.

 

 

Link to comment

So mache ich das auch. Bei Musik ist das ja absolut ausreichend. Die ändert sich ja nicht alle paar Minuten.

 

Hier noch die letzte offizielle Antwort vom Support zu SSDs im Array:

https://forums.unraid.net/topic/53433-ssds-as-array-drives-question/?tab=comments#comment-522482

 

Wie du siehst ist es sicher, solange man kein TRIM nutzt oder eben eine SSD mit passenden TRIM Fähigkeiten besitzt.

  • Like 1
  • Thanks 1
Link to comment
  • 4 months later...

Immer wieder Interessant was mgutt zu berichten hat. Wie auch der Yt Kanal. Nur "....Nur als Parität sollte man sie nicht verwenden, da eine Parität nicht getrimmt werden kann..." verstehe ich nicht so recht, das würde doch auch heißen dass ein RAID5/6 ect.pp aufgrund der Parität die verteilt geschrieben werden eher Probleme macht. 

 

Etwas „off topic,..

Synology bietet RAID F1 an um eine SSD mehr zu belasten und dort den früheren def. herbeizuzaubern, wobei ich mich frage wie das logisch gehen soll, würde ja heißen, dass eine Platte immer öfter oder mehr Informationen abbekommt die im Fall das doch diese dann nicht vorzeitig ausfällt eher für mehr Verlust sorgt.. 

Link to comment
1 hour ago, Reflexion said:

verstehe ich nicht so recht, das würde doch auch heißen dass ein RAID5/6 ect.pp aufgrund der Parität die verteilt geschrieben werden eher Probleme macht. 

In Unraid ist die Parität ein RAW Volume. Unraid nimmt also jeden einzelnen Sektor und erwartet, dass dieser die "Quersumme" aller Daten aller Disks darstellt. Löscht man nun eine Datei auf irgendeiner Disk und die Parität wird aktualisiert, dann ändert sich die "Quersumme" von ganz bestimmten Sektoren. Es wurde also faktisch nichts auf dem Paritätslaufwerk gelöscht, sondern nur geändert. Alle Sektoren enthalten also nach wie vor wichtige Daten, die bei einem Ausfall für die Wiederherstellung herangezogen würden.

 

Oder anders gesagt: Bei Unraid ist die Parität immer zu 100% voll. Selbst dann, wenn das Paritätslaufwerk größer ist als alle anderen Platten. Dann schreibt zwar Unraid den Rest mit Nullen voll, aber es ist eben "voll".

 

Bei einem BTRFS / ZFS RAID ist die Parität dagegen kein RAW-Dateiformat, sondern vom Dateisystem selbst werden auf Dateiebene Datenblöcke geschrieben und gelöscht. Und gelöschte Blöcke kann man dann auch problemlos trimmen.

 

Aus dem Grund hat es die Firmware der SSD beim Unraid Array schwer irgendwas aufzuräumen. Denn wenn die SSD komplett voll ist, kann die Firmware nicht wirklich was machen. Und da liegt eben der Vorteil von Enterprise SSDs, die einen besonders großen Over-Provisioning Bereich bieten. Ich finde Kingston erklärt das ganz gut:

https://www.kingston.com/germany/de/ssd/overprovisioning

 

Aus dem Grund haben Enterprise SSDs auch nie 1TB, sondern 960GB Speicherplatz.

  • Like 1
Link to comment

Danke für die genaue Erläuterung. Für mich stellt sich dennoch die Frage ob im mageren 2,5" HDD Bereich im Zusammenhang "..von ganz bestimmten Sektoren..." SMR noch verschmerzbar ist... als Parity Platte. So habe ich es seit etwas übern Jahr laufen.. vlt doch kein so guter Kompromiss.

Link to comment
4 hours ago, Reflexion said:

SMR noch verschmerzbar ist... als Parity Platte.

So wie SMR funktioniert, ist es gänzlich ungeeignet für eine 100% volles RAW Laufwerk. SMR verschiebt nämlich ständig und räumt auf, damit zukünftige Schreibvorgänge schnell bleiben. Das geht aber nicht, wenn alle Sektoren beschrieben wurden.

  • Like 1
Link to comment

Hallo @mgutt

 

On 6/28/2021 at 5:22 PM, mgutt said:

Aus dem Grund haben Enterprise SSDs auch nie 1TB, sondern 960GB Speicherplatz.

 

Gibt es Erfahrungen dazu. dass diverse Consumer SSD mit firmeneigener Software den Overprovisioningbereich anpassen können?

Beispiel: Man kauft eine ca. 2TB SSD und stellt dort den OVP Bereich so ein, dass 1TB nutzbar bleibt. Dann nutzt man diese SSD als Paritydatenträger in einem Array mit ansonsten 1TB grossen anderen SSD. Dies sollte die Performance doch gleichbleibend hoch und die Datensicherheit vergleichbar einer reinen HDD Nutzung bieten.

Oder denke ich da falsch?

Link to comment
10 hours ago, mgutt said:

Genau das geht nur mit Enterprise SSDs. Gibt von Samsung zb DCToolkit.exe

Ich glaube diese Funktion im Samsung Magician auch bei meiner 970 Evo gesehen zu haben. Aber da mich das bisher nicht interessiert hatte, habe ich es nicht genauer angeeehn/geprüft:

 

https://www.samsung.com/de/support/memory-storage/welche-funktionen-hat-magician/

...Over-Provisioning: Verlängern Sie die Lebensdauer Ihrer SSD, indem Over-Provisioning freien Speicherplatz reserviert. Weder das Betriebssystem noch ein Anwender hat Zugriff, so dass dem Controller dieser Platz als "Arbeitsspeicher" immer zur Verfügung steht...

Link to comment
On 6/29/2021 at 9:19 PM, mgutt said:

So wie SMR funktioniert, ist es gänzlich ungeeignet für eine 100% volles RAW Laufwerk. SMR verschiebt nämlich ständig und räumt auf, damit zukünftige Schreibvorgänge schnell bleiben. Das geht aber nicht, wenn alle Sektoren beschrieben wurden.

...vlt wäre es ein Kompromiss SMR Platten dann für die Daten selbst zu nutzen, als Mediencenter bei dem weniger geschrieben dafür mehr gelesen, wäre es vlt so. als Parity müsste dann eine CMR 3,5" gewählt werden denn 4-5 TB in 2,5" ohne SMR Verfahren sehe ich nicht.. Preise sind eh so, dass man in dieser Größe besser zur SSD greift die auch eine höhere Fehlerkorrektur besitzt. Ansonsten bleibt einen nur bei SMR komplett auf Parity zu verzichten und einen 2ten Server mit der Platte als Redundanz aufzubauen.

Link to comment

...ich hatte es so gelöst weil ich für den 24/7 Einsatz (cloud, DNS.. VPN... auf Docker ) passiv gekühlt ein Intel G4560 auf einem Asus H110S1/CSM mit DC Anschluss sitze habe.. da kann ich wenn nur über USB anderweitig 3,5" Platten dran packen. Darum 2,5.. Spannung kommt ja vom Board selbst.
Danke nochmals, dass Du im Netz Vielen nützliches Wissen gut Nachvollziehbar bereitstellst.

Ich werde die Kiste aber auflösen.. wenn das mit der Leistungsaufnahme nicht besser wird.
Das von Dir vorgestellte tool "Powertop" brachte ja bereits testweise beim HP T620 Plus Thin Client (AMD Gx-420ca) ..schon einige Ersparnisse in der Leistungsaufnahme ein mit der Auto -Optimierung.. (von schwanken 8-14Watt auf 7-8Watt) nur leider geht die USB Platte nicht in den Deep Sleep-Mode^^.. Aber das ist ein anderes Thema.

Edited by Reflexion
Link to comment

Ja USB Controller sind unvorhersehbar in ihrem Verhalten. Ich hatte auch eine Zeit lang zwei Platten über USB im Array. Manchmal hatte ich bei den Parity Checks Fehler, manchmal nicht. Und schlafen schicken ging quasi gar nicht. Bin froh jetzt alles über SATA angeschlossen zu haben. Lieber eine SATA Karte als USB (denn denn ein Slot frei ist)

  • Like 1
Link to comment
On 7/3/2021 at 8:38 AM, mgutt said:

Uralter Controller (JM539), der nur SATA II spricht. Ob er mit Standby Kommandos klar kommt, müsste man testen. Kann ich mal raussuchen, wenn du testen magst.

Das ist sehr lieb von Dir, aber das brauchst Du nicht.  Du hilfst schon zur Genüge ;) Wäre vlt dann relevant wenn vermehrt solche Bastelleien aufkommen...

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.