0

私は2人のホストを持つnagiosを持っています。1つはlocalhost(10.10.62.5)で、もう1つはubuntu(10.10.62.10)です。ローカルホストにnagiosモニターを設定しました。

ホスト構成ファイルは以下のとおりです

localhost.cfg:

define host{
    use                     linux-server           
    host_name               localhost
    alias                   localhost
    address                 10.10.62.5
    }

define service{ 
host_name       localhost   
service_description WSN_COUNT   
is_volatile     1   
check_command       check-host-alive    
max_check_attempts  1
normal_check_interval   1
retry_check_interval    1
active_checks_enabled   0   
passive_checks_enabled  1   
check_period        24x7    
notification_interval   31536000    
notification_period 24x7    
notification_options    w,u,c   
notifications_enabled   1
 }

ubuntu.cfg:

define host{
  use    linux-server
  host_name ubuntu
  alias  ubuntu
  address    10.10.62.10
}
define service{ 
host_name    localhost  
service_description WSN_COUNT   
is_volatile  1  
check_command    check-host-alive   
max_check_attempts  1
normal_check_interval   1
retry_check_interval    1
active_checks_enabled   0   
passive_checks_enabled  1   
check_period     24x7   
notification_interval   31536000    
notification_period 24x7    
notification_options    w,u,c   
notifications_enabled   1
}

MIBファイル:

NAGIOS-TRAP-TEST-MIB DEFINITIONS ::= BEGIN
IMPORTS enterprises FROM SNMPv2-SMI;

nagiostests OBJECT IDENTIFIER ::= { enterprises 0 }
nagiostraps OBJECT IDENTIFIER ::= { nagiostests 1 }
nagiosnotifs OBJECT IDENTIFIER ::= { nagiostests 2 }

WSNcount NOTIFICATION-TYPE
        OBJECTS { sysLocation }
        STATUS current
        DESCRIPTION "SNMPv2c notification"
        ::= { nagiosnotifs 9 }
END

snmptt(net-snmp)を使用して、トラップをnagiosと統合しました。構成ファイルは

snmptt.conf.local:

    EVENT WSNcount .1.3.6.1.4.1.0.2.1 "Status Events" Normal
FORMAT SNMPv2c notification $*
EXEC /usr/local/nagios/libexec/eventhandlers/submit_check_result localhost WSN_COUNT 1 "SNMPv2c notification $*"
SDESC
SNMPv2c notification
Variables:
  1: sysLocation
EDESC

snmptt.conf.local:

    EVENT WSNcount .1.3.6.1.4.1.0.2.1 "Status Events" Normal
FORMAT SNMPv2c notification $*
EXEC /usr/local/nagios/libexec/eventhandlers/submit_check_result ubuntu WSN_COUNT 1 "SNMPv2c notification $*"
SDESC
SNMPv2c notification
Variables:
   1: sysLocation
EDESC

次のコマンドを使用してubuntu(10.10.62.10)マシンからトラップを送信する場合、nagiosの両方のホストにトラップ送信します。

    snmptrap -v 2c -c private 10.10.62.5 "" NAGIOS-TRAP-TEST-MIB::RFIDcount SNMPv2-MIB::sysLocation.0 s "snmptest trap"

特定のホストにトラップを送信するのを手伝ってください..それがどのように可能か...

4

1 に答える 1

1

SNMPトラップとは何かを誤解されたと思います。SNMPトラップは、ルーター、スイッチ、ブレード、クラスターなどのネットワークデバイスから監視システム/サービスに送信されるSNMPメッセージです。

監視したい特定のネットワークデバイスをMIBファイルで検索し、その特定のデバイスから収集したい情報と一致するOIDを検索することだと思います。

SNMPを介して監視するデバイスは、その構成(Webベースなど)でSNMPを有効にする必要があります。

このデバイスに対してSNMPwalkを実行して、使用可能なすべてのOIDを確認できます。

snmpwalk -v 2c -c public <ip address network device>

-cは「community」を表し、デフォルトでは「public」です。これは、ネットワークデバイスの構成で編集できます。

-vは、使用するSNMPのバージョンを表します。

探しているデバイスの情報を提供するOIDを見つけたら、次のコマンドを実行できます(または、これをperlまたはbashスクリプトに入れます)。

snmpwalk -v 2c -c public <ip address network device> <OID>

このスクリプトを作成したら、commands.cfgでこのスクリプトのコマンドを定義できます。

#'check_lefthand' command definition
define command{        
    command_name    check_lefthand  
    command_line    $USER1$/lefthands.pl $ARG1$ $ARG2$
    }

これで、Nagiosのサービス定義でこのcheck_を使用できます。

于 2013-04-30T12:31:31.627 に答える