web-dev-qa-db-ja.com

topとhtopはメモリ使用量について意見が一致していませんが、GlusterFSサーバーでスワップが使用されています。これは改善できますか?

実行した場合free -mtopおよびhtop、異なるメモリ使用量を取得します。システムはまた、少量のスワップを使用しています。 この質問 なぜ彼らが異なる値を報告しているのか(一部のデータは「破棄可能」と見なされ、一方のシステムに含まれ、もう一方のシステムには含まれない)を理解していますが、システムがスワップを使用しますか?これは、最新バージョン(3.4.3)を実行しているGlusterFSサーバーです。

スワップを使用していて、物理メモリから「破棄可能な」データをクリアせず、代わりにそれを使用している理由を誰かが知っていますか?

できること/すべきことはありますか、それとも少量のスワップの使用を心配しないように監視システムを変更する必要がありますか?

無料-m:

free

トップ:

top

htop:

htop

ご協力いただきありがとうございます。

1
Luke Cousins

小さなスワップの使用についてはまったく心配しません。カーネルがメモリからスワップにデータをドロップすることがあります。 swappiness オプションを使用して、カーネルの動作を制御できます。

echo 60 > /proc/sys/vm/swappiness

このコントロールは、カーネルがメモリページをスワップする度合いを定義するために使用されます。値が大きいほど攻撃性が高くなり、値が小さいほどスワップの量が少なくなります。値0は、空きページとファイルバックアップページの量がゾーンの最高水準点より少なくなるまでスワップを開始しないようにカーネルに指示します。デフォルト値は60です。

仮想メモリサブシステムの詳細については、 カーネルドキュメント を参照してください。

1
b13n1u

観察しているメモリ使用量は、freetop、およびhtopの間でまったく同じです。 topビューから計算してみましょう。

8171728-(341276+2195864+4061972) / 1024 = 1535

これは、htopで取得するものと実質的に一致します。

また、top値をKBからMBに変換すると、free値も一致することがわかります。

あなたがパニックに陥っているスワップの使用法は、おそらく退屈なデーモンがディスクにスワップアウトされただけであり、それについて心配する必要はありません。

0