freeコマンドで取得した値との対応
Zabbix、Linux初心者です。
メモリ使用率のアイテムを以下の通り作成しております。
タイプ:計算
キー :vm.memory.size[pused] ※計算結果には影響しない認識です
式 :100*(last("vm.memory.size[total]")-last("vm.memory.size[available]"))/last("vm.memory.size[total]")
実サーバでfreeコマンドの実行結果は以下の通りでした。
[admin@localhost ~]$ free
total used free shared buff/cache available
Mem: 3863540 1264772 205716 17952 2393052 2224068
Swap: 2097148 3840 2093308
同時刻にZabbixの値を確認すると以下の通りでした。
メモリ使用率 :46.5%
vm.memory.size[total] :3.68GB
vm.memory.size[available]:1.97GB
vm.memory.size[available]とfreeコマンドのavailableの値は一致しないのでしょうか。
比較対象が誤ってますでしょうか。
Yasumi - 投稿数: 372
はい。一致しません。
「free available 違い」で検索すると、いろいろなブログで解説されています。
TNK - 投稿数: 4671
freeコマンドのfreeの値とavailableの値は一致しませんが、
vm.memory.size[available]とfreeコマンドのavailableの値は、
ほぼ一致するはずです。
kwgc - 投稿数: 3
ありがとうございます。
freeコマンドのfreeとavailableの違いもよく理解できていないので、
確認いたします。
TNK - 投稿数: 4671
vm.memory.size[available]とfreeコマンドのavailableの値は、ほ
ぼ一致します。
例えば、手元の何台かのサーバーで取得してみると以下のようにな
りました。
・サーバー1
vm.memory.size[available] : 1082114048(bytes) = 1056752(KBytes)
freeコマンドのavailableの値 : 1055864(KBytes)
・サーバー2
vm.memory.size[available] : 1097322496(bytes) = 1071604(KBytes)
freeコマンドのavailableの値 : 1069564(KBytes)
・サーバー2
vm.memory.size[available] : 3498663936(bytes) = 3416664(KBytes)
freeコマンドのavailableの値 : 3416292(KBytes)
取得タイミングによっても値の変化があると思うので、本当に同時
刻に取得した値で比較されていますか?
一応確認させておいて頂きたいのですが、使用されているZabbixの
バージョンは何ですか?
そして、Zabbixエージェントを実行しているサーバーのOSは何ですか?
kwgc - 投稿数: 3
詳細までありがとうございます。
ほぼ一致する旨、了承いたしました。
ベースの情報が不足しており申し訳ございません。
Zabbixのバージョン:2.2.23
OS:CentOS 7.2 (64bit)
Zabbix側の値は、ある程度時間経過後にグラフから読み取ったものになるため多少の誤差があります。