zfsとSolaris11:メモリ消費量を減らすには?

zfsとSolaris11:メモリ消費量を減らすには?
sudo echo ::memstat | sudo mdb -k
Usage Type/Subtype                      Pages    Bytes  %Tot  %Tot/%Subt
---------------------------- ---------------- -------- ----- -----------
Kernel                                 291425     1.1g 17.5%
ZFS                                    844447     3.2g 50.7%

zfsが3Gを超えるが最大2Gを消費するようにARCを設定しました。

cat /etc/system
set zfs:zfs_arc_max = 2147483648
set zfs:zfs_arc_min = 1073741824

もちろん再起動しました。

バージョンは11.4ベータ版です。

答え1

zfs_arc_max明らかに、もう使用されていません。バラよりhttps://docs.oracle.com/cd/E53394_01/html/E54818/chapterzfs-3.html#scrolltoc:

ZFSメモリ管理パラメータ

このセクションでは、ZFSメモリ管理に関連するパラメータについて説明します。

user_reserve_hint_pct

説明する

アプリケーションを使用するために予約されたメモリ量をシステムに通知し、時間の経過とともにキャッシュが増加するにつれて、ZFS ARCキャッシュで使用できるメモリ量を制限します。

このパラメーターを使用すると、管理者は将来のアプリケーション要件に使用できる大量の空きメモリーを維持できます。 user_reserve_hint_pctパラメーターは、ZFS ARCキャッシュの増加を制限するためにzfs_arc_maxパラメーターを置き換えるためのものです。

注 - このパラメータ調整の手順については、My Oracle Support(MOS)のドキュメント1663862.1「Oracle Solaris 11.2のZFSとアプリケーション間のメモリ管理」を参照してください。データ型

符号なし整数(64ビット)

基本

0

専用システムを使用して既知のメモリ空間でアプリケーションセットを実行する場合は、このパラメータをOracleデータベースのSGA合計など、その領域の値に設定します。

パラメータに値を割り当てるには、My Oracle Support(MOS)のドキュメント1663862.1に記載されているスクリプトを実行します。再起動後も調整が維持されるようにするには、-pオプションの使用方法については、スクリプトの出力を参照してください。

範囲

0-99

単位

パーセント

動的

はい

実行中のシステムでこのパラメータの設定を動的に調整できます。

いつ変更しますか?

アップレギュレーションの場合、初期値が時間の経過とともにアプリケーション要件を満たすのに十分でないと判断された場合、またはシステムに対するアプリケーション要求が増加した場合に値を増やします。計画されたシステム保守期間中にのみこの調整を実行してください。この値を変更した後、システムを再起動してください。

ダウンレギュレーションの場合は、アプリケーション要件が許可する場合は値を小さくしてください。この値を一度に5%以下に少し減らす必要があります。

献身レベル

不安定な

...

zfs_arc_max

説明する

ZFS ARC (適応交換キャッシュ) の最大サイズを決定します。しかし、参照してくださいuser_reserve_hint_pct

私の考えでは、これは途方もない退化です。厳格な制限は純粋な「ヒント」に置き換えられます。とても良い理由があるかもしれません。硬い限界。

fsck(文書化されていないARCハード制限が実際にあるかどうか疑問に思っています。Sun / OracleはZFSと同様の作業を行ったことがあります。しないでください。ああ、なぜ私たちを信じないのですか? ! ? !ああ、まあ、ああ、はい、ここにありますzdb。私たちは長年にわたり内部的に使用してきたので、かなり成熟しました...」

関連情報