メインコンテンツまでスキップ

nginx - 3.0.9.3以下

1. パッケージインストール時の注意事項​

必ずインストール前にnginxのバージョンを確認します。

危険

nginx -Vコマンドでバージョン確認時のconfigure arguments設定による注意事項 --with-compatが確認できない場合はカスタムビルドが必要 --with-http_stub_status_moduleが確認できない場合はmetric指標が収集されず0として表示される

nginx -V

Linux & Alpine Linux環境のnginxをサポートしており、インストールする環境のnginxバージョンを正確に確認する必要があります。 (詳細なnginxサポートバージョンは紹介文書を参照)

パッケージファイルはsetup_exem-nginx-module_${VERSION}.binのインストールファイルとして配布され、インストールする経路で実行します。

1.1 インストール方法​

  • インストールするターゲットnginxバージョンを確認します。( nginx -V )

  • パッケージインストールを行う経路でインストールファイルを実行し、installを選択します。(エンター入力時install)

備考

Unpackはパッケージ内部に構成されたファイルを確認する用途で使用

=====================================================
EXEM NGINX Module Setup
=====================================================
choise work
1. unpack
2. install(default)
:
  • インストールするターゲットnginxバージョンを入力します。
=====================================================
exem-nginx-module v3.0.9.3(3563ebd) Install on linux 3.10
=====================================================
nginx supported version:
> 1.14.1 1.14.2 1.16.1 1.18.0 1.20.1 1.24.0 1.25.0 1.27.0 1.28.0 1.29.0 1.29.1 1.29.2 1.29.3
Install Nginx Version(version|all):

  • インストールディレクトリを入力します。(エンター入力時デフォルト経路にインストール)
Install Directory (/path/to/nginx-module):
  • モジュールが使用する設定ファイル名を入力します。(エンター入力時デフォルト値exem_ngx_mod.confを適用)
nginx module config filename(exem_ngx_mod.conf): 
  • agent ↔ module間で使用されるunique idを固定するかを選択します。オンプレミス環境では一般的にエンターを押してデフォルトで固定します。(エンター入力時デフォルト値yesを適用)
(optional)Do you want to fix the 'unique id'?[yes(default)/no]: 
  • モジュールのGroup IDを登録します。(エンター入力時デフォルト値defaultを適用)
Group ID to register(default):
  • webserverモニタリング対象として登録される名前を入力します。(エンター入力時デフォルト値サーバーのHostNameを適用)
(optional)Module Name to register(t41a):
  • インストール完了文言の確認(設定適用値)
Install Directory [/nginx-module] 
Group ID [default]
Module Name [no input]
Generated Unique ID [028535dc-test-test-test-2a0a3a5fcfde]
=====================================================
Copy tools from linux/xm-uuidgen
Copy tools from linux/mdl-ver
Copy module file from linux/ngx_http_exem_module_1.25.0.so

+--> Add the following line to 'nginx.conf' >--+
load_module "/nginx-module/modules/ngx_http_exem_module_1.25.0.so";
http {
include /nginx-module/conf/exem_ngx_mod.conf;
}

Add the following line to 'nginx.conf'以降に表示された内容を、以下の内容を参考にnginx.confに追加

1.2 nginx.conf設定​

  • nginx.confファイル経路の確認
nginx -t
  • configuration file出力値でnginx.confファイル経路を確認
  • nginx.confファイルを開いてインストール完了時に出力されたload_moduleとInclude設定を追加
load_module "/nginx-module/modules/ngx_http_exem_module_1.25.0.so";

http {
include /nginx-module/conf/exem_ngx_mod.conf;
}
備考

httpdモジュールと異なり、load_moduleディレクティブを追加する必要があります。

2. 設定ファイル (exem_ngx_mod.conf)​

インストール時に自動生成される設定ファイルの構造は以下の通りです。(例)。

############################################
### EXEM Nginx Module Configuration File ###

exem_group_id default;
exem_unique_id {UUID};

# module name(defult: hostname)
#exem_module_name <input module_name>;

# EXEMBID with host agent
#exem_bid <input host bid>;

# log path (default:logs/exem_ngx_mod.log)
#exem_log_path logs/exem_ngx_mod.log;
# log level (default:none)
#exem_log_level debug;

# connection ip to agent (default:127.0.0.1)
#exem_connect_ip 127.0.0.1;

# connection ip to agent (default:12848)
#exem_connect_port 12848;

# skip collect exem metrics (default:true)
#exem_skip_metrics_req true;

# metrics configuration (default: 127.0.0.1:12849/exem/v1/metrics)
#server {
# listen 12849;
# server_name 127.0.0.1;
# location /exem/v1/metrics {
# stub_status_exem;
# }
#}

[必須] 手動設定すべきオプション​

  • exem-webserver-agentと通信するIP、Port設定

    • 通信するexem-webserver-agentのip、portはexem_ngx_mod.confファイルを通じて直接修正します。
      • 通信するexem-webserver-agentのIPを入力します。
      [ 예시 ]
      # connection ip to agent (default:127.0.0.1)
      exem_connect_ip 10.10.10.10;
      • 通信するexem-webserver-agentのPortを入力します。
      [ 예시 ]
      # connection ip to agent (default:12848)
      exem_connect_port 12848;
  • exem-nginx-moduleのlogフォルダ設定

    • exem-nginx-moduleのlogフォルダを作成し、必ずexem_ngx_mod.confファイルを通じて直接log pathを設定する必要があります。(logフォルダがない場合、nginxが動作しないことがある。今後httpd moduleのように改善予定)
      • Install Directoryとして設定した経路にlogフォルダを作成します。
      [ 예시 ]
      root@e0aaf4628fec:/nginx-module# pwd
      /path/to/nginx-module
      root@e0aaf4628fec:/nginx-module# mkdir log
      root@e0aaf4628fec:/nginx-module# ls
      conf log modules tools
      • 絶対経路でログファイル名まで含めてexem_log_pathとして設定します。
      [ 예시 ]
      # log path (default:logs/exem_ngx_mod.log)
      exem_log_path /path/to/nginx-module/log/exem_ngx_mod.log;

[オプション] nginx metricを収集したい場合に設定すべきオプション​

  • metricを収集したい場合はserverブロックのコメントを解除し、以下の例を参考に設定します。
  • listenにはwebserver agentでmetric収集に必要な接続portを入力します。
  • server_nameにはnginxがインストールされたサーバー自身のIPを入力します
[ 예시 ]
# metrics configuration (default: 127.0.0.1:12849/exem/v1/metrics)
server {
listen 12849;
server_name 10.20.30.40;
location /exem/v1/metrics {
stub_status_exem;
}
}
  • 上記の設定により、exem-webserver-agentがnginxにrequestするエンドポイントであるため、使用時はwebserverのlistenポート(ex:12849)のファイアウォールを確認する必要があります。