Cache voll = Fehlermeldung?!


warp760

Recommended Posts

Hab zwei Nvme 1TB als Cache in nem Pool und heute ~1,5TB Daten auf n Server geschoben. Hab dann bei ~475GB ne Meldung bekommen, der Speicher wäre bald voll und bei 500GB hat die Übertragung tatsächlich abgebrochen! Nun stellen sich mir natürlich zwei Fragen:

 

1. Warum meldet er bei 500GB statt 1000GB schon voll?

 

2. warum springt der Mover nicht an um Platz zu schaffen?

 

Arbeitet der wirklich nur nach Zeitplan? Das wäre ja echt ne Lachnummer...

 

grafik.png.4dc30ca489102c1cb21dd24975690fe2.png

 

grafik.png.d841ea2c5df7bbcc82dbf5e83327e808.png

Edited by warp760
Link to comment
19 minutes ago, warp760 said:

Hab zwei Nvme 1TB als Cache in nem Pool und heute ~1,5TB Daten auf n Server geschoben.

 

Wie hast Du die SSD gekoppelt?

Raid0 (= 2TB Nutzkapazität aber keine Ausfallsicherheit)

Raid1 (=1TB Nutzkapazität und Daten gedoppelt)

Gar nicht gekoppelt = 2x 1 TB in unabhändigen Caches?

 

19 minutes ago, warp760 said:

Hab dann bei ~475GB ne Meldung bekommen, der Speicher wäre bald voll und bei 500GB hat die Übertragung tatsächlich abgebrochen! Nun stellen sich mir natürlich zwei Fragen:

1. Warum meldet er bei 500GB statt 1000GB schon voll?

Dazu müßte man mehr zu Deiner Konfiguration wissen. Siehe auch oben.

 

19 minutes ago, warp760 said:

2. warum springt der Mover nicht an um Platz zu schaffen?

Der Mover springt nicht an, wenn es voll wird, sondern wenn der eingestellt Zeitintervall erreicht und die Bedingungen erfüllt sind.

Wenn der Cache voll ist sollte unraid eigentlich auf das Array durch (also langsamer auf die Festplatten) schreiben.

Es scheint aber so zu sein, daß unraid nicht auf das Array schreibt, sondern das schreibende Programm erkennt, daß nicht genug freier platz im Cache vorhanden ist und deshalb möglicherweise abbricht.

Hast Du im Cache eingestellt, daß er etwas frei lassen soll?

 

19 minutes ago, warp760 said:

Arbeitet der wirklich nur nach Zeitplan?

Ja, oder besser gesagt, ich habe nichts anderes bisher gelesen.

Deshalb sollte der Cache ja auch üppig bemessen werden.

 

19 minutes ago, warp760 said:

Das wäre ja echt ne Lachnummer...

Das steht Dir frei. Vielleicht macht es in Deinem Fall Sinn den Intervall stark zu reduzieren, so daß der Mover früher + häufiger anspringt.

 

Link to comment
4 minutes ago, DataCollector said:

Wie hast Du die SSD gekoppelt?

Raid0 (= 2TB Nutzkapazität aber keine Ausfallsicherheit)

Raid1 (=1TB Nutzkapazität und Daten gedoppelt)

Gar nicht gekoppelt = 2x 1 TB in unabhändigen Caches?

Ich wüsste nicht mal wo ich das einstellen kann?! Hab einfach beide Nvme dem Pool `Cache`zugeordnet. Aber egal welches Szenario: bei 500GB dürfte doch kein Abruch erfolgen mit "Speicher voll" oder übersehe ich was?!

 

7 minutes ago, DataCollector said:

Wenn der Cache voll ist sollte unraid eigentlich auf das Array durch (also langsamer auf die Festplatten) schreiben.

So hatte ich das auch erwartet. Zwar bei 1TB und nicht bei 500GB, aber es ging ja garnichts mehr. Das kanns ja auch nicht sein...

 

9 minutes ago, DataCollector said:

den Intervall stark zu reduzieren,

Das soll die Lösung sein? Wenn man viel Daten kopiert immer den Zeitplan anzupassen? Dachte die Software wäre "schlauer"...

Link to comment
6 hours ago, warp760 said:

Das soll die Lösung sein? Wenn man viel Daten kopiert immer den Zeitplan anzupassen? Dachte die Software wäre "schlauer"...

Wenn der Cache voll ist, schreibt er automatisch auf das Array weiter. Damit das aber zuverlässig funktioniert, muss man den min free space Wert so einstellen, dass er größer ist als die größte Datei, die man auf den Server übertragen möchte. Das erspart einem dann auch die Warnung, dass der Pool voll läuft.

 

Wenn du eine Automatik haben willst, schau dir das Mover Tuning Plugin an.

 

Link to comment
10 hours ago, warp760 said:

warum springt der Mover nicht an um Platz zu schaffen? Arbeitet der wirklich nur nach Zeitplan? Das wäre ja echt ne Lachnummer

 

Versuche gerade zu verstehen was Du erwartest.

 

Du schiebst 1,5 TB auf einen Schreibcache der Platz für 1 TB Daten hat. Während der Kopiervorgang auf den Cache weiterläuft (?) soll gleichzeitig (?) der Mover anspringen und Teile der auf dem Cache befindlichen Daten auf das Array schreiben? War es das was Du mit "springt der Mover nicht an" meintest?

 

Link to comment

es ist ja nicht eine Datei mit 1,5TB gewesen, sondern ein Ordner mit vielen (kleineren) Dateien drin. Die größte Einzeldatei hatte glaub 5GB. Müsste ich mal prüfen.

Aber ja, ich hätte erwartet das der Kopiervorgang einfach weiterläuft... Abgesehen davon das bei 500GB schon abgebrochen wurde mit der Meldung: 100%

Link to comment
3 hours ago, mgutt said:

Wenn der Cache voll ist, schreibt er automatisch auf das Array weiter. Damit das aber zuverlässig funktioniert, muss man den min free space Wert so einstellen, dass er größer ist als die größte Datei, die man auf den Server übertragen möchte. Das erspart einem dann auch die Warnung, dass der Pool voll läuft.

Hab da 1GB stehen. Dann war vielleicht dass das Problem? Was sollte man da denn erfahrungsgemäß eintragen?

Link to comment
31 minutes ago, warp760 said:

Hab da 1GB stehen. Dann war vielleicht dass das Problem? Was sollte man da denn erfahrungsgemäß eintragen?

Zitat: "...min free space Wert so einstellen, dass er größer ist als die größte Datei..."

 

Ich weiß, daß ich Dateien zwischen 1 Byte und 40GB später einkopieren werde. Somit setze ich Min free Space in meinem unraid durchgängig auf 80 oder gar 100GB min free Space.

 

Edit: ich überlege zusätzlich ein zweites unraid System aufzusetzen,w elhes ganze Festplattenimages (Backups) halten soll. Da werde ich den min free Space zur Sicherheit wohl irgendwo um die 200 bis 300GB einstellen.

 

Erwähnte ich schon, daß der Cache besser etwas üppiger ausgestaltet werden sollte, wenn es einem um Stromsparen geht?

 

Unraid ist im Vergleich zu klassischen Systemen mit Raid gut, weil es durch seinen Ansatz die Festplatten lange im Spinoff halten kann. Dadurch verliert man PErformance und Bequemlichkeit.

Aber wenn man eben viel Performance haben will, kann man es eben auch umstellen. Die Festplatten nicht schlafen legen, den Mover sehr häufig laufen lassen, etc....  Aber ob dann unraid noch wirklich für einen passt muß man selber entscheiden.

 

Edited by DataCollector
Ergänzungen
Link to comment
3 hours ago, mgutt said:

Apropos. Wenn man das Konzept doof findet, kann man auch auf das Array verzichten und alle HDDs in einen Pool packen. Ein RAID6 mit >5 Platten ist auch ohne SSDs schnell.

Unraid aktuell stable macht das ja nur bei BTRFS.

Würdest Du dem BTRFS in unraid einen solchen Verbund als stabilem Dauerbetrieb zutrauen?

Ich frage, weil ich sowas ja mit vielen SSD vor habe, lese hier aber immer wieder von Problemen oder Mißtrauen in BTRFS mit Raid5/6, weshalb ich dafür regelmäßige Backups anstrebe.

 

Link to comment
23 minutes ago, DataCollector said:

Unraid aktuell stable macht das ja nur bei BTRFS.

Würdest Du dem BTRFS in unraid einen solchen Verbund als stabilem Dauerbetrieb zutrauen?

Ich frage, weil ich sowas ja mit vielen SSD vor habe, lese hier aber immer wieder von Problemen oder Mißtrauen in BTRFS mit Raid5/6, weshalb ich dafür regelmäßige Backups anstrebe.

 

 

Kein RAID ist sicher. BTRFS kann, muss nicht, BIT-Fehler hervorrufen, defekte Dateien zur Folge. Kann, muss nicht, aber bei jeder HDD/SSD/NVMe so passieren.

Ich selbst habe einen Pool mit mehrere Festplatten im RAID6 und läuft ohne Probleme. Wie gesagt, Chance besteht trotzdem, aber es kann auch von jetzt auf gleich eine normale Platte abschmieren und schlimmer direkt meine zwei Paritäts-Platten und zwei normale Array-Platten... Gott ich hoffe nicht xD

 

Die meisten BTRFS Bugs waren / sind in altern Versionen zu finden, ich bin mir aber ziemlich sicher (ich mir gilt nicht für andere), dass es mittlerweile seltener zu Problemen kommen wird / kann / soll... Da ich es wie gesagt selbst verwende und keinerlei Probleme habe...

Man darf auch nicht vergessen, dass BTRFS und ZFS noch nicht so alt sind. xD BTRFS aber den Vorteil bei den meisten Linux Kerneln bereits integriert zu sein. ZFS nicht überall.

  • Thanks 1
Link to comment
1 minute ago, DataCollector said:

Würdest Du dem BTRFS in unraid einen solchen Verbund als stabilem Dauerbetrieb zutrauen?

Ich bin mittlerweile der Ansicht, dass das bei ZFS auch so ein Problem wäre. Bei meinem Testserver sind nämlich auch schon SSDs aus dem Pool geflogen. Allerdings glaube ich, dass das an NVMe liegt und den Standby Zuständen oder Inkompatibilität zum Mainboard. Sie flog zB raus wegen AER Fehlern. Sowas gibt es bei SATA ja gar nicht. Seit einem Neustart keine Probleme mehr. 

 

Das Risiko ist in jedem Fall nicht unerheblich. Eine Platte zu viel und schon ist alles weg.

  • Thanks 1
Link to comment

Hab jetzt mal 100GB eingestellt. Geht ja nur bei der ersten NVME. Wie finde ich den raus ob der Pool im Raid1 läuft? Es gibt ja den Button zu Raid1 konvertieren. Aber dann passiert irgendwie nix und auch das Menü sieht wie davor aus.

Ist mir extrem wichtig dass die im Raid1 laufen.

 

grafik.thumb.png.bd23de77235e79fa4c36993e53e26b10.png

 

Und warum ich bereits bei 470GB 100% gemeldet bekomme weiß keiner? Bei 2x 1TB stimmt ja aktuell was nicht.

 

grafik.png.fd68f26943fc5ef935d984b80f63bc44.png

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.