GNU/Linux >> Linux の 問題 >  >> Linux

Nagios を使用してネットワーク スイッチとポートを監視する方法

Nagios は、ホストとネットワーク機器を監視するのに最適な監視ツールです。 Nagios プラグインを使用すると、ほぼすべてを監視できます。

Nagios を集中的に使用していますが、問題が発生したときに携帯電話にアラートが表示されるので安心です。さらに、警告レベルが適切に設定されていれば、Nagios は問題が重大になる前に警告を発します.

以前、Nagios をセットアップして Linux ホスト、Windows ホスト、VPN デバイスを監視する方法について書きました.

この記事では、ネットワーク スイッチを監視するように Nagios を構成する方法を説明します。 アクティブなポートです .

1. nagios.cfg で switch.cfg を有効にします

以下に示すように、/usr/local/nagios/etc/nagios.cfg の switch.cfg 行のコメントを外します。

[nagios-server]# grep switch.cfg /usr/local/nagios/etc/nagios.cfg
cfg_file=/usr/local/nagios/etc/objects/switch.cfg

2. switch.cfg にスイッチ用の新しいホストグループを追加

次のスイッチ ホストグループを /usr/local/nagios/etc/objects/switch.cfg ファイルに追加します。

define hostgroup{
hostgroup_name  switches
alias           Network Switches
}

3.監視するスイッチの新しいホストを追加します

この例では、/usr/local/nagios/etc/objects/switch.cfg ファイルでコア スイッチを監視するホストを定義しました。それに応じて、アドレス ディレクティブをスイッチの ip-address に変更してください。

define host{
use             generic-switch
host_name       core-switch
alias           Cisco Core Switch
address         192.168.1.50
hostgroups      switches
}

4.すべてのスイッチに共通のサービスを追加

スイッチの稼働時間の表示と、スイッチが生きているかどうかの確認は、すべてのスイッチに共通のサービスです。したがって、以下に示すように、スイッチ hostgroup_name の下でこれらのサービスを定義してください。

# Service definition to ping the switch using check_ping
define service{
use                     generic-service
hostgroup_name          switches
service_description     PING
check_command           check_ping!200.0,20%!600.0,60%
normal_check_interval   5
retry_check_interval    1
}

# Service definition to monitor switch uptime using check_snmp
define service{
use                     generic-service
hostgroup_name          switches
service_description     Uptime
check_command           check_snmp!-C public -o sysUpTime.0
}

5.ポート帯域幅の使用状況を監視するサービスを追加

check_local_mrtgtraf は、Multil Router Traffic Grapher – MRTG を使用します。したがって、これが正しく機能するためには MRTG をインストールする必要があります。下記の *.log ファイルは、システム上の MRTG ログ ファイルを指している必要があります。

define service{
use			        generic-service
host_name			core-switch
service_description	Port 1 Bandwidth Usage
check_command		check_local_mrtgtraf!/var/lib/mrtg/192.168.1.11_1.log!AVG!1000000,2000000!5000000,5000000!10
}

6.アクティブなスイッチ ポートを監視するサービスを追加

以下に示すように、check_snmp を使用して特定のポートを監視します。次の 2 つのサービスは、ポート #1 とポート #5 を監視します。ポートを追加するには、それに応じて値 ifOperStatus.n を変更します。つまり、n はポート番号を定義します。

# Monitor status of port number 1 on the Cisco core switch
define service{
use                  generic-service
host_name            core-switch
service_description  Port 1 Link Status
check_command        check_snmp!-C public -o ifOperStatus.1 -r 1 -m RFC1213-MIB
}

# Monitor status of port number 5 on the Cisco core switch
define service{
use                  generic-service
host_name            core-switch
service_description  Port 5 Link Status
check_command	       check_snmp!-C public -o ifOperStatus.5 -r 1 -m RFC1213-MIB
}

7.サービスを追加して複数のスイッチ ポートを一緒に監視する

複数のポートを組み合わせてステータスを監視する必要がある場合があります。つまり、ポートの 1 つがダウンしていても、Nagios はアラートを送信する必要があります。この場合、次のサービスを定義して、複数のポートを監視します。

# Monitor ports 1 - 6 on the Cisco core switch.
define service{
use                   generic-service
host_name             core-switch
service_description   Ports 1-6 Link Status
check_command         check_snmp!-C public -o ifOperStatus.1 -r 1 -m RFC1213-MIB, -o ifOperStatus.2 -r 1 -m RFC1213-MIB, -o ifOperStatus.3 -r 1 -m RFC1213-MIB, -o ifOperStatus.4 -r 1 -m RFC1213-MIB, -o ifOperStatus.5 -r 1 -m RFC1213-MIB, -o ifOperStatus.6 -r 1 -m RFC1213-MIB
}

8.構成を検証し、nagios を再起動します

nagios の設定を確認して、警告やエラーがないことを確認してください。

# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

Total Warnings: 0
Total Errors:   0
Things look okay - No serious problems were detected during the pre-flight check

nagios サーバーを再起動して、VPN デバイスの監視を開始します。

# /etc/rc.d/init.d/nagios stop
Stopping nagios: .done.

# /etc/rc.d/init.d/nagios start
Starting nagios: done.

以下に示すように、Nagios Web UI:http://{nagios-server}/nagios からスイッチのステータスを確認します。

:ネットワーク スイッチのステータスを表示する Nagios GUI

 

9.トラブルシューティング

問題 1: Nagios GUI が「check_mrtgtraf:MRTG ログ ファイルを開くことができません」というエラー メッセージを表示し、ポート帯域幅の使用状況を示します

解決策 1: check_local_mrtgtraf サービスで定義された *.log ファイルが正しい場所を指していることを確認してください。

問題 2 :Nagios UI は、ポート リンク ステータスのエラー メッセージ「127 の戻りコードが範囲外です – プラグインが見つからない可能性があります」を表示します。

解決策 2 :net-snmp と net-snmp-util パッケージの両方がインストールされていることを確認してください。私の場合、net-snmp-utils パッケージが不足していたため、インストールすると、以下に示すようにこの問題が解決しました。

[nagios-server]# rpm -qa | grep net-snmp
net-snmp-libs-5.1.2-11.el4_6.11.2
net-snmp-5.1.2-11.el4_6.11.2

[nagios-server]# rpm -ivh net-snmp-utils-5.1.2-11.EL4.10.i386.rpm
Preparing...       ########################################### [100%]
1:net-snmp-utils   ########################################### [100%]

[nagios-server]# rpm -qa | grep net-snmp
net-snmp-libs-5.1.2-11.el4_6.11.2
net-snmp-5.1.2-11.el4_6.11.2
net-snmp-utils-5.1.2-11.EL4.10

注: net-snmp と net-snmp-utils をインストールしたら、「6. Nagios 3.0 ジャンプスタート ガイドの「nagios プラグインをコンパイルしてインストールする」

2 つの最高の Nagios ブック

これらは 2 つの 最高の nagios の本です これは最新の Nagios 3 をカバーしています。Nagios の詳細な理解を得るために、これらの本を両方とも読むことを強くお勧めします。 Nagios はフリー ソフトウェアであるため、書籍に数ドルを費やすことが、できる最善の投資になる可能性があります。

すばらしい Nagios の記事

以下は素晴らしい Nagios の記事です。

  • Linux で Nagios を使用してリモート Windows マシンを監視する方法
  • Nagios 3 を使用してリモート Linux ホストを監視する方法
  • Linux 用 Nagios 3 ジャンプスタート ガイド – 概要、インストール、構成

Linux
  1. IPtablesを使用してUbuntuとCentOSでポートを開く方法

  2. Nagios4をインストールしてUbuntu20.04でサーバーを監視する方法

  3. vnStat を使用して Linux でネットワーク トラフィックを監視およびログに記録する方法

  1. Linux で Nagios を使用してリモート Windows マシンを監視する方法

  2. CentOS / RHEL :iptables を使用して受信ポートと送信ポートをブロックする方法

  3. vnStat を使用して Linux でネットワーク トラフィックを監視する方法

  1. CloudStatsを使用してLinuxサーバーを監視する方法

  2. Debian9でNagiosNRPEを使用してホストを監視する方法

  3. Nagios を使用して VPN アクティブ セッションと温度を監視する方法