nagiosパッシブ検出


最近nagiosが自発的に検出するのに悪いところがあることを発見しました.権限の問題で、制御しにくいので、毎回設定しすぎなければなりません.また、バックアップが成功したかどうかを見たいなど、アクティブな検出では悪い点がたくさんあります.このとき受動検出が役に立ち、
パッシブ検出は、ディスクの読み取り専用を監視したり、バックアップに成功したかどうかを監視したりするのに便利です.実は受動検出は自分でプラグインを書く最善の方法であり、すべての監視方式は受動検出を使用し、配置が最も便利であるべきだ.
1:まず前のパッシブ検出のスクリプト、nagiosこちらをパッシブ検出と呼びます.実は監視されている機械では自発的に情報を報告するべきです
#!/bin/sh
Host=192.168.0.2
Check_Desc="Check Disk Read Only"
OK=0
CRITICAL=2
houzhui=`date "+%Y%m%d"`
df -h|awk '{print $NF}'|grep '^/'|sort -u|while read line;do
    echo "nagios_test" > ${line}/nagios_test_${houzhui}
    if [ $? -ne 0 ];then
        echo "${Host};${Check_Desc};${CRITICAL};CRITICAL. ${line} read only|result=-1"|send_nsca -H 192.168.0.1 -d ";" -c /etc/nagios/send_nsca.cfg
        exit 1
    fi
    rm ${line}/nagios_test_${houzhui}
done
if [ $? -eq 0 ];then
    echo "${Host};${Check_Desc};${OK};OK. all disk is checked ok |result=0"|send_nsca -H 192.168.0.1 -d ";" -c /etc/nagios/send_nsca.cfg
fi
  • ここではnagiosのipが192.168.0.1であると仮定する.監視されている機器のipは192.168.0.2です.
  • 受動検出の場合、被監視機器がnagiosに報告する必要がある内容は、ホスト名、監視項目名、4つの戻り値、nagiosページに表示される情報である.
  • ホスト名:類似192.168.0.2,web_0_2.モニタ名:check_disk_read_only,check backup mysql.4つの戻り値:OK(0)、WARNING(1)、CRITICAL(2)、UNKNOWN(3).出力情報:入力をカスタマイズします.
  • send_を使用nsca送信情報send_nscaはepelソースを使用してnsca-clientをインストールできます.yum install epel-release -y . yum install nsca-client -y.構成は/etc/nagios/send_を変更するだけですnsca.confのpassword
  • 2:nagiosモニタ側のnscaプロファイルで、サーバのipとリスニングのポートを構成する必要があります(デフォルト5667).一度だけ構成する必要があります
        server_port=5667
        server_address=192.168.0.1
        password=xxxx  ; 上のpassword構成に対応します.さもないと情報が受信できません.
        /etc/init.d/nsca restart nscaサービス開始
    3:nagiosモニタ側のコマンド構成は、一度だけ構成する必要があります.
        define command {
                command_name                    check_dummy
                command_line                    $USER1$/check_dummy $ARG1$
        }
    4:nagios検出項目の構成
        define service{
                use passive-web-service
                host_name 192.168.0.2
                service_description Check Disk Read Only
                check_command check_dummy
        }
  • host_nameは最初に言った${Host}と一致しなければならない.service_descriptionは最初に言った${Check_Desc}と一致しなければならない.
  • check_dummyは今個人的に理解して解析に使うべきで、ホームページに現れています.

  • 5:nagiosテンプレートのプロファイルは次のとおりです.
        define service{
                name                            passive-web-service
                active_checks_enabled           0
                passive_checks_enabled          1
                parallelize_check               1
                obsess_over_service             1
                check_freshness                 1     ;情報が受信されていない場合、サービス側はアクティブにリフレッシュします.
                freshness_threshold             120    ; 120 s後にアクティブにリフレッシュしました.
                notifications_enabled           1
                event_handler_enabled           1
                flap_detection_enabled          1
                process_perf_data               1
                retain_status_information       1
                retain_nonstatus_information    1
                is_volatile                     0
                check_period                    24x7
                max_check_attempts              3
                normal_check_interval           3
                retry_check_interval            2
                contact_groups                  web
                notification_options            w,u,c,r
                notification_interval           0
                notification_period             24x7
                register                        0
                }
  • というテンプレートは、1つはアクティブプローブを行わず、2つは、一定時間以内に情報が受信されない場合、アクティブリフレッシュである.
  • 120 sアクティブリフレッシュはテンプレート上に構成されており、監視周波数については自分で設定することができます.1日に1回しか報告しない場合は86400に設定します.

  • 基本的に受動検出の配置は以上の通りであり、受動検出の個人感覚のメリットは以下の通りである.
    1:nagiosユーザーの権限が小さすぎて、やりにくいことは、受動的に検出することができます.
    2:バックアップスクリプトを書くときに、突然検出に成功したかどうか、nagiosに報告したいことがあります.そうでなければ便利さを実現するには成功してメールを送らなければなりません.成功しなくてもメールを送るのは面倒です.成功したらメールを送らなくてもいいと言う人もいますが、もしバックアップのスクリプトが削除されたら、あなたはずっと成功したと思っていますが、実はもう走っていません.
    3:また、プログラムを書くのが上手な人は、スクリプトを書いて、チェックして、成功したら上にAll okを報告することができます.失敗した場合は、情報にechoを出すことができ、監視のオプションを減らすことができます.