
🌐 Auch auf: English · Français · Español
😱 Heute hätte ich fast mein ganzes Rack in die Tonne geworfen…
Heute hatte ich mal wieder so einen klassischen Homelab-Panikmoment. 😅 Ich habe einen riesigen Datensatz zurück auf meine NAS-VM kopiert, und die Übertragung war quälend langsam, mit gelegentlichen Timeouts und Aussetzern. Sogar meine eigenen, wichtigen Dateien waren betroffen! Irgendwann hab ich ernsthaft überlegt, das komplette Rack samt Servern einfach in die Tonne zu kloppen…
Gestern lief noch alles rund, und ich hatte einiges Wichtige über meinen Proxmox-Cluster und mein ZFS-Setup gelernt. Aber heute kam aus heiterem Himmel dieser massive Einbruch. 🤯
Nach einigem Grübeln (und einer Befragung von ChatGPT, meinem treuen Homelab-Orakel 🤓) stellte sich heraus: Schuld war weder das Netzwerk noch die VM-Konfiguration und nicht mal die ZFS-Komprimierung. Nein — es war eine kleine, aber entscheidende ZFS-Einstellung, die steuert, wie Schreibvorgänge gecacht werden: der Sync-Modus 🧠.
⚙️ Der Übeltäter: der ZFS-Sync-Modus
ZFS ist großartig, kann beim Schreiben aber gnadenlos vorsichtig sein. Standardmäßig steht der Sync-Modus auf standard:
- standard: Jeder Schreibvorgang wartet, bis die Daten physisch auf der Platte liegen. Sehr sicher, sehr langsam. 🐢
- disabled: Schreibvorgänge werden gecacht und asynchron auf die Platte geschrieben. ⚡ Schnell, aber riskant, wenn dir mitten in der Übertragung der Strom wegbricht.
Bei mir hat standard für massive Bremsen gesorgt — beim Kopieren von 50 GB Dateien war Farbe beim Trocknen zuschauen spannender. Zuerst hatte ich die LZ4-Komprimierung im Verdacht (klassischer Anfängerfehler 😅), aber in Wahrheit war es die ganze Zeit die Sync-Einstellung.
🔍 So prüfst du deinen Sync-Modus
Auf deinem Proxmox-Host (oder jedem anderen ZFS-System) kannst du den Sync-Modus so abfragen:
zfs get sync <DatasetName>Zum Beispiel für das Dataset meiner NAS-VM:
zfs get sync vmdataDie Ausgabe sieht dann etwa so aus:
NAME PROPERTY VALUE SOURCE
vmdata sync standard default
Dabei gilt: standard = lahme Schildkröte 🐢, disabled = blitzschnell ⚡.
🔧 So behebst du es (und bekommst Superkräfte)
Um die Schreibleistung hochzuschrauben, setzt du sync auf deinem Dataset einfach auf disabled:
zfs set sync=disabled vmdataDann prüfen:
zfs get sync vmdataErwartete Ausgabe:
NAME PROPERTY VALUE SOURCE
vmdata sync disabled local
Nach dieser Änderung ging es auf meiner NAS-VM von ~100 MB/s auf 3,2 GB/s 🚀. Ja… das ist dreißigmal schneller. 😎
💡 Tipp: Die Änderung bleibt auch nach einem Neustart erhalten. Du musst also keine Angst haben, dass die Einstellung beim Reboot des Servers verloren geht. Denk nur dran: Aus großer Macht folgt große Verantwortung — wenn deine Daten kritisch sind, gönn dir eine USV!
Nach der Anpassung des ZFS-Caches habe ich als ersten Test wieder große Dateien kopiert — und alles lief wunderbar. ✅ Meine NAS-VM war wieder im Vollgasmodus, keine Aussetzer, keine Timeouts.
😂 Was ich daraus gelernt habe
- ZFS ist genial, aber prüf erst die Cache-Einstellungen, bevor du deiner Hardware die Schuld gibst. 🖥️
- Die LZ4-Komprimierung ist NICHT immer der Übeltäter (Anfängerfehler!). 😅
- Manchmal reicht die winzigste Stellschraube, und dein NAS fühlt sich an wie mit Raketentreibstoff betankt. 🚀
Also ja, heute habe ich ein drohendes Homelab-Desaster überlebt, weil ich den ZFS-Sync-Cache endlich verstanden habe. Und ja, ich schlafe ein bisschen ruhiger, weil ich weiß, dass meine 50-GB-Kopie nicht bis in alle Ewigkeit mit 100 MB/s dahinkriecht. 😎






