dfコマンドで現在の使用状況を表示させてみました。
# df -h Filesystem Size Used Avail Use% マウント位置 /dev/mapper/vg_nmcent64-lv_root 43G 2.2G 39G 6% / tmpfs 939M 0 939M 0% /dev/shm /dev/sda1 485M 37M 423M 8% /boot |
んー、MRTGで表示させるのはルートのみですかね。後はなくてもいいよね。とはいえ、MRTGは2値が必要なので、/bootも表示させることにしてみます。
前回作成したsnmpd.confにディスク関係のパラメータを追記します。(赤字が追記部分。)追記が無いと、MIB値を取ろうと思っても値が返ってきません。
# sec.name source community com2sec notConfigUser 192.168.15.0/24 test-ro com2sec notConfigUser localhost test-ro # sec.model sec.name group notConfigGroup v1 notConfigUser group notConfigGroup v2c notConfigUser # incl/excl subtree mask view all included .1 80 # context sec.model sec.level prefix read write notify access notConfigGroup "" any noauth exact all none none # disk / 10000 disk /boot 10000 |
追記が終了したら、snmpdの再起動を実行します。
ディスク関連のOID (1.3.6.1.4.1.2021.9) を指定して snmpwalkを実行します。
# snmpwalk -v 1 -c test-ro localhost 1.3.6.1.4.1.2021.9 UCD-SNMP-MIB::dskIndex.1 = INTEGER: 1 UCD-SNMP-MIB::dskIndex.2 = INTEGER: 2 UCD-SNMP-MIB::dskPath.1 = STRING: / UCD-SNMP-MIB::dskPath.2 = STRING: /boot UCD-SNMP-MIB::dskDevice.1 = STRING: /dev/mapper/vg_nmcent64-lv_root UCD-SNMP-MIB::dskDevice.2 = STRING: /dev/sda1 UCD-SNMP-MIB::dskMinimum.1 = INTEGER: 10000 UCD-SNMP-MIB::dskMinimum.2 = INTEGER: 10000 UCD-SNMP-MIB::dskMinPercent.1 = INTEGER: -1 UCD-SNMP-MIB::dskMinPercent.2 = INTEGER: -1 UCD-SNMP-MIB::dskTotal.1 = INTEGER: 44969032 UCD-SNMP-MIB::dskTotal.2 = INTEGER: 495844 UCD-SNMP-MIB::dskAvail.1 = INTEGER: 40482144 UCD-SNMP-MIB::dskAvail.2 = INTEGER: 432895 UCD-SNMP-MIB::dskUsed.1 = INTEGER: 2202552 UCD-SNMP-MIB::dskUsed.2 = INTEGER: 37349 UCD-SNMP-MIB::dskPercent.1 = INTEGER: 5 UCD-SNMP-MIB::dskPercent.2 = INTEGER: 8 UCD-SNMP-MIB::dskPercentNode.1 = INTEGER: 2 UCD-SNMP-MIB::dskPercentNode.2 = INTEGER: 0 UCD-SNMP-MIB::dskTotalLow.1 = Gauge32: 44969032 UCD-SNMP-MIB::dskTotalLow.2 = Gauge32: 495844 UCD-SNMP-MIB::dskTotalHigh.1 = Gauge32: 0 UCD-SNMP-MIB::dskTotalHigh.2 = Gauge32: 0 UCD-SNMP-MIB::dskAvailLow.1 = Gauge32: 40482144 UCD-SNMP-MIB::dskAvailLow.2 = Gauge32: 432895 UCD-SNMP-MIB::dskAvailHigh.1 = Gauge32: 0 UCD-SNMP-MIB::dskAvailHigh.2 = Gauge32: 0 UCD-SNMP-MIB::dskUsedLow.1 = Gauge32: 2202552 UCD-SNMP-MIB::dskUsedLow.2 = Gauge32: 37349 UCD-SNMP-MIB::dskUsedHigh.1 = Gauge32: 0 UCD-SNMP-MIB::dskUsedHigh.2 = Gauge32: 0 UCD-SNMP-MIB::dskErrorFlag.1 = INTEGER: noError(0) UCD-SNMP-MIB::dskErrorFlag.2 = INTEGER: noError(0) UCD-SNMP-MIB::dskErrorMsg.1 = STRING: UCD-SNMP-MIB::dskErrorMsg.2 = STRING: |
出力結果から
/ → UCD-SNMP-MIB::dskPercent.1
/boot → UCD-SNMP-MIB::dskPercent.2
を指定すればよいようです。ついでにOIDも調べておくことにします。(UCD-SNMP-MIB::dskPercent.1 で指定してもいいのだとは思いますが。)
# snmpwalk -On -v 1 -c test-ro localhost UCD-SNMP-MIB::dskPercent.1 .1.3.6.1.4.1.2021.9.1.9.1 = INTEGER: 5 # snmpwalk -On -v 1 -c test-ro localhost UCD-SNMP-MIB::dskPercent.2 .1.3.6.1.4.1.2021.9.1.9.2 = INTEGER: 8 |
2016/06/23 追記
OIDを調べるには snmptranslate ってコマンドがあるんですね。こんな感じ
# snmptranslate -On -Ir UCD-SNMP-MIB::dskPercent.1
.1.3.6.1.4.1.2021.9.1.9.1
直接 mrtg.cfg を編集してもよいのですが、エラーが発生することを考慮し test.cfg に記述→動作確認→問題が無ければ mrtg.cfg に反映させることにします。(## Disk Used ##以下になります。)
test.cfg 内容はこんな感じ。テスト機用に色々とMRTGの設定をする予定なので、ディレクトリはテスト機のホスト名 nmcet64を作成し、配下に disk とか cpu 等々を作成します。
HtmlDir: /var/www/mrtg ImageDir: /var/www/mrtg LogDir: /var/lib/mrtg ThreshDir: /var/lib/mrtg Options[_]: growright, bits ## Disk Used ## Target[disk]: .1.3.6.1.4.1.2021.9.1.9.1&.1.3.6.1.4.1.2021.9.1.9.2:test-ro@localhost Directory[disk]: nmcent64/disk MaxBytes[disk]: 100 Unscaled[disk]: dwmy Options[disk]: gauge, absolute, growright, noinfo, nopercent YLegend[disk]: Disk Used(%) ShortLegend[disk]: (%) LegendI[disk]: / Disk Used LegendO[disk]: /boot Disk Used Legend1[disk]: / Disk Used(%) Legend2[disk]: /boot Disk Used(%) Title[disk]: ディスク使用率 PageTop[disk]: <H1>nmcent64_ディスク使用率</H1> |
では 3回ほど動かしてみます。
# env LANG=C mrtg /etc/mrtg/test.cfg WARNING: /var/www/mrtg/disk/ did not exist I will create it now WARNING: /var/lib/mrtg/disk/ did not exist I will create it now 2016-06-17 15:17:26, Rateup WARNING: /usr/bin/rateup could not read the primary log file for disk 2016-06-17 15:17:26, Rateup WARNING: /usr/bin/rateup The backup log file for disk was invalid as well 2016-06-17 15:17:26, Rateup WARNING: /usr/bin/rateup Can't remove disk.old updating log file 2016-06-17 15:17:26, Rateup WARNING: /usr/bin/rateup Can't rename disk.log to disk.old updating log file # env LANG=C mrtg /etc/mrtg/test.cfg 2016-06-17 15:17:29, Rateup WARNING: /usr/bin/rateup Can't remove disk.old updating log file # env LANG=C mrtg /etc/mrtg/test.cfg
|
エラーは発生しませんでしたので、mrtg.cfg に設定を反映することにしました。
0 件のコメント:
コメントを投稿