winacker
Goto Top

Taugt Cache bei QNAP zu was?

Hallo Miteinander,
ich betreibe seit einiger Zeit u.a. eine QNAP 932 mit 5x3,5" HDD im RAID1.
Meine Versuche aber, der mit SSD-Cache (2x500GB im RAID1) etwas mehr Wumms zu verleien, scheitern bislang.
Schalte ich den Cache ein, sehe ich an der Analyse des Trefferratenverlaufs bei '% Lesen' immer gegen Null.
Test war: Schreibe 6GB Gemischtes und lese das zurück. Die Transferzeiten (Test-PC ist mit 10G angebunden) sind auch gleich, ob mit oder ohne Cache. Dito gilt auch für das Schreiben auf das NAS: Cache Ein oder Aus ändert nichts an der Schreibrate.
Disksp sagt irgendwas mit ~330MB/s R&W, dass was der RAID5-Verbund auch nackt liefern kann.

Den QNAP-Support fragen lohnt das Schreiben nicht, dass ist leider bislang ein Level bei dem ich dann erstmal erklären muß was Cache überhaupt ist. face-sad

Hat da einer von euch Erfahrungen und kennt vielleicht Optionen die helfen?

Danke!

Content-ID: 4969122299

Url: https://administrator.de/contentid/4969122299

Ausgedruckt am: 21.11.2024 um 13:11 Uhr

2423392070
2423392070 15.12.2022 um 11:13:10 Uhr
Goto Top
Für deinen Anwendungsfall kann der Cache nicht wirklich was bringen.
StefanKittel
StefanKittel 15.12.2022 aktualisiert um 15:50:50 Uhr
Goto Top
Ich habe auch mal ein bisschen rumprobiert mit einer SATA SSD.
Der Cache bringt im normalem Office-Umfeld mit viele kleinen Dateien was.

Sobald man größere Datenmenge bewegt quasi nichts mehr, bis zu negativen Auswirkungen.

Stefan
MysticFoxDE
MysticFoxDE 15.12.2022 um 11:26:28 Uhr
Goto Top
Moin winacker,

Disksp sagt irgendwas mit ~330MB/s R&W, dass was der RAID5-Verbund auch nackt liefern kann.

hast du mit dem Parameter "-Su" getestet?
Wenn nicht, dann mach das mal bitte.
Denn ohne diesen Parameter, testest du in erster Linie gegen das lokale und weitestgehend unnütze Software Caching von Windows und nicht gegen den Cache im NAS. 😉

Ausserdem bringt dir SSD-Caching lesend nur etwas beim second IO, aber nicht beim first IO und schreibend kann es die hohe Leistung meistens nur kurzzeitig aufrechterhalten.

Wenn du durchgängigen Bums über den gesamten Speicherbereich haben möchtest, dann musst du AllFlash gehen. 🤪

Beste Grüsse aus BaWü
Alex
winacker
winacker 15.12.2022 um 12:18:28 Uhr
Goto Top
Danke Euch;
Disksp arbeitet natürlich ohne Cache!

Was mir nicht in den Kopf geht: da soll ein SSD-Cache sein. Ich kopiere ~200 Dateien mit zusammen 5GB auf das NAS.
Cache-für-Dummies würde doch bedeuten:
- das QNAP nimmt alles in seinen Cache an (~500MB/s sollten drin sein) und pröddelt das später-wenn-Zeit auf das Ziel-Volume.
- Daten bleiben im Cache solange nix Wichtigeres die verdrängt.
- Ziehe ich nun dieselben Daten von Extern, werden die aus dem Cache bedient (~500MB... siehe oben).

Das Qnap scheint die SSD aber ausschließlich zur Temperierung des Gehäuses zu nutzen face-sad, es macht nix davon.
Aber so blöd können die doch eigentlich nicht sein, das ist deren Kerngeschäft. Daher meine Hoffnung das ICH was falsch mache.
LordXearo
LordXearo 15.12.2022 um 13:35:07 Uhr
Goto Top
Hi,

ich habe in zwei QNAP System einen Flash Speicher an der M.2 Schnittstellle dran. Dieser wird nur für das Schreiben verwendet. Das Klappt super. Bis der Speicher voll ist bekomm ich die Daten in Top Speed geschrieben.
DerMaddin
DerMaddin 15.12.2022 um 15:59:05 Uhr
Goto Top
Ist da irgendwo in deiner Beschreibung ein Fehler? Im ersten Satz ist es RAID1 mit 5 HDDs und paar Zeilen tiefer dann RAID5? Ich gehe hier mal von RAID5 aus. Zwei SSDs drin aber warum in RAID1, wenn diese als Cache dienen sollen?

Zum Beschleunigen von Read/Write ist doch RAID0 wesentlich effizienter. Nicht vergessen, dass bei einem Mirroring mit Software (HW-RAID hat kein NAS) die Datenraten schlechter ausfallen als RAID0. Flaschenhals kann auch der RAM sein. Sind es 2 oder doch 8 oder mehr?

Nicht zu vergessen, dass auch das 10G-Netz unter Umständen auf der einen oder anderen Seite auch die Leistung bringen muss face-wink
winacker
winacker 15.12.2022 um 18:06:11 Uhr
Goto Top
Es ist natürlich RAID5 bei den HDDs, die Cache-SSD sind als RAID1 geschaltet da QNAP dies auch bei Schreibcahce explizit so empfiehlt.
RAM ist 8GB; das LAN ist performant bei 10G
2423392070
2423392070 16.12.2022 um 06:46:25 Uhr
Goto Top
Damit diese Konstellation etwas bringt, muss ein für den Anwendungsfall optimales Dateisystem auf Block- und Filelevel vorhanden sein.
Enterprise OEM nehmen dafür viel Geld.
MysticFoxDE
MysticFoxDE 16.12.2022 um 06:58:15 Uhr
Goto Top
Moin winacker,

das LAN ist performant bei 10G

kannst du mal bitte posten, was auf dem entsprechenden Rechner ...

(Power-Shell-Konsole bitte als Administrator starten)
Get-NetAdapterRss

ausspuckt, danke.

Ist zudem auf dem Client ein AV-Scanner installiert, wenn ja, welcher Hersteller?

Gruss Alex
DerMaddin
DerMaddin 16.12.2022 um 07:40:04 Uhr
Goto Top
Zitat von @winacker:

Es ist natürlich RAID5 bei den HDDs, die Cache-SSD sind als RAID1 geschaltet da QNAP dies auch bei Schreibcahce explizit so empfiehlt.
RAM ist 8GB; das LAN ist performant bei 10G

Beim Daten Schreiben ist RAID1 der Flaschenhals. Beim Lesen sollte eine leicht bessere Performance vorhanden sein. 10G LAN und dann kleine Dateien kopieren, vermutlich noch an einer der Stellen mit 1500 MTU und CIFS/SMB, da wird keine großartige Leistung raus zu holen sein.

Unser einer NAS ein TS-451xeu, hatte Ähnliche "Probleme". Dabei kein SSD-Cache. SMB Übertragung lag bei 270-300 MB/s. Erst via iSCSI stieg es auf bis zu 440 MB/s. Mehr war nicht drin wg. RAID5 mit 7200er HDDs.
MysticFoxDE
MysticFoxDE 16.12.2022 aktualisiert um 08:32:04 Uhr
Goto Top
Moin winacker,

nach dem letzten Beitrag von @DerMaddin ist mir ein Licht aufgegangen. 🔦🤪
Ich denke, ich weiss nun wo dein Problem liegt.

Du hast die Cache-SSD's als RAID1 zusammen geschaltet und alleine schon dadurch kommst du nicht über 600 MB/s hinaus, weil die SSD's in dem QNAP mit max. SAS 6G angebunden sind und du bei RAID1 ja nicht wirklich einen Leistungszugewinn durch den zweiten Datenträger hast, zumindest definitiv nicht beim Schreiben.

Dann kommt einen zweite Gemeinheit dazu. Die meisten SoHo SSD's sind nur solage beim Schreiben schnell, bis deren Cache vollgelaufen ist. Und genau dieser Cache ("Drive-Cache"), wird bei den meisten NAS Systemen auch bei SSD's nicht benutzt. Und ohne den "Drive-Cache" fällt bei vielen SSD's die Schreibratte sogar unter 100 MB/s.

By the Way, früher war es bei QNAP möglich den Drive-Cache der Datenträger nachträglich zu aktivieren.
Ob das auch heute noch geht weiss ich nicht, wir machen schon länger nichts mehr mit QNAP.

Und ausserdem ist das auch nicht ungefährlich. Wenn der Drive-Cache aktiviert ist, du gerade, oder kurz vorher grössere Daten auf die Unit schreibst/geschrieben hast und dann ein Stromausfall kommt, kann es ratz faz passieren,
dass die zuvor geschrieben Daten am A.... sind. Zumindest dann, wenn der Drive-Cache nichtgepufferter RAM ist, was bei vielen SSD's und insbesondere HDD's, der Fall ist.

Zudem laufen 10G NIC's im Windows, wenn du diese nicht ordentlich nachoptimiert hast, alles andere als performant. Darüber habe ich schon ganze Romane geschrieben.

Der SMB Client von Windows, ist ebenfalls per default alles andere als performant Konfiguriert.

Ferner spielen auch die Energieoptionen des BIOS und auch des OS eine wichtige Rolle.

u.s.w.

Glaub mir, 10G vollständig und auch effizient auszureizen, ist alles andere als einfach.

Das nächste Problem könnte z.B. die Art und Weise sein, wie du die Daten kopierst.
Wenn du den Standard Windows Explorer benutzt, dann hast du gleich zwei Probleme, das eine ist Singlethread und das andere ist Softwarecaching.

Versuch mal den gleichen Kopiervorgang mit robocopy und den Parameter /J, dann siehst du genau was ich meine. 😉

Beste Grüsse aus BaWü

Alex
StefanKittel
StefanKittel 16.12.2022 um 09:05:22 Uhr
Goto Top
Bei vielen QNAP NAS kann man das RAM erweitern.
Das wird auch zum Cachen verwendet.
winacker
winacker 16.12.2022 um 13:53:49 Uhr
Goto Top
Danke für euren reichlichen Feedback.
Das mit dem SSd-RAID1 und dem lausigen Schreibverhalten leuchtet ein - nicht aber die lausige Leseperformance.
Werde mal den SSD-Cache beizeiten tauschen gegen eine vornehme PRO-Variante von Samsung UND den Raid1 entfernen.
LAN: das geht gut; JPERF hatte da Durchsätze im Sollbereich ermittelt.
Windows: ja, daran wird vieles hängen bleiben, sehe das Ganze dann auch irgendwann eher akademisch mit gebremsten Schaum.
Ich habe halt immer so ein wenig Hoffnung bei solchen Posts das einer schreibt' klar, ist der und der Schalten, fertig'
face-smile

get-NetadapterRss gibt übrigens aus:
get
MysticFoxDE
MysticFoxDE 16.12.2022 aktualisiert um 15:27:47 Uhr
Goto Top
Moin winacker,

get-NetadapterRss gibt übrigens aus:
get

oh jäh, das ist ja eine VM, sprich da ist ja auch noch ein SDN dazwischen. 😔
Dan wird es nochmals schwieriger das Problem einzugrenzen.

Kannst du mal bitte noch die Ausgabe von ...
Get-VMSwitch | FL

posten.

Der Befehl muss auf dem Hyper-V Node selbst ausgeführt werden, nicht in der VM.

Bei VM's ist es noch komplizierter auch nur ansatzweise eine 10G NIC auszureizen, als bei einem baremetale System.
Hier ein klitzekleiner Roman zu diesem Thema, an dem ich auch etwas mitgearbeitet habe.

https://community.spiceworks.com/topic/2225989-server-2019-network-perfo ...

Beste Grüsse aus BaWü

Alex
winacker
winacker 19.12.2022 um 09:38:20 Uhr
Goto Top
@fox,
die Spiceworks-Threads zum Thema LAN sind ernüchternd - und gehen weit über meinen Ehrgeiz hinaus.
Gern anbei die gewünschte Ausgabe
ndi
MysticFoxDE
MysticFoxDE 20.12.2022 um 07:41:49 Uhr
Goto Top
Moin @winacker,

die Spiceworks-Threads zum Thema LAN sind ernüchternd

ja, leider.
Ich würde ja auch viel lieber über schönere Dinge schreiben, aber leider liefern mir, vor allem die IT-Hersteller,
immer seltener die Gelegenheit dazu. 😔

und gehen weit über meinen Ehrgeiz hinaus.

Wenn du auf modernen Hypervisor-Umgebungen auch nur halbwegs Leistung haben möchtest, dann musst du fürchte ich, deinen Ehrgeiz wohl oder übel noch etwas nach oben schrauben.

Wir sprechen hier schliesslich nicht über das herausholen der letzten 5-10%, sondern eher darüber,
wie man es hinbekommt, dass ein neues System, endlich mehr wie nur 20%-30% der vom Hersteller versprochenen Leistung bringt.

Gern anbei die gewünschte Ausgabe
ndi

Einige deiner VM's laufen mit SR-IOV, einige laufen mit VMQ und einige wiederum mit RSS.
Das kann Performancetechnisch nicht wirklich was werden, vor allem, wenn die VM's auch noch viel untereinander schnacken müssen. 😬

Ich versuche es mal so zu erklären.
Du hast einen Verbrennungsmotor mit drei Zylinder und nun musst du es hinbekommen, dass der einen Zylinder mit Benzin läuft, der nächste mit Gas und der dritte mit Wasserstoff.
Ja, mit sehr viel aufwand würde man den Motor schon so zum Laufen bekommen. Nur würde das am Ende des Tages keiner wirklich machen, weil es zu aufwändig und vor allem zu ineffizient und somit absolut unwirtschaftlich ist.

Aber ja, was bei einem Verbrennungsmotor wahrscheinlich nicht einmal theoretisch erforscht werden würde, weil es in der Praxis schlichtweg nicht sauber funktionieren würde, wird in der IT-Branche mit grossem Tamtam ruck zuck entwickelt und dann auch noch für teures Geld verkauft. 🤢🤮

Na ja, zurück zum Thema, RSC ist auf deinem vSwitch auch noch aktiviert, sprich, so kann das mit 10G gegen die QNAP nicht wirklich gut werden.

Hast du eine Workstation mit einer 10G NIC und ohne Hypervisor darauf zur Hand, mit der du quasi mal nativ gegen die QNAP testen könntest?

Beste Grüsse aus BaWü
Alex
winacker
winacker 20.12.2022 um 09:01:37 Uhr
Goto Top
@fox, habe die10G z.Zt. nur im Backbone. Hatte das aber seinerzeit mit jperf getestet und kam auf die Soll-LAN-Rate.
Du schreibst, ich mische zu sehr die Basisstrukturen. Zugegeben, ich habe mich damit nicht weiter befasst sondern das genommen was HV mir als Default unterschiebt. Teils sind da auch VM bei die von anderen Hosts verschoben wurden, mag sein dass die auch noch ihren Teil dazu beitragen.
Was würdest Du denn als vernünftigen Standard sehen, ich kann das ja daran anpassen (so ich das nachträglich noch kann)?
Danke Dir
MysticFoxDE
Lösung MysticFoxDE 24.12.2022 aktualisiert um 06:10:25 Uhr
Goto Top
Moin @winacker,

@fox, habe die10G z.Zt. nur im Backbone.

meinst du 10G bis zum Core und ab da gehts mit 1G zu den Clients weiter?

Hatte das aber seinerzeit mit jperf getestet und kam auf die Soll-LAN-Rate.

Du musst bei Testen mit iperf, diskspd &Co. KG, immer etwas aufpassen.
Wenn du genug Druck aufbaust, sprich, ein Testpatern mit XX Worker/Threads und oder xx oIO's und oder grosse Blöcke (>64K) benutzt, dann ist es nicht wirklich schwierig 10G auszureizen. Jedoch sollte man dabei beachten, zu welchem Preis (Ressourcenverbrauch) man das dann auch bekommt und vor allem sollte man dabei auch die extrem hohen Latenzen nicht aus dem Blick verlieren.

Vergleich mal bitte einmal direkt, was ein 10 Jahre alter Server mit Server 2012R2 und 10G NIC per default an Leistung bring und dann aktuelle Hardware mit Server 2022. Da wird es einem stellenweise kotzübel, wenn man sieht, wie die alte Möhre die neue, in vielen Bereichen hoffnungslos versägt. Vor allem wenn es darum geht kleine Daten in kürzester Zeit zu übertragen, sprich Transaktionen zu händeln.

Du schreibst, ich mische zu sehr die Basisstrukturen. Zugegeben, ich habe mich damit nicht weiter befasst sondern das genommen was HV mir als Default unterschiebt.

Ja, das ist korrekt, per default sind alle Features aktiviert und zwar ganz egal ob diese zueinander kompatibel sind oder auch nicht. 😔

Teils sind da auch VM bei die von anderen Hosts verschoben wurden, mag sein dass die auch noch ihren Teil dazu beitragen.

Mach dir keinen Kopf, das Problem hast nicht du verursacht, sondern die Hersteller mit ihren zum Teil absolut dämlichen Standardeinstellungen.

Was würdest Du denn als vernünftigen Standard sehen, ich kann das ja daran anpassen (so ich das nachträglich noch kann)?

Natürlich kannst du es im Nachgang noch optimieren, jedoch gibt es kein Universalrezept, was ich dir jetzt mal kurz geben könnte.

Wenn du 10G oder mehr durch ein SDN halbwegs ausgereizt bekommen möchtest, dann stehen dir abgesehen von RDMA, was ich an dieser Stelle gerne ausklammern möchte, SR-IOV, VMQ und Konsorten und RSS und dessen Nachfolger zur Verfügung. Zudem benötigst du bei VMQ und SR-IOV auch immer RSS, sonst kannst du pro VM immer nur eine VMQ oder SR-IOV Queue-Pair benutzen.

Wenn du dich dann z.B. für die Nutzung von VMQ entscheidest, dann solltest du als erstes darauf achten, das deine NIC für den entsprechenden vSwitch und die VM's, die darüber laufen, auch genügend VMQ-Queue-Pair's bereitstellt.
Deine X540 stellt dem vSwitch z.B. 31 VMQ-Queue-Pair's zur Verfügung und davon sind 4 bereits schon in Benutzung.
Das erkennst du an dieser Stelle.
winacker-vmq

Das bedeutet in deinem Fall, dass du auf dem vSwitch des Node's von dem der obere Screenshot kommt, max. 31 VM, mit a einer VMQ-Queue-Pair betreiben kannst. Oder nur 7, wenn du jeder VM z.B. 4 VMQ-Queue-Pair's zuordnen würdest.
Eine VM kann übrigens per default bis zu 16 VMQ-Queue-Pair's fressen.
Was in deinem Fall bedeuten würde, dass du über diesen vSwitch, genau nur eine VM mit VMQ betreiben könntest. 😬

Bei SR-IOV gilt im Grunde dasselbe wie bei VMQ, nur das du hier pro NIC meistens mehr spielraum, sprich mehr SRIOV-Queue-Pair's hast. In deinem Fall sind es 127 die zur Verfügung stehen, von denen bereits 17 belegt sind.
Das sieht man an dieser Stelle.
winacker-sriov
127 hört sich zwar im ersten Augenblick nach viel an, aber wie ich schon oben erwähnt habe, hier gilt dasselbe wie bei VMQ, sprich, im schlimmsten Fall kann auch hier eine VM bis zu 16 SR-IOV Queue-Pair's, per default fressen.

Sprich, egal ob man VMQ oder SRIOV benutzen möchte, man muss es als erstes im Vorfeld sauber durchplanen, dann müssen die Host-NIC's, der vSwicht, die vmNIC von aussen und auch von innen, sauber konfiguriert werden und wenn dann alles passt, dann läuft VMQ oder SR-IOV auch +- ganz gut.

Na ja, wie du siehst, ist die Sache mit SR-IOV und VMQ gar nicht mal so einfach und auch nicht auf jeder Umgebung umsetzbar. Manche unserer Kunden haben ~50 VM's pro Host laufen, bei solchen Umgebungen brauche ich mit VMQ oder SR-IOV erst gar nicht anfangen.

Was dann noch übrig bleibt ist RSS respective vRSS, aber auch das ist nicht ohne.
Damit RSS über SDN läuft, muss deine physikalische NIC bestimmte Features unterstützen.
Du hast mit deiner X540 glück, die kann die entsprechenden Features, weil das wahrscheinlich eine original Intel X540 ist. Mann kann jedoch nicht pauschal sagen, dass alle X540 das können. Ich habe schon diverse DELL, HP, LENOVO & Co Varianten gesehen, bei denen die benötigten Features nicht vorhanden waren.
Jup, kein Scherz, alleine über diesen Murks kann ich einen ganzen eigenen Roman schreiben.

Das vRSS auf deinem vSwitch verfügbar ist, siehst du übrigens hier.
winacker-vrss

Aber auch vRSS kannst du nicht so einfach "out of the box" benutzen, zumindest dann nicht, wenn du halbwegs Performance haben möchtest. Auch hier muss die Host-NIC's, der vSwicht, die vmNIC von aussen und auch von innen, sauber konfiguriert werden. Ansonsten geht ein Grossteil der Leistung deiner Systeme, überwiegend zum Heizen des Serverraums drauf und zwar ohne das du dafür auch annähernd die entsprechenden Performance zurück bekommst.

Wenn du möchtest, dann kann ich im neuen Jahr mal gerne über dein System fliegen und dir einen für deine Hardware passenden Optimierungsvorschlag erstellen.

Beste Grüsse aus BaWü

Alex
winacker
winacker 25.12.2022 um 20:27:33 Uhr
Goto Top
Herzlichen Dank für die 'weihnachtlichen' Erörterungen - fühle mich allerdings etwas abgehangen.
Auch Danke für das Angebot das mal abzuchecken auf dem Livesystem. Komme gern darauf zurück wenn ich wieder Zeit&Muße finde mich mit solchen Dingen zu beschäftigen.
Generell tut es ja und bei meinen <10 VMs auf der Maschine und den typischen Nutzerprofilen merkt auch keiner wirklich ob das LAN mit 5GB im Backbone läuft oder mit 3GB. Nur ich merke es und es juckt dann schon zu schauen ob es da einen quick-fix git.

Gute Tage und Gesundheit für 2023 an Alle, die hier immer wieder super aushelfen!