Muninで監視する場合、監視対象にmunin-nodeをインストールするのが一般的です。
しかし、ルータやFW、スイッチ等munin-nodeをインストール出来ない機器に対してはsnmpを使った監視が可能です。ネット上にある情報ではうまくいかなかったので、備忘録として書いておくことにします。
サマリー
・/etc/munin/plugins に、SNMP接続用のシンボリックリンクを作成する。
・/etc/munin/plugin-conf.d/munin-node を編集する。
・/etc/munin/munin.conf を編集する。
・/etc/init.d/munin-node restart
・グラフが更新されるのを待つ。
/etc/munin/plugins に、シンボリック・リンクを作成する
http://munin-monitoring.org/wiki/SNMP
上記URLに記載されている方法ではDebian機の場合うまく動きません。
# man munin-node-configure すればすぐに解るのですが…
例) ホスト名:rtx1100, snmpコミュニティ名:public, snmp version:1
# munin-node-configure --snmp rtx1100 --snmpversion 1 --snmpcommunity public
※ホスト名はDNS又はhostsで名前解決出来るようにしておきます。
環境によってはFQDNで書く必要があるかもしれません。
※snmpversionが1でうまく動かない場合には、2cと指定すると幸せになれるかもしれません。
これでsnmpで拾える項目が解ります。
次に、/etc/munin/plugins に、SNMP接続用のシンボリック・リンクを作成するには、まず…
# munin-node-configure --snmp rtx1100 --snmpversion 1 --snmpcommunity public --shell
で、シェルコマンドが表示されます。
※まだ実際にシンボリック・リンクは作成されていません。
確認できたら、実際にシェルにパラメータを渡します。
# munin-node-configure --snmp rtx1100 --snmpversion 1 --snmpcommunity public --shell | sh
# ls -alh /etc/munin/plugins で、シンボリック・リンクが出来上がっているか確かめましょう。
※ここでいらない項目があれば、シンボリック・リンクを削除しておきます。
/etc/munin/plugin-conf.d/munin-node を編集する
[snmp_rtx1100_*]
env.community public
env.version 1
を追加します。
※1でsnmpversionを2cにした場合には、このenv.versionを2に設定します(注:ここでは2cとは書かない)。
/etc/munin/munin.conf を編集する
[rtx1100]
address 192.168.0.xxx
use_node_name no
※addressは必ずMuninが稼働しているマシンのIPアドレスを設定します。監視対象のアドレスではありません。
またuse_node_nameはnoにすること! yesにすると監視対象ではなく、自マシンのホスト名が表示されます。
/etc/init.d/munin-node restart
グラフが更新されるのを待つ
# sudo -u munin /usr/bin/munin-cron
上記コマンドですぐにグラフは更新されますが、5分毎に自動的にMuninが走っているので、その合間に実行しないとLockファイルのせいで途中でおちます。もちろん、急いでグラフを更新する必要はないので、数時間待つのが良いかもしれません。