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

httpd - 3.0.13以上

▶ [必須][exem-httpd-module] インストール準備

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

  • 必ずインストール前にApache HTTPDのバージョンを確認します。
httpd -V
  • Linux & Solaris HTTPD 2.4バージョンをサポートしており、インストールする環境のHTTPDバージョンを正確に確認する必要があります。

❷ インストールファイルの準備​

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

▶ [必須][exem-httpd-module] インストール

❶ exem-httpd-moduleインストール​

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

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

備考

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

=====================================================
EXEM HTTPD Module Setup
=====================================================
Choose work number (default: 1)
1. install(default)
2. unpack
3. exit
:
  • インストールするターゲットHTTPDバージョンを入力します。( 2.4 )
=====================================================
exem-httpd-module v3.0.13(1ff0347) Install on linux 3.10
=====================================================
Install HTTPD Version [2.4]:
  • インストールディレクトリを入力します。( エンター入力時デフォルト経路にインストール )
Enter INSTALL_DIRECTORY [/path/to/httpd-module]: 
  • 通信するexem-webserver-agentのIPを入力します。( デフォルト値なし / 未入力時は再度IP入力を求めるプロンプトが表示 )
Enter exem-webserver-agent CONNECT_IP:
  • 通信するexem-webserver-agentのPortを入力します。( エンター入力時デフォルト値12848を適用 )
Enter exem-webserver-agent CONNECT_PORT [12848]: 
  • モジュールのGroup IDを登録します。( エンター入力時デフォルト値defaultを適用 )
Enter GROUP_ID [default]::
  • webserverモニタリング対象として登録される名前を入力します。( エンター入力時デフォルト値サーバーのHostNameを適用 )
Enter MODULE_NAME [t41a]: 
  • exem-host-agentとマッピングするBIDを入力します。( エンター入力時デフォルト値サーバーのHostNameを適用 )
Enter EXEMBID with exem-host-agent [t41a]: 
  • agent ↔ module間で使用されるunique idを固定するかを選択します。オンプレミス環境では一般的にエンターを押してデフォルトで固定します。(エンター入力時デフォルト値yesを適用)
Fix UNIQUE_ID [yes(default)/no]: 
  • httpd exemone metric(/exem/v1/metrics)の収集可否を選択します。 ( エンター入力時デフォルト値yを適用 )
  • y入力時、以下のMETRIC_PORT、METRIC_IPを追加入力します。
  • n入力時はmetric設定のための追加入力なしでインストールが完了します。
Collect exemone metric? [Y(default)/n]: 
  • httpd exemone metric収集を yにした場合 exem-webserver-agentがhttpdのmetricを収集するために接続するPortを入力します。( エンター入力時デフォルト値12849を適用 )
  • exem-webserver-agentがhttpdにrequestするエンドポイントであるため、使用時はwebserverのlistenポート(ex:12849)のファイアウォールを確認する必要があります。
Enter METRIC_PORT [12849]: 
  • httpd exemone metric収集を yにした場合 httpdがインストールされたサーバーのIPを入力します。exem-webserver-agentはこのIPでmetricをリクエストします。ただし、同じサーバーにexem-webserver-agentがインストールされている場合は127.0.0.1を使用可能です。( デフォルト値なし / 未入力時は再度IP入力を求めるプロンプトが表示 )
Enter METRIC_IP (IP of this server where httpd is installed): 10.20.30.40
  • インストール完了文言の確認(設定適用値)
=====================================================
Installation completed
=====================================================
INSTALL_HTTPD_VERSION [2.4]
INSTALL_DIRECTORY [/path/to/httpd-module]
CONNECT_IP [<webserver agent ip>]
CONNECT_PORT [12848]
GROUP_ID [default]
MODULE_NAME [test]
EXEMBID [test]
Generated UNIQUE_ID [803c0bcb-test-test-test-1df7de9fbc76]
EXEM_METRIC_COLLECT [yes]
METRIC_PORT [12849]
METRIC_IP [<httpd ip>]
=====================================================

Copy tools from tools/mdl-ver_linux_64
Copy tools from tools/xm-uuidgen_linux_64
=====================================================

+--> Add the following line to 'httpd.conf' >--+
# exem module
Include /path/to/httpd-module/conf/exem_httpd_mod.conf

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

❷ httpd.conf設定​

  • httpd.confファイル経路の確認
httpd -V
  • -D SERVER_CONFIG_FILE=の値又はHTTPDインストール経路のconf/httpd.confを通じてhttpd.confファイル経路を確認
  • httpd.confファイルを開いてインストール完了時に出力されたInclude設定を追加
# exem module
Include /path/to/httpd-module/conf/exem_httpd_mod.conf
備考

nginxモジュールと異なり、load_moduleディレクティブを別途追加する必要はありません。LoadModuleディレクティブがexem_httpd_mod.conf設定ファイル内に含まれています。

❸ インストールバージョンの確認​

  • インストール後に生成されたhttpd-moduleフォルダのpkg_version.shを実行すると、インストールされたexem-httpd-moduleのバージョン情報を確認可能
$ /path/to/httpd-module/pkg_version.sh
exemONE exem-httpd-module v3.0.13(1ff0347)

▶ [exem-httpd-module]のexem_httpd_mod.conf設定ファイル

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

  • 上記のインストール過程でhttpd exemone metric収集を nにした場合は 以下のmetrics configurationとconfig for httpdブロックがコメントになっています。

############################################
### EXEM Httpd Module Configuration File ###

LoadModule exem_module /path/to/httpd-module/modules/mod_exem_24_{OSNAME}_64.so

<IfModule exem_module>

ExEmGroupID default
ExEmUniqueID {UUID}

# module name (default: hostname)
#ExEmModuleName <input module_name>

# EXEMBID with exem-host-agent
#ExEmBID <input host BID>

# Send data(packet) logging
ExEmDump false

# connection ip to exem-webserver-agent (default ip:<webserver agent ip>, port:12848)
#ExEmConnectIP <webserver agent ip>
#ExEmConnectPort 12848

# default 5 sec
ExEmConnectReconnectSec 5

# do not use 0(zero)
ExEmLogPath <input log_path>
ExEmLogLevel info

# default 10 Megabyte
ExEmLogMaxSize 10

# metrics configuration (default: <httpd ip>:12849/exem/v1/metrics)
ExEmMetricAddr <httpd ip>:12849
ExEmMetricLocation /exem/v1/metrics

# config for httpd
Listen 12849
<VirtualHost *:12849>
<Location /exem/v1/metrics>
SetHandler exem-metrics
</Location>
</VirtualHost>

</IfModule>

▶ [便利な機能][exem-httpd-module] 簡易インストール

❶ Defaultオプションでインストール​

  • --defaultオプションを使用して<ip>:<port>バージョン入力時、group idをdefaultに設定し、残りはデフォルト設定で入力なしでインストールが可能です。
ヒント

--defaultオプションを使用するとExEmBID設定はhostnameに自動設定されます。 --metricオプションを使用するとhttpd exemone metric収集のためのMETRIC_PORT、METRIC_IPを設定できます。

  • --default <ip>:<port> --metric=<ip>:<port>オプションで一行インストール
    • [ 参考 ] --metric=<ip>:<port>オプションを設定しない場合、metric収集設定はOFFになります。
$ ./setup_exem-httpd-module_3.0.13.bin --default=10.20.30.40:12848 --metric=10.20.30.40:12849
=====================================================
EXEM HTTPD Module Setup
=====================================================
SETUP TYPE[install]
unpack httpd modules
LOG_PATH[./setup_exem-httpd-module_3.0.13.log]
=====================================================
exem-httpd-module v3.0.13(1ff0347) Install on linux 3.10
=====================================================

=====================================================
Installation completed
=====================================================
INSTALL_HTTPD_VERSION [2.4]
INSTALL_DIRECTORY [/root/httpd-module]
CONNECT_IP [10.20.30.40]
CONNECT_PORT [12848]
GROUP_ID [default]
MODULE_NAME [test]
EXEMBID [test]
Generated UNIQUE_ID [123ba6d0-test-test-test-e263a532c897]
EXEM_METRIC_COLLECT [yes]
METRIC_PORT [12849]
METRIC_IP [10.20.30.40]
=====================================================

Copy tools from tools/mdl-ver_linux_64
Copy tools from tools/xm-uuidgen_linux_64
=====================================================

+--> Add the following line to 'httpd.conf' >--+
# exem module
Include /root/httpd-module/conf/exem_httpd_mod.conf

❷ Silentオプションでインストール​

  • silent設定ファイルを通じてインストール過程で入力なしでインストールが可能です。

  • sampleファイル生成

$ ./setup_exem-httpd-module_3.0.13.bin --silent-sample   
make sample silent setup file
  • sampleファイルの確認及び必要な設定の作成
$ cat setup_sample.silent 
SETUP_TYPE=install
INSTALL_HTTPD_VERSION=2.4
INSTALL_DIR=/root/httpd-module
GROUP_ID=default
#MODULE_NAME=
FIX_UNIQUE_ID=yes
#EXEM_BID=
EXEM_METRIC_COLLECT=yes
METRIC_PORT=12849
#METRIC_IP=
#EXEM_CONNECT_IP=
#EXEM_CONNECT_PORT=12848
  • slient設定ファイルを通じてインストール
$ ./setup_exem-httpd-module_3.0.13.bin --silent=setup_sample.silent 
=====================================================
EXEM HTTPD Module Setup
=====================================================
SETUP TYPE[install]
unpack httpd modules
LOG_PATH[./setup_exem-httpd-module_3.0.13.log]
=====================================================
exem-httpd-module v3.0.13(1ff0347) Install on linux 3.10
=====================================================

=====================================================
Installation completed
=====================================================
INSTALL_HTTPD_VERSION [2.4]
INSTALL_DIRECTORY [/root/httpd-module]
CONNECT_IP [10.20.30.40]
CONNECT_PORT [12848]
GROUP_ID [default]
MODULE_NAME [test]
EXEMBID [test]
Generated UNIQUE_ID [7ac13bc5-test-test-test-680eaaaaaeee]
EXEM_METRIC_COLLECT [yes]
METRIC_PORT [12849]
METRIC_IP [10.20.30.40]
=====================================================

Copy tools from tools/mdl-ver_linux_64
Copy tools from tools/xm-uuidgen_linux_64
=====================================================

+--> Add the following line to 'httpd.conf' >--+
# exem module
Include /root/httpd-module/conf/exem_httpd_mod.conf