SNMPを使用して、データ転送量をNagiosで監視します。
Net-SNMPの使い方は、若干複雑なのですが、最低限の設定で利用できるように解説しました。
環境は、Amazon Linux AMI 2015.03 (HVM) - ami-cbf90ecbです。
Net-SNMPを準備
net-snmpをインストール
# yum -y install net-snmp net-snmp-utils # chkconfig snmpd onsnmpdの設定ファイルを編集
# emacs /etc/snmp/snmpd.conf # Make at least snmpwalk -v 1 localhost -c public system fast again. # name incl/excl subtree mask(optional) #view systemview included .1.3.6.1.2.1.1 #view systemview included .1.3.6.1.2.1.25.1.1 view all included .1 80 #### # Finally, grant the group read-only access to the systemview view. # group context sec.model sec.level prefix read write notif #access notConfigGroup "" any noauth exact systemview none none access notConfigGroup "" any noauth exact all none nonesnmpdをリスタート
# service snmpd restartインタフェース名一覧を表示
# snmpwalk -v 1 -c public localhost ifDescr IF-MIB::ifDescr.1 = STRING: lo IF-MIB::ifDescr.2 = STRING: eth0eth0のインデックス番号は「2」であることが分かります。eth0に関して調べるときには、この番号を使います。
送受信オクテット累積数を確認してみます。
IF-MIB::ifInOctets.1がlo、IF-MIB::ifInOctets.2がeth0です。
bpsとして見るには、取得した値の差 × 8 ÷ 取得間隔(秒)というように計算します。
受信オクテット累積数
# snmpwalk -v 1 -c public localhost ifInOctets IF-MIB::ifInOctets.1 = Counter32: 3755493095 IF-MIB::ifInOctets.2 = Counter32: 541310019送信オクテット累積数
# snmpwalk -v 1 -c public localhost ifOutOctets IF-MIB::ifOutOctets.1 = Counter32: 3757407963 IF-MIB::ifOutOctets.2 = Counter32: 361982746Net-SNMPの準備が出来ました。
check_snmpを実行
check_snmpプラグインを使ってみます。
nagios-nrpeとcheck_snmpプラグインがない場合は、インストールしておきます。
# yum -y install nagios-nrpe # yum -y install nagios-plugins-allcheck_snmpプラグインにパラメータを設定して実行。 受信と送信の2つを設定します。IF-MIB::ifHCInOctets.2とIF-MIB::ifHCOutOctets.2です。
警告50MBps、クリティカル100MBpsです。
受信
# /usr/lib64/nagios/plugins/check_snmp community -H 127.0.0.1 -C public -P 2c -o IF-MIB::ifHCInOctets.2 -w 52428800 -c 104857600 --rate --rate-multiplier 8 -u "bps in."送信
# /usr/lib64/nagios/plugins/check_snmp community -H 127.0.0.1 -C public -P 2c -o IF-MIB::ifHCOutOctets.2 -w 52428800 -c 104857600 --rate --rate-multiplier 8 -u "bps out."初回実行時には情報の記録のため以下の出力になります。
No previous data to calculate rate - assume okay2回目移行から以下のように情報が表示されます。
SNMP RATE OK - 74733.6 bps in | IF-MIB::ifHCInOctets.2=74733.6check_snmpプラグインの動作に問題がなかったら、nagios(nrpe)のために一時ファイルのパーミッションを設定しておきましょう。
# chown nrpe:nrpe /var/check_snmpあとは、Nagiosに組み込んでおけばOKです。
参考資料
Monitoring Routers and Switches
http://nagios.sourceforge.net/docs/3_0/monitoring-routers.html
snmpd 設定方法
http://changineer.info/server/monitoring/monitoring_snmpd.html
net-snmpの設定 - Qiita
http://qiita.com/toshiro3/items/e8f87da88cd383a6421d
CentOSでNet-SNMPインストールと設定 | GOISBLOG
https://genchan.net/server/4393
Nagiosでサーバのトラフィック監視を行う方法 – Jラボ « Jラボ
http://junrei.dip.jp/wordpress/nagios/nagios%E3%81%A7%E3%82%B5%E3%83%BC%E3%83%90%E3%81%AE%E3%83%88%E3%83%A9%E3%83%95%E3%82%A3%E3%83%83%E3%82%AF%E7%9B%A3%E8%A6%96%E3%82%92%E8%A1%8C%E3%81%86%E6%96%B9%E6%B3%95/
Nagiosでトラフィックグラフを作成/監視 check_snmp | ITオフィスサポートとシステム開発|システムガーディアン 東京都中央区八丁堀
http://sys-guard.com/nagios%E3%81%A7%E3%83%88%E3%83%A9%E3%83%95%E3%82%A3%E3%83%83%E3%82%AF%E3%82%B0%E3%83%A9%E3%83%95%E3%82%92%E4%BD%9C%E6%88%90%E7%9B%A3%E8%A6%96-check_snmp/
Nagiosのcheck_snmpプラグインの --rate オプションを試す - blog.nomadscafe.jp
http://blog.nomadscafe.jp/2013/02/nagioscheck-snmp---rate.html