%20f%C3%BCr%20einen%20Nicht-Dateiserver-Computer.png)
In vielen Artikeln zu ZFS wird erwähnt, dass grundsätzlich gilt: Je mehr Speicher man zur Verfügung hat, desto besser. Ich plane jedoch, ZFS auf einem Notebook mit 16 GB RAM zu verwenden. Das sollte zwar für ZFS ausreichen, aber ich möchte auchverwendender Computer, nicht das Bereitstellen von Dateien von ihm; mit anderen Worten, ich möchte, dass Anwendungen (zumindest den größten Teil) dieses Speichers verwenden können, nicht die Implementierung des Dateisystems.
Um es also als Frage zu formulieren: Wie soll ich den Speicherbedarf von ZFS interpretieren, wenn es auf einem Computer ausgeführt wird, auf dem auch nicht-IO-sensitive Apps mit hohem Speicherverbrauch ausgeführt werden?
Antwort1
Es werden 2 GB Arbeitsspeicher benötigt, je nachHäufig gestellte Fragen zu ZFS unter Linux.
Sie können den Speicherbedarf auch optimieren, indem Sie den zfs_arc_max
Parameter festlegen:
# cat /etc/modprobe.d/zfs.conf
options zfs zfs_arc_max=4294967296
Es gibt Parameter, /sys
die die Einstellungen zeigen zfs
:
/sys/module/zfs/parameters/zfs_arc_max
/sys/module/zfs/parameters/zfs_arc_min
Sie können mit der folgenden Einstellung auch festlegen, welche Dateisysteme zwischengespeichert werden zfs primarycache
:
# zfs set primarycache=[all none metadata] zpool/fs
Antwort2
ZFS nutzt zum Zwischenspeichern von Inhalten so viel Speicher, wie es für sinnvoll hält, gibt ihn aber bei Bedarf an Anwendungen zurück.
Beachten Sie, dass andere Dateisysteme auch so viel Speicher belegen, wie sie als Cache benötigen. Der Hauptunterschied besteht darin, dass der Speicher für Anwendungen sofort verfügbar ist. Bei ZFS gibt es eine leichte Verzögerung, die jedoch keinen Unterschied machen sollte, es sei denn, Sie haben eine Anwendung, die den Speicher schneller verwenden möchte, als ZFS ihn freigeben kann, oder die den gemeldeten freien Speicher (+ Puffer/Cache) berücksichtigt und den Start verweigert, wenn nicht genug verfügbar ist.
In einem solchen Fall und wenn Sie den von Ihren Anwendungen benötigten Speicherbedarf im Voraus kennen, können Sie den maximalen Arc-Größenoptimierungswert festlegen, um etwas RAM zu reservieren.
Antwort3
Ich verwende ZFS unter Linux auf meinem Server mit 8 GB RAM. Gemäß der Dokumentation verbraucht es den größten Teil des RAM. Ich habe jedoch keinen Leistungsunterschied bei der Ausführung speicherintensiver Anwendungen festgestellt. Es scheint, dass ZFS den Speicher gerne freigibt, wenn Sie ihn benötigen. Gewöhnen Sie sich jedoch an lächerliche Prozentsätze für den verwendeten Speicher.