ユーザ用ツール

サイト用ツール


os:nas4free:zfs:cache

文書の過去の版を表示しています。


キャッシュ(ARC/L2ARC/ZIL)

  • L2ARC
    • ZFS の二次用の READ 用キャッシュ1)
    • メモリが64GB未満では搭載の意味はない…らしい
    • L2ARCのサイズは搭載しているRAMの5倍を超えないこと
  • ZIL
    • ZIL(ZFS Intent Log)は、ZFSのWriteログ領域。SSDを適用することでWrite速度の向上を促す。
    • ZILは最大で物理メモリの半分が有効サイズ
    • ZILを構成するには高速でキャパシタ付きのメモリを搭載したSSDを使用することが推奨
    • ZFSv28以降のpoolでは、ZILをミラーする必要はない

ARC サイズの制限

デフォルトでは搭載メモリ量 - 1GB が ARC の最大値として割り当てられる
つまり 8GB のメモリを搭載した環境では 7GB まで ARC に使われる可能性がある

これを制限するパラメータは sysctl の vfs.zfs.arc.max 2)
アプリケーションにどの程度メモリを空けて置きたいのかを考えて、ARC を制限する

例:4GB に制限する

sysctl vfs.zfs.arc.max=4294967296

L2ARC のメモリ使用量

L2ARC は割り当てた容量の約 1.59% のメモリをその管理に使用する
キャッシュヒット率をあげようとして 1TB の SSD を割り当てたとすると

1 TB * 0.0159 = 15.9 GB

で約16GBのメモリを使用する

逆に L2ARC の管理に 1GB のメモリを割り当てるとした場合、 逆算して 63GB の L2ARC を割り当てるべきということが分かる

1 GB / 0.0159 = 62.89 GB

キャッシュ(L2ARC/ZIL)の追加

パーティションスキーマの破壊

# gpart destroy ada0

パーティションスキーマの作成

# gpart create -s gpt ada0

状態を確認

# gpart show

パーティションの作成

# gpart add -s 48G -t freebsd-zfs -l l2arc ada0
# gpart add -s 16G -t freebsd-zfs -l zil ada0

追加

# zpool add tank01 log gpt/zil
# zpool add tank01 cache gpt/l2arc
1)
一次用にはメモリが使用される
2)
13.0-RELEASE より前は vfs.zfs.arc_max
os/nas4free/zfs/cache.1730449995.txt.gz · 最終更新: 2024/11/01 08:33 by admin