🚀 Advanced ZFS: Cache, SLOG & Dedup
TrueNAS und ZFS skalieren vom kleinen 2-Bay Heim-NAS bis hin zum riesigen Enterprise-Speichersystem für Rechenzentren. Doch welche der Profi-Features lohnen sich wirklich für dein Homelab?
Kurzfassung: Für ein typisches Home-NAS (Filme, Backups, Dokumente) brauchst du weder SSD-Caches noch SLOG. Investiere das Geld lieber in mehr RAM und größere Festplatten! Für Proxmox/VM-Storage via NFS sieht die Sache jedoch anders aus.
1. Der Lese-Cache (ARC vs. L2ARC)
Der ARC (Arbeitsspeicher-Cache)
ZFS nutzt standardmäßig deinen freien RAM als extrem schnellen Lesecache, den ARC (Adaptive Replacement Cache). Er merkt sich intelligent, auf welche Dateien du häufig zugreifst, und hält diese im RAM bereit. Das ist der Grund, warum TrueNAS so viel RAM "verschlingt" – ungenutzter RAM ist verschwendeter RAM!
Der L2ARC (SSD-Lesecache)
Der L2ARC (Level 2 ARC) ist eine zusätzliche SSD, die einspringt, wenn der RAM (ARC) voll ist. Häufig benötigte, aber aus dem RAM verdrängte Daten landen dann auf der SSD.
- Der Haken: ZFS benötigt RAM, um die Dateien auf der L2ARC-SSD zu indexieren! Ein L2ARC kann ein System mit wenig RAM paradoxerweise langsamer machen, weil er dem primären ARC Speicher wegnimmt.
- Fazit: Ein L2ARC lohnt sich erst, wenn dein Mainboard komplett mit RAM vollgesteckt ist (z.B. 64GB oder 128GB) und du viele Nutzer hast, die ständig auf unterschiedliche heiße Daten zugreifen.
2. Der Schreib-Cache (SLOG)
ZFS Intent Log (ZIL)
Standardmäßig schreibt ZFS asynchron. Bei "synchronen" Schreibvorgängen (die sofort vom System bestätigt werden müssen, z.B. bei Datenbanken oder VMs über NFS) schreibt ZFS die Daten zur Sicherheit in ein Logfile direkt auf die langsamen Festplatten (das ZIL). Das bremst die Performance extrem aus.
SLOG (Separate ZIL)
Ein SLOG ist eine dedizierte, rasend schnelle SSD (z.B. Intel Optane), die das ZIL von den Festplatten auslagert. Synchrone Schreibvorgänge landen sofort auf dieser SSD und werden extrem schnell bestätigt, während ZFS sie im Hintergrund in Ruhe auf die Festplatten schreibt.
- Der Mythos: Ein SLOG ist kein genereller Schreibcache! Es beschleunigt nur synchrone Schreibvorgänge. Wenn du eine große ISO-Datei via SMB auf dein NAS kopierst (asynchron), bringt ein SLOG absolut nichts (0% Leistungssteigerung).
- Fazit: Wenn du auf deinem TrueNAS VMs betreibst (z.B. Speicher via NFS für Proxmox bereitstellst), ist ein SLOG Gold wert. Für reine Datengräber ist es nutzlos.
3. Deduplikation (Dedup)
Deduplikation bedeutet, dass ZFS überprüft, ob Datenblöcke bereits auf der Platte existieren. Wenn du die exakt gleiche Datei zweimal speicherst, wird sie physisch nur einmal abgelegt und beim zweiten Mal nur darauf verlinkt.
Warum du es im Homelab niemals aktivieren solltest:
- Die Dedup-Tabelle muss komplett im RAM gehalten werden. Faustregel: 1 bis 5 GB RAM pro 1 TB Speicherplatz nur für die Tabelle!
- Wenn die Tabelle nicht in den RAM passt, bricht die Performance deines gesamten Pools dramatisch ein (Lese- und Schreibzugriffe sinken auf wenige Megabyte pro Sekunde).
- Lösung: Nutze stattdessen Kompression (z.B. LZ4), das standardmäßig aktiviert ist, extrem schnell arbeitet und fast keine Nachteile hat.
🏠 Home-NAS (Media, Backups)
- Ausreichend RAM (16GB - 32GB)
- Kompression (LZ4) ist aktiviert
- Kein L2ARC (SSD Cache)
- Kein SLOG (Write Cache)
- Keine Deduplikation
🏢 Enterprise / VM-Storage
- RAM voll ausgebaut (128GB+)
- SLOG: Intel Optane NVMe (für NFS/VMs)
- L2ARC: Schnelle NVMe SSDs (bei vielen Usern)
- Dedup: Nur in extrem speziellen Fällen