0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

New Relic Network Performance MonitorでのICMP監視設定ガイド

Posted at

New Relic Network Performance MonitorでのICMP監視設定(snmp-base.yaml)ガイド

概要:New Relic Network Performance Monitorとは

New Relic Network Performance Monitor(NPM)は、アプリケーションやインフラストラクチャだけでなく、ネットワークレイヤのパフォーマンスも可視化し、システム全体の健全性や問題箇所の特定を支援するSaaS型の監視サービスです。SNMPやICMP、ネットワークフロー、Syslogなど多様なデータを一元的に収集・分析でき、ネットワークがシステムのボトルネックとなっているかどうかを迅速に判断できます。

SNMP監視とICMP監視

New RelicではSNMP監視とICMP監視が同じ機能のサブセットとして動作します。この記事ではSNMP監視ではなくICMP監視にフォーカスした内容を記載していますが、そもそものSNMP監視とICMP監視についての違いについてをまとめてみました。

SNMP監視

  • SNMP(Simple Network Management Protocol)は、ネットワーク機器の詳細なパフォーマンス情報(インターフェースごとのトラフィック量、CPU/メモリ使用率など)を取得できます。
  • SNMPv1/v2cはコミュニティストリングによる認証、SNMPv3はよりセキュアな認証・暗号化に対応しています。
  • SNMP監視には機器側でSNMPエージェントの有効化と適切なMIBプロファイルの設定が必要です。

ICMP監視

  • ICMP(Internet Control Message Protocol)は、主に「ping」によるラウンドトリップタイム(RTT)やパケットロスなど、シンプルな到達性・応答速度の監視に使います。
  • SNMPのような詳細なメトリクスは取得できませんが、ICMPのみで監視したい場合やSNMPが無効な機器にも利用できます。
  • ICMP監視はsnmp-base.yamlping_only: trueを指定することで有効化できます。

注意点

  • ping_only: trueの場合、SNMPによる監視は行われず、ICMPによるRTT・パケットロスのみが収集されます。
  • SNMPとICMPの両方を有効にしたい場合は、response_time: trueを利用します(この場合はSNMP監視+ICMP応答時間も取得)。

ICMP監視用snmp-base.yamlの設定

必要なパラメータと意味(表)

パラメータ名 必須 意味・用途
device_name デバイスの識別名
device_ip 監視対象デバイスのIPアドレス
provider New Relic上のエンティティ種別(例: kentik-ping)
ping_only ICMP監視のみを有効化(trueでSNMP無効)
user_tags 任意 任意のタグ情報(例: チーム名や用途など)

※SNMP関連(snmp_comm, oid, mib_profile等)はICMP監視のみの場合は不要。

サンプル:ICMP監視専用snmp-base.yaml

devices:
  ping_only_192.168.0.1:
    device_name: sample_device
    device_ip: 192.168.0.1
    provider: kentik-ping
    ping_only: true
    user_tags:
      owning_team: net_ops
      environment: production

global:
  poll_time_sec: 60
  response_time: true
  mibs_enabled: 
  timeout_ms: 3000
  retries: 0

この設定例では、192.0.2.100に対しICMP pingを実施し、RTTやパケットロスを監視します。

Dockerコンテナの起動方法

ICMP監視を行う場合も、Kentik社のktranslateコンテナを利用します。snmp-base.yamlをマウントし、必要な環境変数を指定して起動します。

docker run -d --name ktranslate-ping \
  --restart unless-stopped \
  --pull=always \
  -v `pwd`/snmp-base.yaml:/snmp-base.yaml \
  -e NEW_RELIC_API_KEY=<NewRelicのLICENSE_KEY> \
  kentik/ktranslate:v2 \
  -snmp /snmp-base.yaml \
  -nr_account_id=<NewRelicアカウントID> \
  -metrics=jchf \
  -tee_logs=true \
  -service_name=ktranslate-ping \
  nr1.snmp

SNMP関連の環境変数やオプションはICMP監視のみの場合は不要です。

まとめ

  • New Relic NPMはネットワークの可視化・監視を強力にサポートし、ICMP監視を使えばSNMP非対応機器や到達性だけを監視したいケースにも柔軟に対応できます。
  • snmp-base.yamlping_only: trueを設定し、必要なパラメータのみ記載すればシンプルにICMP監視が実現できます。
  • Dockerコンテナによる導入も容易で、既存の監視基盤に追加しやすいのも大きなメリットです。

おまけ

ICMP監視設定用のsnmp-base.yamlファイルを簡単に作成するためのツールを作成してみました。よかったら使ってみてください。

※当ツールは個人開発の位置づけで作成したものになるため、動作保証は一切行いません。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?