Ich habe ein einfaches ZFS-Setup zu Hause, vier gespiegelte Festplatten, 8 GB RAM und 120 GB Intel X25-M SSD für L2ARC. Ich lief zpool add poolname cache cXtXdX
dann erzeugte Last und verfolgte eifrig den Erwärmungsprozess durch Laufen zpool iostat -v mypool
. Ein paar Stunden später ist der L2ARC voll, aber was genau wurde zwischengespeichert?
Kann ich nachsehen, was sich in meinem ARC / L2ARC befindet? Ich verstehe, dass bestimmte Blöcke mehreren Dateisystemen zugeordnet werden würden (aufgrund von Snapshots, Klonen oder Dedup), aber ich möchte trotzdem die folgenden Statistiken testen:
- Art des zwischengespeicherten Blocks: Metadaten. iSCSI, Daten. usw.
- Alter: Wie lange ist jeder Block im L2ARC?
- Welche Dateien: Verzeichnisse, deren Inhalt teilweise zwischengespeichert ist
- Ausfall des Dateisystems: GB zwischen Dateisystem zwischengespeichert
- Ort der nichtflüchtigen Kopien von Blöcken (die Laufwerk / vdev)
Ich würde mir vorstellen, dass zdb und / oder dtrace die Tools de jour sind, aber ich weiß nicht wirklich, wo ich anfangen soll.
Antworten:
Hier ist ein Skript, das aktualisiert wurde, um die Daten in L2ARC wiederzugeben.
Siehe: http://blog.harschsystems.com/2010/09/08/arcstat-pl-updated-for-l2arc-statistics/
Quelle hier verfügbar: https://github.com/mharsch/arcstat
quelle
Ich würde wahrscheinlich argumentieren, dass Sie sich nicht darum kümmern sollten, was sich im Cache befindet, sondern ob die effektivsten Dinge zwischengespeichert wurden. Dh, wird der ARC-Cache maximal genutzt?
Ich führe bei der Arbeit eine kleine (9 TB) ZFS-Implementierung aus und finde Ben Rockwoods Tool arc_summary.pl und Suns arcstat.pl , die beide in diesem Cuddletech-Blogbeitrag beschrieben werden , äußerst nützlich.
Ich weiß, dass es Ihre Frage nicht direkt beantwortet, was genau sich im ARC-Cache befindet, aber diese sollten Ihnen einige solide Daten darüber geben, wie Ihr Cache verwendet wird und ob Sie mehr Speicher / SSD-Speicherplatz benötigen.
quelle