web-dev-qa-db-ja.com

ZFS ARCおよびL2ARCキャッシュには何がありますか?

私は自宅でシンプルなZFSセットアップを行っており、ミラーリングされた4つのディスク、8 GBのRAM、L2ARC用の120 GBのIntel X25-M SSDを使用しています。 zpool add poolname cache cXtXdXを実行してから負荷を生成し、zpool iostat -v mypoolを実行して温暖化プロセスを熱心に追跡しました。数時間後、L2ARCはいっぱいですが、正確には何がキャッシュされていますか?

ARC/L2ARCの内容をのぞいて確認できますか?特定のブロックが(スナップショット、クローン作成、または重複排除のために)複数のファイルシステムにマップされることを理解していますが、それでも次のような統計をサンプリングしたいと思います。

  • キャッシュされるブロックのタイプ:メタデータ。 iSCSI、データ。等.
  • 年齢:各ブロックがL2ARCに存在する期間
  • どのファイル:一部のコンテンツがキャッシュされているディレクトリ
  • ファイルシステムの内訳:ファイルシステムごとにキャッシュされるGB
  • ブロックの不揮発性コピーの場所(ドライブ/ vdev)

Zdbやdtraceがツールdejourになると思いますが、どこから始めればよいのかよくわかりません。

8
notpeter

これは、L2ARCのデータを反映するように更新されたスクリプトです。

参照: http://blog.harschsystems.com/2010/09/08/arcstat-pl-updated-for-l2arc-statistics/

ここで入手可能なソース: https://github.com/mharsch/arcstat

1
ewwhite

キャッシュに何が入っているかではなく、最も効果的なものがキャッシュされているかどうかを気にする必要があると私はおそらく主張するでしょう。つまり、ARCキャッシュは最大限の効率で使用されていますか?

小規模(9TB)のZFS実装を実行していると、Ben Rockwoodのツール arc_summary.pl とSunの arcstat.pl が見つかりました。どちらも、これで詳しく説明されています cuddletechブログ投稿 、非常に役立つ。

ARCキャッシュの正確な内容については直接お答えできないことは承知しておりますが、これらにより、キャッシュの使用状況や、より多くのメモリ/ SSDスペースが必要かどうかについての確かなデータが得られるはずです。

6
growse