新規システムを作ったので、それに合わせてかれこれ5~6年ぶり位にmuninのインストールを。
サーバーはCentOS6.*。
1)rrdtoolのアップデート
デフォルトリポジトリ(base)のrrdtoolは1.3.8、対してmuninで要求されるバージョンは1.4.5。
これはrpmforgeのextraで取得できるが、アップデートの際はbaseを見に行ってしまうため
オプションを追加してrpmforge-extrasのリポジトリを有効、baseを一時的に無効にしてあげ必要がある。
- 新規インストールの場合
# yum --enablerepo=rpmforge-extras --disablerepo=base install rrdtool
- アップデートの場合
# yum --enablerepo=rpmforge-extras --disablerepo=base update rrdtool
2)muninインストール
例によって関連パッケージがうじゃうじゃ。
# yum install munin munin-node Dependencies Resolved ============================================================================================================================================================== Package Arch Version Repository Size ============================================================================================================================================================== Installing: munin noarch 1.4.6-4.el6.2 epel 122 k munin-node noarch 1.4.6-4.el6.2 epel 372 k Installing for dependencies: munin-common noarch 1.4.6-4.el6.2 epel 68 k perl-Email-Date-Format noarch 1.002-5.el6 base 16 k perl-HTML-Template noarch 2.9-10.el6 epel 70 k perl-Log-Dispatch noarch 2.27-1.el6 epel 71 k perl-Log-Dispatch-FileRotate noarch 1.19-4.el6 epel 24 k perl-Log-Log4perl noarch 1.30-1.el6 epel 392 k perl-MIME-Lite noarch 3.027-2.el6 base 82 k perl-MIME-Types noarch 1.28-2.el6 base 32 k perl-Mail-Sender noarch 0.8.16-3.el6 epel 54 k perl-Mail-Sendmail noarch 0.79-12.el6 epel 28 k perl-Net-Server noarch 0.99-1.el6.rf rpmforge 171 k perl-Params-Validate i686 0.92-3.el6 base 75 k perl-XML-DOM noarch 1.44-7.el6 base 136 k perl-XML-RegExp noarch 0.03-7.el6 base 9.8 k Transaction Summary ============================================================================================================================================================== Install 16 Package(s) Total download size: 1.7 M Installed size: 4.1 M Is this ok [y/N]:
3)SNMP経由でWindowsサーバーの監視を設定
munin-node-configureを実行して、設定可能かどうかをチェックし、つづけてプラグインに対するシンボリックリンクを作成する。
- 参考:お世話になっております!
- Using SNMP plugins
http://munin-monitoring.org/wiki/Using_SNMP_plugins - Work in progress
http://munin-monitoring.org/wiki/munin-node-configure
- Using SNMP plugins
1)/etc/hosts
→ホスト名と対応するIPを設定。
- 設定例
192.168.100.254 HOGEHOGE
2)/etc/munin/munin.conf
→対象ホストの設定を記述。
- 設定例
[HOGEHOGE]address 127.0.0.1 ←監視サーバーのIPを設定(監視対象サーバーのIPではないので注意) use_node_name no
3)取得可能リソースのチェック
コマンド"munin-node-configure"を使って、取得可能リソースと対応するプラグインを確認
- 書式例
# munin-node-configure --snmp <ホスト名> --snmpversion snmpv<バージョン> --snmpcommunity <コミュニティ名> --suggest
- 実行例
# munin-node-configure --snmp HOGEHOGE --snmpversion snmpv1 --snmpcommunity public --suggest Plugin | Used | Suggestions ------ | ---- | ----------- snmp__cpuload | no | yes (+192.168.100.254) snmp__df | no | yes (+192.168.100.254) snmp__df_ram | no | yes (+192.168.100.254) snmp__fc_if_ | no | no snmp__fc_if_err_ | no | no snmp__if_ | no | yes (+192.168.100.254/1 +192.168.100.254/2 +192.168.100.254/3) snmp__if_err_ | no | yes (+192.168.100.254/1 +192.168.100.254/2 +192.168.100.254/3) snmp__if_multi | no | yes (+192.168.100.254) snmp__load | no | no snmp__memory | no | yes (+192.168.100.254) snmp__netapp_diskusage_ | no | no snmp__netapp_inodeusage_ | no | no snmp__netstat | no | yes (+192.168.100.254) snmp__print_pages | no | no snmp__print_supplies | no | no snmp__processes | no | yes (+192.168.100.254) snmp__rdp_users | no | yes (+192.168.100.254) snmp__sensors_fsc_bx_fan | no | no snmp__sensors_fsc_bx_temp | no | no snmp__sensors_fsc_fan | no | no snmp__sensors_fsc_temp | no | no snmp__sensors_mbm_fan | no | no snmp__sensors_mbm_temp | no | no snmp__sensors_mbm_volt | no | no snmp__swap | no | yes (+192.168.100.254) snmp__uptime | no | yes (+192.168.100.254) snmp__users | no | yes (+192.168.100.254) snmp__winload | no | yes (+192.168.100.254) snmp__winmem | no | yes (+192.168.100.254)
上記の出力結果のうち、"Suggestions"でyesのものはステータス取得が可能。
)シンボリックリンク作成
プラグインへのリンクを作成する場合は、munin-node-configureにオプション"–shell"をつけると作成可能なリンクコマンドが出力される。
# munin-node-configure --shell --snmp HOGEHOGE --snmpversion snmpv1 --snmpcommunity public --suggest ln -s '/usr/share/munin/plugins/snmp__cpuload' '/etc/munin/plugins/snmp_HOGEHOGE_cpuload' ln -s '/usr/share/munin/plugins/snmp__df' '/etc/munin/plugins/snmp_HOGEHOGE_df' ln -s '/usr/share/munin/plugins/snmp__df_ram' '/etc/munin/plugins/snmp_HOGEHOGE_df_ram' ln -s '/usr/share/munin/plugins/snmp__if_' '/etc/munin/plugins/snmp_HOGEHOGE_if_1' ln -s '/usr/share/munin/plugins/snmp__if_' '/etc/munin/plugins/snmp_HOGEHOGE_if_2' ln -s '/usr/share/munin/plugins/snmp__if_' '/etc/munin/plugins/snmp_HOGEHOGE_if_3' ln -s '/usr/share/munin/plugins/snmp__if_err_' '/etc/munin/plugins/snmp_HOGEHOGE_if_err_1' ln -s '/usr/share/munin/plugins/snmp__if_err_' '/etc/munin/plugins/snmp_HOGEHOGE_if_err_2' ln -s '/usr/share/munin/plugins/snmp__if_err_' '/etc/munin/plugins/snmp_HOGEHOGE_if_err_3' ln -s '/usr/share/munin/plugins/snmp__if_multi' '/etc/munin/plugins/snmp_HOGEHOGE_if_multi' ln -s '/usr/share/munin/plugins/snmp__memory' '/etc/munin/plugins/snmp_HOGEHOGE_memory' ln -s '/usr/share/munin/plugins/snmp__netstat' '/etc/munin/plugins/snmp_HOGEHOGE_netstat' ln -s '/usr/share/munin/plugins/snmp__processes' '/etc/munin/plugins/snmp_HOGEHOGE_processes' ln -s '/usr/share/munin/plugins/snmp__rdp_users' '/etc/munin/plugins/snmp_HOGEHOGE_rdp_users' ln -s '/usr/share/munin/plugins/snmp__swap' '/etc/munin/plugins/snmp_HOGEHOGE_swap' ln -s '/usr/share/munin/plugins/snmp__uptime' '/etc/munin/plugins/snmp_HOGEHOGE_uptime' ln -s '/usr/share/munin/plugins/snmp__users' '/etc/munin/plugins/snmp_HOGEHOGE_users' ln -s '/usr/share/munin/plugins/snmp__winload' '/etc/munin/plugins/snmp_HOGEHOGE_winload' ln -s '/usr/share/munin/plugins/snmp__winmem' '/etc/munin/plugins/snmp_HOGEHOGE_winmem'
上記のコマンドを実行して監視を開始する。
- [手抜き技]
作成するシンボリックリンクが多い場合はテキストに落として、read LINEするなどで。# munin-node-configure --shell --snmp HOGEHOGE --snmpversion snmpv1 --snmpcommunity public --suggest > /var/tmp/slink.txt # while read line; do $line ; done < /var/tmp/slink.txt
→実行後、/etc/munin/plugins/以下にシンボリックリンクが作成されていることを確認する。
5)munin-node登録
設定ファイル:/etc/munin/plugin-conf.d/munin-node
- 設定内容
上記で登録したシンボリックリンク先のプラグインを実行する設定。
シンボリックリンクの"snmp_HOGEHOGE_"以下をアスタリスクで指定してすべて対象にしておく。
そのほか実行時に使用するSNMPのバージョンとコミュニティを指定。 - 設定例
[snmp_HOGEHOGE_*] env.version 1 env.community public
6)munin-nodeの再起動
# /etc/init.d/munin-node restart
tip:munin-updateのデバッグモード
munin-updateの動作チェック用に。
muninユーザーにsu – してから実施する。
# su - munin --shell=/bin/bash -bash-4.1$ /usr/share/munin/munin-update --nofork --debug