スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

Nagiosでインタフェース監視

Nagiosで監視対象ノードのインタフェースLink状態を監視する


以前しれっとNagiosプラグインをインストールします。
なんて書いたけど、それだけではうまく行かないところに関していまさらながら補足。



check_ifstatusプラグインを利用すると、対象ノードのインタフェースのステータスを簡単に監視することができます。check_snmpで対象ノードのMIBを取得しても同じことができますが、より簡単にせって出来ます。
ただ、このプラグインは追加でNet-SNMPが必要となるため、そのままではエラーが出てしまいます。

ちなみに、NagiosプラグインをDLして解凍するとその中に「REQUIREMENTS」というファイルができるのですが,
そこにプラグインを追加するために必要となるモジュール/ソフトなどの条件が記載されています。

- 環境 -
 Ubuntu 12.04 Server
 Nagios 3.4.1
 NagiosPlugins 1.4.16
 NetSNMP 6.0.1





1.Net-SNMPをダウンロード・解凍
$wget http://cpan.perl.org/modules/by-authors/id/D/DT/DTOWN/Net-SNMP-v6.0.1.tar.gz
$tar xvf Net-SNMP-v6.0.1.tar.gz



2.Net−SNMPのインストール

Net-SNMPを解凍したディレクトリに移動します。
$cd Net-SNMP-v6.0.1

インストールを行います。
$sudo perl Makefile.PL
$sudo make test
$sudo make install


これで完了です。


check_ifstatusの利用方法は
/usr/local/nagios/libexec/check_ifstatus --help
と実行すると表示されます。


●設定例
具体的な例として次の例の設定の場合次のようになります。

 インタフェース監視対象
  ホスト名:SW-1
  コミュニティ名:public
  非監視インタフェース(のifindex):10111,10112

 ※ホスト設定、generic-service設定は省略。


command.cfg
define command{
command_name check_ifstatus
command_line $USER1$/check_ifstatus -H $HOSTADDRESS$ -C $ARG1$ -u $ARG2$
}

※ -C:コミュニティ名
  -u : 監視対象外のインタフェース(ifindex)


ホストまたはサービス設定ファイル
define service{
use generic-service
host_name SW-1
service_description Check I/F Link Status
check_command check_ifstatus!Public!10111,10112
notes_url /nagiosgraph/cgi-bin/show.cgi?host=$HOSTNAME$&service=$SERVICEDESC$
}



notes_urlに記載しているのは、nagiosgraphに保存したこのインタフェースのLink状態取得結果のグラフにLinkを
貼る目的です。必須ではありません。




●補足

スイッチのインタフェースを表す番号:ifindexを調べるためにはいくつか方法があります。
例えばCiscoスイッチなら
"show snmp mib ifmib ifindex"コマンドで調べることができます。
#show snmp mib ifmib ifindex 
GigabitEthernet0/41: Ifindex = 10141
GigabitEthernet0/14: Ifindex = 10114
GigabitEthernet0/43: Ifindex = 10143
GigabitEthernet0/16: Ifindex = 10116
GigabitEthernet0/34: Ifindex = 10134
(略)



その他、snmpwalkコマンドを使う
$snmpwalk -v 2c -c public 192.168.0.100  1.3.6.1.2.1.31.1.1.1.1
iso.3.6.1.2.1.31.1.1.1.1.1 = STRING: "Vl1"
iso.3.6.1.2.1.31.1.1.1.1.898 = STRING: "Vl898"
iso.3.6.1.2.1.31.1.1.1.1.2100 = STRING: "Vl2100"
iso.3.6.1.2.1.31.1.1.1.1.10101 = STRING: "Gi0/1"
iso.3.6.1.2.1.31.1.1.1.1.10102 = STRING: "Gi0/2"
iso.3.6.1.2.1.31.1.1.1.1.10103 = STRING: "Gi0/3"
iso.3.6.1.2.1.31.1.1.1.1.10104 = STRING: "Gi0/4"
iso.3.6.1.2.1.31.1.1.1.1.10105 = STRING: "Gi0/5"
iso.3.6.1.2.1.31.1.1.1.1.10106 = STRING: "Gi0/6"
iso.3.6.1.2.1.31.1.1.1.1.10107 = STRING: "Gi0/7"
iso.3.6.1.2.1.31.1.1.1.1.10108 = STRING: "Gi0/8"
(略)


あとは、対象機器のMIBを調べるなどですかね。

OIDがわからなければ強引な方法として
"$snmpwalk -v 2c -c public 192.168.0.100 . | grep Gigabit"
のように全OIDを検索して、Grepでそれっぽいキーワードを探し出すなどもありかもです。
スポンサーサイト

コメントの投稿

非公開コメント

プロフィール

Author:Opecha-DaDa
ニッチな技術メモ的なブログになりつつありますが、だからこそあなたのお役に立てる内容があれば幸いです。

最新記事
最新コメント
最新トラックバック
月別アーカイブ
カテゴリ
検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム

この人とブロともになる

QRコード
QR
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。