SNMPTRAPの受信設定
はじめして。
ZABBIXを使用して、ネットワーク機器からのSNMPTRAP監視をしたく思っています。
フォラームやマニュアルを参考に設定してみましたが、ZABBIXのイベントとして出力されません。
環境:
ZABBIX V1.5.3 ※--with-net-snmpオプションでconfigure
・ZABBIXサーバーポート:10051
・ZABBIXエージェントポート:10050
NET-SNMP V5.1.2
設定:
1.snmptrapd.confの設定
authCommunity log,execute,net XXXX <-- コミュニティ名に変更
traphandle default /bin/bash /home/zabbix/bin/snmptrap.sh <-- 追加
2.snmptrap.shの設定
ZABBIX_SERVER="X.X.X.X"; <-- ZABBIXサーバーのアドレス
ZABBIX_PORT="10051"; <-- ZABBIXサーバーの番号
ZABBIX_SENDER="/usr/local/sbin/zabbix_sender";<-- パス
KEY="snmptraps";<-- ZABBIXフロントエンドで登録したアイテム名
HOST="snmpTraps";HOSTZABBIXフロントエンドで登録したホスト名
(中略)
$ZABBIX_SENDER -z $ZABBIX_SERVER -p $ZABBIX_PORT -s $HOST -k $KEY -o $str <-- オプション「-zpsko」追加
3.ZABBIXの設定
[Configuration]-[Hosts]-[Create Host]
Name:snmpTraps
IP Address:X.X.X.X <-- ZABBIXサーバのアドレス
Port:10050 <-- ZABBIXエージェントのポート
Status:Monitored
[Configuration]-[Items]-[Create Item]
Desctiption:snmptrap
Type:ZABBIX trapper
key:snmptraps
Type:文字列
Status:Monitored
Allowed hosts:空白
上記で設定しましたが値をうまく取得できないようです。
ちなみに、zabbix_senderに引数を与えて直接実行したところ、正常に処理を終了したというメッセージが標準出力に表示されましたが、ZABBIXのイベント、zabbix_server.logは更新されませんでした。
また、Zabbixサーバーは自分自身もエージェントとして監視しており、Zabbixサーバー自身のエージェント用にsnmpTrapsとは別のホスト名が同一IPアドレスとポート番号で定義されています。これが、なにか悪さをしているのでしょうか?
お手数ですが、設定の不備等ご教授願います。
kodai - 投稿数: 1341
こんにちは。
ひとつ確認したいのですが、ZABBIXサーバが動作しているサーバ上で、snmptrapdは動作しているでしょうか?
同一IPのホストが複数設定されていることは問題にならないはずですが、念のためIPアドレスを0.0.0.0など他のものに変えてみてはどうでしょうか。
cinnamon - 投稿数: 18
Kidaiさん
返信ありがとうございます。
snmptrapdデーモンは動作しています。
試しに、snmptrapコマンドをローカルで実行したところ、/var/log/messagesにはログされました。
snmpTrapsを削除、ZABBIXサーバのホスト定義(ホスト名以外はsnmpTrapsと同じ)にアイテムを追加、snmptrap.shのHOSTも修正し、テストしましたがだめでした。
その他、見るべき個所はございますでしょうか?
kodai - 投稿数: 1341
ZABBIX 1.5.3で試してみました。結論としては、zabbix_senderコマンドに引数を与えてZABBIXサーバにデータが送られるところまでは確認できました。
設定は以下のように行っています。まずはZABBIXサーバが動作しているサーバ上でzabbix_senderコマンドを直接実行し、ZABBIXサーバにデータが正常に送られるところまでを確認してみてください。
1. Webインターフェースからの設定
[Configuration] -> [Hosts] -> [Create Host]をクリックし、以下の情報を入力してSave(下記以外の設定はデフォルトのまま)
Name: snmptraps
DNS name: 空白
IP address: 0.0.0.0
Connect to: IP address
Port: 10050
2. アイテムの登録
[Configuration] -> [Items] をクリック、Hostドロップダウンから「snmptraps」を選択して[Create Item]をクリックし、以下の情報を入力してSave(下記以外の設定はデフォルトのまま)
Description: snmptraps
Type: ZABBIX Trapper
Key: snmptraps
Type of information: Character
3. ZABBIXサーバがインストールされているホストで、以下のコマンドを実行
# zabbix_sender -z localhost -p 10051 -s snmptraps -k snmptraps -o "Test Message"
4. データ受信の確認
[Monitoring] -> [Latest Data]からデータが正常に受信できているかどうか確認する