New Relic のネットワーク監視では、SNMP データやネットワークフローデータ、ネットワーク syslog を受信し、可視化することが可能です。
ネットワーク監視エージェントには、コンテナ版と Linux 版の2種類が用意されています。ここでは Linux 版エージェントを用いた SNMP Trap の受信設定手順について、ご紹介します。
SNMP Linuxパッケージ版インストール手順
Linux 版エージェントの導入方法につきましては、別のブログ に詳しく記載されておりますので、こちらをご参照ください
(本稿では割愛させていただきます)
SNMP Trap 受信時の追加設定
Linux 版エージェントの導入を手順に沿って実施すると、設定したネットワークセグメントに対し SNMP によるポーリングをおこない、情報を収集しますが、監視対象のネットワーク機器からの SNMP Trap は受信しない設定になっています。
確認のために以下のコマンドを実行し、listen が off になっていることを確認します。
(イメージ内のオレンジ枠を参照)
$ ps ax | grep ktranslate
次に、Linux 版エージェント導入時に設定した snmp-base.yaml にある trap の listen 設定を確認します。
$ cat /etc/ktranslate/snmp-base.yaml
デフォルトでは 0.0.0.0:1620 となっています。
必要に応じて修正してください。
(ここでは 0.0.0.0:162 に編集して設定を進めています)
次に、ktranslate の起動スクリプトを修正します。
-listen の引数が off となっているところを、さきほど snmp-base.yaml で修正した "IPアドレス:ポート番号" に置き換えます。
$ sudo vi /lib/systemd/system/ktranslate.service
修正が終わりましたら、ktranslate を再起動します。
(下記は amazon linux での実行例です。Linux OS 環境に合わせてコマンドを適宜修正してください)
$ sudo systemctl daemon-reload
$ sudo systemctl restart ktranslate
$ sudo systemctl status ktranslate
ps コマンドや netstat コマンドにて、指定のIPアドレス:ポート番号で Listen しているか確認します。
$ ps ax | grep ktranslate
最後に、ネットワーク機器からLinuxエージェントを導入したサーバーに対して SNMP Trap を送信し、New Relic で受信できることを確認します。
ここではネットワーク機器の代わりに別のLinuxサーバーを用意し、snmptrap コマンドで trap を送信してテストしています。指定する snmp のバージョンやコミュニティ名、OID は必要に応じて変更してください。
※ snmptrap コマンドを利用するには、net-snmp-utils のインストールが必要です
$sudo snmptrap -v 2c -c public <Linux エージェント導入済サーバーのIPアドレス> '' .1.3.6.1.4.1.6876.4.3 .1.3.6.1.4.1.6876.4.3.308.0 i 2
実行後、New Relic にログインし、NRQL を実行して受信内容を確認します。
指定した OID に紐づく Trap Name が確認できます。
次のステップ
SNMP によるネットワーク機器等の監視をを今すぐ開始しませんか?まずは、New Relicに登録しましょう。無料アカウントには、毎月100GBの無料データ取り込み、1名の無料フルアクセスユーザー、および無制限の無料ベーシックユーザーが含まれます。
本ブログに掲載されている見解は著者に所属するものであり、必ずしも New Relic 株式会社の公式見解であるわけではありません。また、本ブログには、外部サイトにアクセスするリンクが含まれる場合があります。それらリンク先の内容について、New Relic がいかなる保証も提供することはありません。