NGINX

データタイプ

ロードバランサーメトリクス

概要

NGINXモニタリングは、利用可能なデータメトリクスに基づいた時系列レポートです。これは、Openmixアプリケーションで利用可能なメトリクスについて、顧客に可視性を提供します。NGINXメトリクスの時系列レポートはFusionによって取り込まれ、顧客はロードバランサーの現在および最近のパフォーマンスを確認できます。

NGINXロードバランサーとアプリケーションサーバーの健全性に関するデータを提供します。NGINX Fusionフィードのメトリクスを表示し、NGINXサーバーの健全性について顧客にフィードバックを提供します。標準のNGINX Fusion統合により、NGINXメトリクスをOpenmixアプリケーションに含めることができます。

データフィード形式

データフィードのサンプル

    {
        "accepts": "5015",
         "active": "4",
         "handled": "5015",
         "reading": "0",
         "requests": "5482",
         "waiting": "3",
         "writing": "1"
    }
<!--NeedCopy-->

フィード値

メトリクス フィード値
受理された接続 accepts
現在の接続 activ
処理された接続 handled
読み取り中の接続 reading
総リクエスト数 requests
アイドル状態の接続 waiting
書き込み中の接続 writing

アプリケーションで計算可能な値:

メトリクス フィード値
破棄された接続 accepts - handled
現在のリクエスト reading + writing

ロードバランサーごとの設定情報

ステータス取得元エンドポイント: http://nginx.org/en/docs/http/ngx_http_stub_status_module.html

サーバー設定

設定例

http://nginx.org/en/docs/http/ngx_http_stub_status_module.html

メトリクス収集:NGINX(オープンソース)

HTTP stub statusモジュールが有効になっている限り、オープンソースのNGINXは、シンプルなステータスページでサーバーアクティビティに関するいくつかの基本的なメトリクスを公開します。

モジュールがすでに有効になっているかを確認するには、以下を実行します。 nginx -V 2>&1 | grep -o with-http_stub_status_module

ターミナルで出力として with-http_stub_status_module が表示される場合、ステータスモジュールは有効です。そのコマンドが何も出力しない場合、ステータスモジュールを有効にする必要があります。ソースからNGINXをビルドする際に、--with-http_stub_status_module 設定パラメーターを使用できます。

      ./configure \
      … \
      --with-http_stub_status_module
      make
      sudo make install
<!--NeedCopy-->

モジュールが有効になっていることを確認するか、ご自身で有効にした後、ステータスページ用にローカルからアクセス可能なURL(例:/nginx_status)を設定するために、NGINX設定を変更する必要があります。

      server {
        location /nginx_status
        {
          stub_status on;
          access_log off;
          allow 127.0.0.1;
          deny all;
        }
      }
<!--NeedCopy-->

: NGINX設定のサーバーブロックは、マスター設定ファイル(例:/etc/nginx/nginx.conf)ではなく、マスター設定によって参照される補足設定ファイルにあります。関連する設定ファイルを見つけるには、まず以下を実行してマスター設定を特定します。

`nginx -t`

リストされたマスター設定ファイルを開き、HTTPブロックの末尾近くにある include で始まる行を探します。例:

`include/etc/nginx/conf.d/*.conf`

参照されている設定ファイルのいずれかでメインのサーバーブロックを見つけ、上記のように変更してNGINXメトリクスレポートを設定する必要があります。いずれかの設定を変更した後、以下を実行して設定をリロードします。

`nginx -s reload`

これで、ステータスページを表示してメトリクスを確認できます。

      Active connections: 24
      server accepts handled requests
      1156958 1156958 4491319
      Reading: 0 Writing: 18 Waiting : 6
<!--NeedCopy-->

リモートマシンからステータスページにアクセスしようとしている場合は、上記の構成スニペットで127.0.0.1がホワイトリストに登録されているのと同様に、ステータス構成でリモートマシンのIPアドレスをホワイトリストに登録する必要があります。

NGINXステータスページはメトリクスのスナップショットを素早く取得する簡単な方法ですが、継続的なモニタリングのためには、そのデータを定期的に自動的に記録する必要があります。NGINXステータスページのパーサーは、NagiosやDatadogなどのモニタリングツール、および統計収集デーモンであるcollectd向けに存在します。

出典: https://www.datadoghq.com/blog/how-to-collect-nginx-metrics/

Fusionでの設定

Fusionデータフィードには、左側のナビゲーションペインのOpenmixからアクセスできます。初期手順については、Fusion統合ドキュメントを参照してください。

サービス固有の設定ダイアログボックスに到達したら、以下を入力します。

  • 名前: データフィードに与えられる名前。指定しない場合、「サービス - プラットフォーム名」がデフォルトとなります。
  • 実行頻度: サービスからデータフィードが更新される頻度。
  • プラットフォーム: データフィードに関連付けられているプラットフォーム。
  • URL: URLは、顧客がOpenmixで確認したいデータを返す、顧客ネットワーク上のエンドポイントです。

インストールが完了すると、Fusionデータフィードのホームページに緑色のステータスとログ履歴のモニタリングメトリクスとともに表示されます。

Fusionデータフィードを編集するには、リスト内のデータフィードをクリックし、次に編集ボタンをクリックします。設定を変更したら、保存をクリックします。これにより、変更が保存されデータフィードに適用された状態で、データフィードリストに戻ります。

NGINX