Apa yang ada di cache ZFS ARC dan L2ARC saya?

8

Saya memiliki pengaturan ZFS sederhana di rumah, empat disk yang dicerminkan, ram 8GB, dan 120GB Intel X25-M SSD untuk L2ARC. Saya berlari zpool add poolname cache cXtXdXkemudian menghasilkan beban dan dengan bersemangat melacak proses pemanasan dengan berlari zpool iostat -v mypool. Beberapa jam kemudian, L2ARC penuh, tetapi apa yang sebenarnya telah di-cache?

Bisakah saya mengintip dan melihat apa yang ada di ARC / L2ARC saya? Saya mengerti bahwa blok tertentu akan dipetakan ke beberapa sistem file (karena snapshot, kloning atau dedup) tetapi saya masih ingin sampel statistik seperti ini:

  • Jenis blok di-cache: metadata. iSCSI, data. dll.
  • Umur: Berapa lama setiap blok berada di L2ARC
  • Yang file: direktori yang memiliki beberapa kontennya di-cache
  • Rincian Filesystem: GB di-cache per sistem file
  • Lokasi salinan blok yang tidak mudah menguap (yang mendorong / vdev)

Saya membayangkan zdb dan / atau dtrace akan menjadi alat de jour, tetapi tidak benar-benar tahu harus mulai dari mana.

notpeter
sumber
3
Ada entri blog yang luar biasa dari Brendan Gregg yang menjawab beberapa poin Anda.
user9517
Periksa skrip yang ditautkan dalam jawaban saya.
ewwhite
Entri blog oleh Brendan Gregg telah pindah: ZFS L2ARC
Marco

Jawaban:

6

Saya mungkin berpendapat bahwa Anda seharusnya tidak peduli tentang apa yang ada dalam cache, tetapi apakah hal yang paling efektif telah di-cache. Yaitu, apakah cache ARC digunakan untuk efisiensi maksimum?

Saya menjalankan implementasi ZFS skala kecil (9TB) di tempat kerja dan saya menemukan alat Ben Rockwood arc_summary.pl , dan Sun's arcstat.pl , keduanya dirinci dalam posting blog cuddletech ini , sangat bermanfaat.

Saya tahu itu tidak menjawab pertanyaan Anda secara langsung tentang apa sebenarnya yang ada di cache ARC, tetapi ini akan memberi Anda beberapa data yang solid tentang bagaimana cache Anda digunakan, dan apakah Anda membutuhkan lebih banyak ruang memori / SSD.

menggeram
sumber