【RHEL】linuxのメモリ使用率(利用率)の計算方法 - のぴぴのメモ

http://nopipi.hatenablog.com/entry/2015/09/13/181026
この先のリンクにMemAvailableの話があった。
RHEL/CentOS】RHEL6.6にMemAbailableがバックポートされている件 - のぴぴのメモ
http://nopipi.hatenablog.com/entry/2015/09/19/231144
CentOS6系でkernel-2.6.32-504.el6以上であれば、redhat独自パッチのMemAvailableがサポートされているので、これを使って的確にフリーエリアを知ることができる。
テストしてみた。


kernelバージョン確認:

# uname -a
Linux C00159 2.6.32-504.16.2.el6.x86_64 #1 SMP Wed Apr 22 06:48:29 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux


デフォルト設定確認:

# sysctl vm.meminfo_legacy_layout
vm.meminfo_legacy_layout = 1


設定変更:
/etc/sysctl.confに追記。

vm.meminfo_legacy_layout=0


反映:

# sysctl -p


設定反映確認:

# sysctl vm.meminfo_legacy_layout
vm.meminfo_legacy_layout = 0


状態の確認:
・meminfoでの確認

[root@C00159 ~]# cat /proc/meminfo | grep MemAvailable
MemAvailable:    7030716 kB

・freeコマンドでの確認

# free -a
             total       used       free     shared    buffers     cached  available
Mem:       8061348    1105604    6955744        860      67112     151916    7031076
-/+ buffers/cache:     886576    7174772
Swap:      2064380          0    2064380


便利だわぁ。
もっとも、CentOS7では、もっとマシな方法があるらしいけど。