
Solaris 10 および Ubuntu 11.10 で SNMP を使用してファイルシステムのスペース情報を収集したいと思います。問題は、SNMP に の「使用可能」列に対応する属性がないように見えることですdf
。
たとえば、df -k
ローカル ファイルシステムの出力は次のとおりです。
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sdb1 36841040 13489312 21480268 39% /
そして、SNMPデーモンからの関連属性は次のとおりです(Net-SNMPドキュメント):
HOST-RESOURCES-MIB::hrStorageDescr.31 = STRING: /
HOST-RESOURCES-MIB::hrStorageSize.31 = INTEGER: 9210260
HOST-RESOURCES-MIB::hrStorageUsed.31 = INTEGER: 3372328
HOST-RESOURCES-MIB::hrStorageAllocationUnits.31 = INTEGER: 4096 Bytes
これで9210260*4 = 36841040
、、3372328*4 = 13489312
およびが出力の列と一致しますdf
。ただし、「Available」列に対応する属性は見つかりません。これは単に 2 つの列を減算するだけの問題ではないことに注意してください。「Available」列は、ファイルシステムごとに異なるいくつかの隠れたオーバーヘッドを考慮しているようです。
SNMP を使用して「使用可能」列情報を収集または計算する方法はありますか?
答え1
利用可能なスペースを確保するには、標準のSNMPに加えて追加の設定を行う必要があると思います。NET-SNMP ドキュメント次のようなことが言及されています。
ディスク容量を監視するときに使用できるテーブルは、UCD-SNMP-MIB:dskTable と HOST-RESOURCES-MIB:hrStorageTable の 2 つです。これらのテーブルには 2 つの顕著な違いがあります。UCD-SNMP-MIB:dskTable は snmpd.conf で設定ディレクティブを必要としますが、空き容量のパーセンテージを直接測定することもできます。
したがって、hrStorageTable ではなく dskTable にアクセスするには、HOST-RESOURCES-MIB ではなく UCD-SNMP-MIB を使用する必要があるようです。