Nagiosの監視に問題があります。 nrpeを使用してリモートホスト上のプロセスをチェックしようとしています。
ホストはすでにnagiosによって監視されていたので、nrpe.cfgファイルに行を追加するだけで済みました。 check_procsチェックもすでに定義されているので、その例を使用できます。
とてもシンプルなので分厚いかもしれませんが、違います。コマンドを手動で実行でき、問題がないかどうかを確認します。
ubuntu@Host:/usr/lib/nagios/plugins$ ./check_procs -w 1:1 -c 1:1 -a delayed_job
PROCS OK: 1 process with args 'delayed_job'
ubuntu@Host:/usr/lib/nagios/plugins$ Sudo ./check_procs -w 1:1 -c 1:1 -a delayed_job
PROCS OK: 1 process with args 'delayed_job'
これは、私のnrpe.cfgファイルの一部です。
command[check_procs]=/usr/lib/nagios/plugins/check_procs -w $ARG1$ -c $ARG2$ -s $ARG3$
command[check_proc_name]=/usr/lib/nagios/plugins/check_procs -w $ARG1$ -c $ARG2$ -a $ARG3$
最初のチェックcheck_procsは正しく監視されており、最後の行は私が追加したものですが、これで応答します:PROCS CRITICAL:2プロセスと引数 'delayed_job'
これは私のサービスファイルです:
define service {
use generic-service
Host_name imobiel.limburger.nl
service_description Check Delayed Job Proces
check_command check_nrpe!check_proc_name!1:1 1:1 delayed_job
}
誰かアイデア? nagiosサーバーとnrpeサーバーをすでに数回再起動しました!うまくいけば、誰かが同じ問題を経験しましたか?
よろしくお願いします。
これはcheck_procsのバグだと思います。コマンドラインではなく、nrpeから実行すると自動的に検出されるようです。ある種の競合状態かもしれません。
コマンドプロンプトを指定すると、Ubuntuを実行しているようです。 Lucidで利用可能なcheck_procsを使用すると、次のようなことができます。
/usr/lib/nagios/plugins/check_procs --ereg-argument-array="[s]tring" -w 1:1
したがって、引数リストでパターンマッチを実行しますが、check_procsプロセスが一致しないようにします。パターンの1文字を角括弧に入れると、式は「文字列」と一致しますが、check_procs引数「[s] tring」とは一致しません。
ただし、Hardyで使用可能なcheck_procsには正規表現オプションがありません。
ホストの/ bin/ps出力に問題があります。デフォルトでは、「check_procs」バイナリはチェックされたシステムで「/ bin/ps-axwo」を実行し、引数文字列をカットします。 nagios-pluginsをソースから再コンパイルするだけです。バージョン1.4.15では、構成オプションを設定する必要があります。
./configure --enable-extra-opts=yes --with-ps-command="/bin/ps -axwwo 'stat uid pid ppid vsz rss pcpu ucomm command'" --with-ps-format="%s %d %d %d %d %d %f %s %n" --with-ps-cols=9 --with-ps-varlist="procstat,&procuid,&procpid,&procppid,&procvsz,&procrss,&procpcpu,procprog,&pos"
-axWWo-psを設定すると、引数の完全な文字列が取得されます。申し訳ありません。
どのバージョンのnagiosプラグインをお持ちですか? 1.4.15のcheck_procsは、この動作を示しません。ただし、以前のバージョンは確認していません。
手動テストの最後に「-vv」または「-vvv」を追加すると、実行中の「ps」コマンド、表示されているもの、一致していると見なされるものを正確に確認できます。
あなたが実際にである場合、Nagiosは、「check_procs」と「check_proc_name」の両方を実行します。これらは、nrpe.cfgスニペットで定義されているとおりに、同じ正確な引数で同時に実行されます。可能性があります彼らはお互いを拾うでしょうカウントで。しかし、まったく同じことを行う2つのチェックを実行するのはなぜですか?
私も実際にこの問題を抱えていました。たとえば、-urootです。 NRPEサーバーはNagiosユーザーとしてチェックを実行するため、特にユーザーを呼び出すことでこの問題を回避できます。