check_snmp_int.pl データを Graphite および JasperReports に提供できません

check_snmp_int.pl データを Graphite および JasperReports に提供できません

私は Icinga のまったくの初心者で、すでに解決策を見つけるために必死に何度か試みてきました。ようやく check_snmp_int.pl でパフォーマンス データを取得できるようになったので、このデータを JasperReports と Graphite に提供しようとしました。何時間も必死に Google 検索しましたが、答えは見つかりませんでした。check_snmp_int.pl がパフォーマンス チェックのデータを保存する場所が見つからないようです。

私が取り組んでいるのは: Ubuntu 14.04 Icinga2 バージョン:r2.5.4-1 IcingaWeb2 バージョン 2.3.4

プラグイン check_snmp_int.pl はすでにインストールされています。

object CheckCommand "check_snmp_int" {
    import "plugin-check-command"
    command = [PluginDir + "/check_snmp_int.pl"]
    arguments = {
            "-H" = "$snmp_address$"
            "-C" = "$snmp_community$"
            "-p" = "$snmp_port$"
            "-2" = {set_if = "$snmp_v2$"}
         "-o" = "$snmp_oid$"
            "-f" = {set_if = "$snmp_perf$"}
            "-w" = "$snmp_warn$"
            "-c" = "$snmp_crit$"
    }
}

これはプラグインを使用して実装したサービスです。

apply Service "bandbreitenueberwachung" {
    check(unknown) at 12:40 ..._int"
    check_interval = 5m
    assign where host.vars.os == "Switch"
}

要約:check_snmp_int.pl はデータをどこに保存し、どこからデータを取得して IcingaWeb で使用できるようにするのでしょうか。

ありがとう、デイビッド。

答え1

icinga2 構成では、パフォーマンス データをアクティブ化し、ブローカー (チェックによって送信されたパフォーマンス データを処理するソフト) を選択する必要があります。

icinga2.conf の例:

...
process_performance_data = 1
broker_module = "/usr/local/pnp4nagios/lib/npcdmod.o config_file=/usr/local/pnp4nagios/etc/npcd.cfg"
...

また、perf データを処理するソフトウェアをインストールする必要があります。perf データを保存するのは check_snmp_int.pl ではありません。次のように結果を送信するだけです。

チェックの結果|グラフ1=... グラフ2=...

例 :

 4 disks OK. Disk #1: ok, Disk #2: ok, Disk #3: ok, Disk #4: ok, |Disk #1=1 Disk #2=1 Disk #3=1 Disk #4=1

パイプの左側はサービスの応答であり、右側はグラフ ソフトでの処理に使用されます。

編集1:

pnp4nagios は Graphite で動作しますか? 動作するなら、どのように動作しますか?

私はグラファイトを使ったことはありませんが、ウェブ上のチュートリアルによると、pnp はグラファイトで動作するようです。

pnp4nagios は、応答のパイプの右側部分にあるチェックの結果から、icinga が perfdatas を送信するのを待機します。

そのためには、icinga の conf で perfdata をアクティブ化し、icinga2 に perfdata の処理に使用するブローカーを説明する必要があります。

pnp4nagios はデータを受信すると、デフォルトで に保存されるファイルに書き込みます/usr/local/pnp4nagios/var/perfdata/。ホストごとにディレクトリがあり、その中に各サービスごとに xml ファイルと rrd ファイルの 2 つのファイルがあります。

パフォーマンスデータを処理するためにどのソフトウェアをインストールする必要がありますか?

pnp4nagios はそのために作られました。

IDO2DB や FILE2SOCK のようなものを意味しますか?

IDO2DB または FILESOCK は、icinga2 がデータベースにデータを入力する方法です。

上記のサービスは現時点では機能しないので、これを書き直す方法をご存知ですか。デフォルトでは、スクリプトは上記の形式で結果を含む perfadtas を送信します。

check_snmp_int.pl をコンソールで直接テストし、パイプの後にデータがあるかどうかを確認できます。

さらに、icinga.conf で perfdata を有効にし、ブローカーを宣言する必要があります。

関連情報