NagiosはHTTP応答を誤解します!

NagiosはHTTP応答を誤解します!

私はインストールしましたナギオス 4.0.1私のCentOS 6.5サーバーで。ポート80を使用するようにNode.jsを設定したので、httpdポート3000でリッスンするようにApache()サービスを設定しました。

Nagiosコンソールを開き、ポート3000でHTTPを使用すると、すべてが大丈夫です。問題はNagiosサービスの状態です。これは私のHTTPを説明とともに「Critical」としてマークします。

接続が拒否されました。 HTTP 重要 - TCP ソケットを開けません。

この問題を解決する方法についてのアイデアはありますか?

答え1

Nagiosのプラグインは、実際にNagiosがとても強力な理由の秘密です。 HTTP 検査を実行する検査は次のとおりです。

$ /usr/lib64/nagios/plugins/check_http
check_http: Could not parse arguments
Usage:
 check_http -H <vhost> | -I <IP-address> [-u <uri>] [-p <port>]
       [-w <warn time>] [-c <critical time>] [-t <timeout>] [-L] [-a auth]
       [-b proxy_auth] [-f <ok|warning|critcal|follow|sticky|stickyport>]
       [-e <expect>] [-s string] [-l] [-r <regex> | -R <case-insensitive regex>]
       [-P string] [-m <min_pg_size>:<max_pg_size>] [-4|-6] [-N] [-M <age>]
       [-A string] [-k string] [-S] [--sni] [-C <age>] [-T <content-type>]
       [-j method]

-p <port>指定されていない場合は、デフォルトポート80をオーバーライドできるスイッチがあります。

はい

$ /usr/lib64/nagios/plugins/check_http -H fan
HTTP OK: HTTP/1.1 200 OK - 5233 bytes in 0.025 second response time |time=0.024596s;;;0.000000 size=5233B;;;0

ポートを変更または明示的に変更するには、次の手順を実行します。

$ /usr/lib64/nagios/plugins/check_http -H fan -p 80
HTTP OK: HTTP/1.1 200 OK - 5233 bytes in 0.003 second response time |time=0.002890s;;;0.000000 size=5233B;;;0

Nagiosでデフォルトチェックを使用している場合は、デフォルトポート80の代わりにポート3000を呼び出すために独自のカスタムサービスチェックを作成する必要があります。

カスタムサービスチェック

追加のパラメータ(この場合は使用するTCPポート)が必要なようにHTTPサービスチェックを作成および/または変更できます。

詳細については、次の記事で詳しく説明します。check_httpとcheck_bigip_poolを使用してウェブサイトを監視します。

はい

抜粋

以下は、コマンドを定義する方法です。差別化するために、私はこれらのコマンドを異なる設定ファイルで定義し、各コマンド名に異なる定義を与えることを好みます。これにより、ポートにアクセスできない場合にWebアプリケーション全体がダウンしていると想定することなく、そのポートの問題を解決できます。

コマンド定義 > (nagios_host:/path_to_nagios/etc/objects/commands/cmd_http.cfg):

   define command{
           command_name    check_webstore
           command_line    $USER1$/check_http  -H $ARG1$ -u $ARG2$ -p $ARG3$
           }

関連情報