NGINX Plusのダッシュボード機能 Live Activity Monitoring
NGINX Plus では、OSS版には存在しない機能の1つとして、Live Activity Monitoring があります。名前のとおり、NGINXのアクティビティを監視する機能で、NGINX Plus のパフォーマンスをリアルタイムで監視することができます。今回は、その Live Activity Monitoring のご紹介です。
NGINX Plus の Live Activity Monitoring を試したので紹介したいと思います。Live Activity Monitoring は、NGINX Plus の パフォーマンス をリアルタイムで監視することができるWebUIツールです。NGINX OSS版には存在しない機能の1つで、NGINX Plusを既にご利用であれば、追加費用なしで活用できます。今のNGINX Plusサーバーの状態を簡単な設定で知ることができるのも利点となっています。是非試してみてください。
画面イメージです。
なお、今回は NGINX Plus R26 を使っています。R19以降であれば、同等の設定で実現可能です。
何ができるの?
このようなことができます。
・ダッシュボードページでサーバーの負荷やパフォーマンスのメトリクスをリアルタイムで表示
・NGINX Plusに組み込まれており、設定することで有効化
・追加のモジュールは不要
・REST API で ステータス情報の取得、統計のリセットなども可能
主な表示項目は以下です。
・HTTP Zones
・HTTP Upstreams
・TCP/UDP Zones
・TCP/UPD Upstreams
・Caches
・Shared Zones
・Cluster
・Resolvers
その他の詳細に関しては、メーカーのホームページをご確認ください。
Live Activity Monitoring
https://docs.nginx.com/nginx/admin-guide/monitoring/live-activity-monitoring/
設定方法(有効化設定)
デフォルト時は、有効になっていません。そのための設定が必要です。
1. REST API を有効にするためのconfを作成します。同時に ダッシュボードページ(/dashboard.html
) を設定します。dashboard.htmlのファイル自体は、NGINX Plusをインストールした時点で同時にファイルもインストールされています。
2. これでNGINXの設定の再読み込み(sudo nginx -t && sudo nginx -s reload
)を実施するだけで、有効化 されます。ただし、データを取得する設定にはなっていませんので、追加の設定が必要です。
この時点でブラウザで設定したURL( http://ホスト名/dashboard.html )にアクセスしてもデータは表示されません。
設定方法(統計情報の取得設定)
統計情報データを収集するために、データを収集したいオブジェクトの 共有メモリゾーン を有効にする必要があります。共有メモリゾーンは、NGINXワーカープロセスによって参照される設定と実行時の状態情報を格納します。
1. HTTP / TCPの統計情報の設定
status_zone
ディレクティブを指定します。以下のサンプルでは、serverディレクティブに status_zone status_page_proxy;
を記述しています。このserverディレクティブ以外の他のserverディレクティブにも同じゾーンの指定が可能です。
また、各locationブロックにも指定が可能です。
WebUI表示例
2. Upstreamの統計情報の設定
Upstreamディレクティブ毎にゾーンを指定します。
WebUI表示例
ほかにも キャッシュなどの統計情報設定もできますが、今回の設定はここまでです。
WebUIの説明
WebUIの表示内容を見てみましょう。
最初の画面です。
説明用に枠を付けました。
A~F のそれぞれに関する簡単な説明です。
A:NGINX Plusのバージョン、IPアドレス、PID、Uptime の情報が表示されます。NGINX Plusのバージョンに対するリリースノートへのリンク、最後に設定のリロードが実施された時間 も確認することができます。
B:現在のHTTP通信のコネクション情報が表示されます。SSL のリンクをクリックすることで、HTTPSの情報も表示されます。
C:現在のリクエスト数の情報です。
D:設定した各ゾーンへの詳細情報画面のタブです。
これは HTTP Zones の詳細画面の表示例です。レスポンスコード4xx系の場合、数値が赤字で表示されます。設定してある閾値を超えると、緑色のステータス色が オレンジ色に変わります。
E:オプション設定(更新時間・レスポンスコード4xx系の表示の閾値、など)画面です。
F:設定した各ゾーンに対する情報です。各ゾーンのアイテムに対するステータスの簡易情報が表示されます。詳細な情報などは各ゾーンのタイトルをクリックすると、D のタブと同様の詳細情報画面に飛びます。
まとめ
NGINX Plusのメーカーが提供している NGINX Plus とアプリのパフォーマンスをリアルタイムで追跡するツール Live Activity Monitoring を紹介しました。既にNGINX Plusをご利用中であれば簡単な設定追加でリアルタイム追跡を可能にすることができます。上記の説明では画面のスクリーンショットでの紹介でしたが、メーカーのサイトではデモ用のダッシュボード画面への リンク が公開されています。実際に 1秒ごとにステータスが更新されるリアルタイムな画面を見ることができます。
是非、実際の Live Activity Monitoring を見てみてください。