データサーバについて
データサーバはエージェントとビューサーバ間のエージェントを管理する機能に加えて、データの処理や、ビューサーバからリクエストがあったデータの配信も行います。
JENNIFER5パッケージをダウンロードして解凍すると、server.dataディレクトリが作成されます。このディレクトリがデータサーバのディレクトリです。
データサーバによるエージェント制御
データサーバはポートを開いて、エージェントからのアクセスを待機します。エージェントがアクセスすると、データサーバはエージェントを接続し、エージェントライセンスの有効性を識別します。
データサーバによるデータ処理
データサーバはエージェントが収集して送信された、すべてのデータ処理、保存および検索を行います。
データサーバの仕様
データサーバの仕様は収集する監視対象のシステムおよびデータ量に応じて異なります。通常、1000TPS以下のトランザクションに対するサービスを提供するデータサーバの最低要件は次の通りです。
項 目 | 推奨仕様 |
---|---|
CPU | 2コア(2.0GHz以上) |
メモリ | 8GB以上の物理メモリ、4GB以上の余裕メモリ |
HDD | NFSではない1000GBの空き容量が必要、 - システム規模およびプロファイル量によって異なります |
サーバ | 物理サーバ(仮想環境ではないこと) |
対応OS | Windows、Linux、AIX、HP、Solaris |
対応JDKバージョン及びビット | JDK 1.7, 1.8 64bit (5.3.xまで) JDK 1.8 64bit (5.4.0 ~ 5.6.0.x) JDK 1.8, 11, 17 64bit (5.6.1) JDK 1.8, 11, 17, 20 64bit (5.6.2) JDK 1.8, 11, 17, 20, 21 64bit (5.6.3以降) |
データサーバはデーモン(daemon)型のJAVAプログラムで、JAVAがインストールされている大部分のシステムで運用できます。HDDの必要な容量はJENNIFERを構成しているシステムの規模および収集するデータによって異なります。
HP-UX環境の場合は、以下のオプションを追加する必要があります。
JAVA_OPTS=" ${JAVA_OPTS} -d64" JAVA_OPTS=" ${JAVA_OPTS} -Xmpas:on"
JENNIFERサーバは性能の観点から物理サーバをお勧めします。
同一物理マシン上に複数のデータサーバ プロセスを実行する場合は、各プロセス当たり2コア以上が必要です。
Bootstrapチェック
データサーバは円滑な収集性能を確保のため、起動時に現在環境の適合性をチェックします。次のチェック項目中1つでも満たさない場合、データサーバは起動されません。
CPUコア数2個以上
物理メモリ8GB以上
db_dataのパスがNFSではないこと
仮想環境ではないこと
Bootstrapチェックの無効化
推奨スペックではない環境でデータサーバを運用したい場合は、Bootstrapチェックを無効化して起動させることが可能です。
データサーバの設定ファイル(server_data.conf) に次のオプションを追記してからデータサーバを起動します。
jennifer_bootstrap_check=false
データサーバのディレクトリ構成
データサーバのディレクトリ構成は次の通りです。
ディレクトリ名 | 説 明 |
---|---|
bin | 実行可能ファイルが含まれているディレクトリ |
conf | 構成ファイルが含まれているディレクトリ |
lib | データサーバを実行するためのライブラリ |
db_data | 性能データが保存されるディレクトリ(最初の実行時に作成されます) |
logs | データサーバのログが出力されるディレクトリ |
upgrade | データサーバのアップグレードファイルを保存するディレクトリ(最初のアップグレード実行時に作成されます) |
性能データが保存されるパーティション(ディスク)の全体容量が4GB未満の場合、警告メッセージを表示します。
100MB未満の場合は自動的にshutdownされます。
データサーバのインストールディレクトリは空白がないパスのみサポートします。パスに空白がある場合(例:C:¥Program Files¥jennifer)は、正常に動作しません。必ず空白がないパスにデータサーバをインストールしてください。
データサーバの開始と停止(UNIX/Linux)
データサーバの構成
データサーバはエージェントとビューサーバ間のエージェントを管理する機能に加えて、データの処理や、ビューサーバからリクエストがあったデータの配信も行うサーバです。データサーバは収集するデータ量が大きいときやエージェント数が多いときに拡張できます。
データサーバ開始時に必要な構成
${JENNIFER_DATA_SERVER_HOME}/bin/jennifer_data.shファイルはUNIX環境でデータサーバを開始するために必要な構成を含んでいます。このファイルにはJAVA_HOME、データサーバホーム、サーバ構成ファイルおよびデータサーバJVMオプションが含まれています。JENNIFERがインストールされている環境に応じ、次の表にある変数を使用して設定できます。
構成変数 | 例 |
---|---|
JAVA_HOME | /home/jdk1.8.0_181 |
JENNIFER_DATA_SERVER_HOME | /home/jennifer5/server.data |
JENNIFER_DATA_SERVER_CONF | ${JENNIFER_DATA_SERVER_HOME}/conf/server.conf |
JENNIFER_DATA_SERVER_LOG_CONF | ${JENNIFER_DATA_SERVER_HOME}/conf/logback.xml |
# ---------------------------------------------------------------------- # ----- Customizable Variables ----------------------------------------- # ---------------------------------------------------------------------- JAVA_HOME=/home/jdk1.8.0_181 JENNIFER_DATA_SERVER_HOME=/home/jennifer5/server.data JENNIFER_DATA_SERVER_CONF=${JENNIFER_DATA_SERVER_HOME}/conf/server_data.conf JENNIFER_DATA_SERVER_LOG_CONF=${JENNIFER_DATA_SERVER_HOME}/conf/logback.xml rem ----------------------------------------------------------------------
データサーバの設定オプション
データの保存場所や、ポートの設定などデータサーバの基本設定を行います。設定ファイルはデータサーバのホームディレクトリ配下のconf/server_data.confに配置します。ファイル名とファイル位置は変更できます。初期設定が必要なオプションは次の通りです。
構成 | 初期値 | 説 明 |
---|---|---|
db_path | ../db_data | 性能データを保存するディレクトリ |
listen_port | 5000 | データサーバのリスニングポート番号 |
backup_path | $JENNIFER_DATA_SERVER_HOME/db_data/domain_id | バックアップファイルを保存するディレクトリ |
db_path=../db_data listen_port=5000
データサーバがバインドするポートが5000で、エージェントとビューサーバが通信します。初期設定を変更しない場合は修正する必要がありません。
データサーバの開始
データサーバ配下のbinディレクトリに移動します。
# cd /home/jennifer5/server.data/bin
binディレクトリで、startup_data.shを実行します。
# ./startup_data.sh
データサーバが正常に開始したことを確認します。正常に開始すると、下記のようなログ(${JENNIFER_DATA_SERVER_HOME}/logs/server.data.yyyy-mm-dd.log)が出力されます。
2016-05-17 15:29:09.714 [main] INFO com.jennifersoft.data.Main - Using JRE: /home/jdk1.7.0_71/jre 2016-05-17 15:29:09.728 [main] INFO com.jennifersoft.data.Main - Jennifer data server home: /home/jennifer5/server.data 2016-05-17 15:29:09.729 [main] INFO com.jennifersoft.data.ConfigManager - Load configuration: /home/jennifer5/server.data/conf/server_data.conf 2016-05-17 15:29:09.740 [main] INFO com.jennifersoft.data.Main - Database path: /home/jennifer5/server.data/db_data 2016-05-17 15:29:09.742 [main] INFO com.jennifersoft.data.Main - Data server version: 5.0.11.4 2016-05-17 15:29:09.743 [main] INFO com.jennifersoft.data.Main - System property: user.timezone=Asia/Tokyo,file.encoding=UTF-8 2016-05-17 15:29:09.780 [Global Timer:Running:com.jennifersoft.data.mng.DomainListLogger$1] INFO c.j.data.mng.DomainListLogger$1 - Available domain: 1000 2016-05-17 15:29:09.919 [main] INFO com.jennifersoft.data.Main$2 - Data server startup. address=/0:0:0:0:0:0:0:0, port=5000
ビューサーバを接続すると、下記のようなログが作成されます。
2016-05-17 15:32:33.526 [:ME:CommandMultiplexer:Running:com.jennifersoft.data.nio.DataServerProtocol$1$1$1@178aab40] INFO c.j.d.n.ViewServerSessionCreationHandler - View server session is created. domainId=1000, connection=Local:127.0.0.1:5000-Remote:127.0.0.1:45942
エージェントを接続すると、下記のようなログが作成されます。
2016-05-17 15:45:41.925 [:ME:CommandMultiplexer:Running:com.jennifersoft.data.nio.DataServerProtocol$1$1$1@7d101445] INFO c.j.d.n.AgentSessionCreationHandler - Agent session is created. domainId=1000, instanceId=10000, version=5.0.15.1, connection=Local:192.168.1.9:5000-Remote:192.168.1.9:64406
データサーバの停止
データサーバ配下のbinディレクトリに移動します。
# cd /home/jennifer5/server.data/bin
binディレクトリで、shutdown_data.shを実行します。
# ./shutdown_data.sh
データサーバが正常に停止すると、下記のようなログが出力されます。
2016-05-19 14:49:08.615 [main] INFO com.jennifersoft.data.Main - Using JRE: /home/jdk1.7.0_71.jdk/Contents/Home/jre 2016-05-19 14:49:08.625 [main] INFO com.jennifersoft.data.Main - Jennifer data server home: /home/jennifer5/server.data/ 2016-05-19 14:49:08.628 [main] INFO com.jennifersoft.data.ConfigManager - Load configuration: /home/jennifer5/server.data/conf/server_data.conf 2016-05-19 14:49:08.637 [main] INFO com.jennifersoft.data.Main - Database path: /home/jennifer5/server.data/db_data 2016-05-19 14:49:08.943 [main] INFO com.jennifersoft.data.Main - Shutting down... 2016-05-19 14:49:08.949 [main] INFO com.jennifersoft.data.Main - Shutdown is done
大量のデータがデータサーバにリアルタイムで流入し、JENNIFERの内部データベースに保存されるデータ量が多い場合でも、この処理のスレッドを正常に閉じてから、データサーバは停止しなければなりません。データが損傷する可能性があるため、データサーバの強制終了は推奨しません。
データサーバの開始と停止(Windows)
データサーバの構成
データサーバはエージェントとビューサーバ間のエージェントを管理する機能に加えて、データの処理や、ビューサーバからリクエストがあったデータの配信も行うサーバです。データサーバは収集するデータ量が大きいときや、エージェント数が多いときに拡張できます。
データサーバ開始時に必要な構成
%JENNIFER_DATA_SERVER_HOME%bin\jennifer_data.batファイルはWindows環境でデータサーバを開始するのに必要な構成を含んでいます。このファイルにはJAVA_HOME、データサーバホーム、サーバ構成ファイルおよびデータサーバJVMオプションが含まれています。JENNIFERをインストールした環境に応じて、次の表の変数で設定できます。
構成変数 | 例 |
---|---|
JAVA_HOME | D:\jdk1.8 |
JENNIFER_DATA_SERVER_HOME | D:\work\jennifer5\server.data |
JENNIFER_DATA_SERVER_CONF | %JENNIFER_DATA_SERVER_HOME%\conf\server_data.conf |
JENNIFER_DATA_SERVER_LOG_CONF | %JENNIFER_DATA_SERVER_HOME%\conf\logback.xml |
rem ---------------------------------------------------------------------- rem ----- Customizable Variables ----------------------------------------- rem ---------------------------------------------------------------------- set JAVA_HOME=D:\jdk1.8 set JENNIFER_DATA_SERVER_HOME=D:\work\jennifer5\server.data set JENNIFER_DATA_SERVER_CONF=%JENNIFER_DATA_SERVER_HOME%\conf\server_data.conf set JENNIFER_DATA_SERVER_LOG_CONF=%JENNIFER_DATA_SERVER_HOME%\conf\logback.xml rem ----------------------------------------------------------------------
データサーバの設定オプション
データの保存場所や、ポートの設定などのデータサーバ用の基本設定を行います。設定ファイルはデータサーバのホームディレクトリ配下のconf/server_data.confに配置します。ファイル名とファイル位置は変更できます。初期設定が必要なオプションは次の通りです。
設定 | 初期値 | 説明 |
---|---|---|
db_path | ../db_data | 性能データを保存するディレクトリ |
listen_port | 5000 | データサーバのリスニングポート |
db_path=../db_data listen_port=5000
・データサーバがバインドした5000ポートで、エージェントとビューサーバと通信します。
・構成ファイル内のディレクトリセパレータとして、「\」ではなく「/」を使用します。
・初期設定を変更しないときは修正する必要はありません。
データサーバの開始
データサーバ配下のbinディレクトリに移動します。
>cd D:\work\jennifer5\server.data\bin
binディレクトリで、startup_data.batを実行します。
D:\work\jennifer5\server.data\bin>startup_data.bat
データサーバが正常に開始したことを確認します。正常に開始すると、下記のようなログ(%JENNIFER_DATA_SERVER_HOME%¥logs¥server.data.yyyy-mm-dd.log)が出力されます。
2016-05-19 16:08:15.460 [main] INFO com.jennifersoft.data.Main - Using JRE: D:\jdk1.8\jre 2016-05-19 16:08:15.491 [main] INFO com.jennifersoft.data.Main - Jennifer data server home: D:\work\jennifer5\server.data 2016-05-19 16:08:15.491 [main] INFO com.jennifersoft.data.ConfigManager - Load configuration: D:\work\jennifer5\server.data\conf\server_data.conf 2016-05-19 16:08:15.491 [main] INFO com.jennifersoft.data.Main - Database path: D:\work\jennifer5\server.data\db_data 2016-05-19 16:08:15.491 [main] INFO com.jennifersoft.data.Main - Data server version: 5.0.15.1 2016-05-19 16:08:15.491 [main] INFO com.jennifersoft.data.Main - System property: user.timezone=Asia/Tokyo,file.encoding=UTF-8 2016-05-19 16:08:15.507 [Global Timer:Running:com.jennifersoft.data.mng.DomainListLogger$1] INFO c.j.data.mng.DomainListLogger$1 - Available domain: None 2016-05-19 16:08:15.679 [main] INFO com.jennifersoft.data.Main$2 - Data server startup. address=/0:0:0:0:0:0:0:0, port=5000
ビューサーバを接続すると、下記のようなログが作成されます。
2016-05-19 16:11:51.031 [:ME:CommandMultiplexer:Running:com.jennifersoft.data.nio.DataServerProtocol$1$1$1@2a88cb57] INFO c.j.d.n.ViewServerSessionCreationHandler - View server session is created. domainId=1000, connection=Local:127.0.0.1:5000-Remote:127.0.0.1:9599
エージェントを接続すると、下記のようなログが作成されます。
2016-05-19 16:16:41.149 INFO Agent session is created. domainId=1000, instanceId=10000(generated), version=5.0.15.1, connection=Local:192.168.1.77:5000-Remote:192.168.1.77:9653
データサーバをWindowsサービスとして登録
管理者権限でコマンドプロンプトを実行します。
データサーバ配下のbinディレクトリに移動して、reg_service.batを実行します。
D:\work\jennifer5\server.data\bin>reg_service.bat
登録するサービス名の初期設定値は"jennifer_data"です。登録するサービス名を変更する場合は以下のINIファイルをデータサーバ配下のbinディレクトリに作成します。
jenniferdata64.ini
作成したiniファイルを開いて次のように記述します。サービス名はserviceNameに指定します。
[default] serviceName=jennifer_data servicePath=jennifer_data.bat
serviceNameの値を変更後、reg_service.batを実行すると、指定したサービス名でWindowsサービスに登録されます。
reg_service.batでWindowsサービスに登録するときには基本的にWindowsの環境変数のPATHにJAVA_HOMEが登録されているかをチェックします。JAVA_HOMEが登録されていないとWindowsサービスに正常に登録できません。Windows環境変数のチェックをスキップする場合は"reg_service.bat -nc"のように"-nc"オプションを利用し実行してください。
データサーバの停止
データサーバ配下のbinディレクトリに移動します。
>cd D:\work\jennifer5\server.data\bin
binディレクトリで、shutdown_data.batを実行します。
D:\work\jennifer5\server.data\bin> shutdown_data.bat
データサーバが正常に停止すると、下記のようなログが出力されます。
2016-05-19 17:52:50.739 [main] INFO com.jennifersoft.data.Main - Using JRE: D:\jdk1.8\jre 2016-05-19 17:52:50.755 [main] INFO com.jennifersoft.data.Main - Jennifer data server home: D:\work\jennifer5\server.data 2016-05-19 17:52:50.755 [main] INFO com.jennifersoft.data.ConfigManager - Load configuration: D:\work\jennifer5\server.data\conf\server_data.conf 2016-05-19 17:52:50.755 [main] INFO com.jennifersoft.data.Main - Database path: D:\work\jennifer5\server.data\db_data 2016-05-19 17:52:51.844 [main] INFO com.jennifersoft.data.Main - Shutting down... 2016-05-19 17:52:51.845 [main] INFO com.jennifersoft.data.Main - Shutdown is done
データサーバが処理中のスレッドを全て正常に閉じてからデータサーバを停止しなければなりません。データが損傷する可能性があるため、データサーバの強制終了は推奨しません。
データサーバのログ管理
データサーバは収集したデータとは別にデータサーバ自体の動作状況をログファイルに記録します。日付単位でログを記録し、デフォルトでは30日分のログファイルを保存します。
このログファイルの保存件数を管理するときはJENNIFER_DATA_SERVER_HOME/confにあるlogback.xmlファイルを修正します。
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <fileNamePattern>${log_dir}/server.data.%d{yyyy-MM-dd}.log</fileNamePattern> <maxHistory>30</maxHistory> </rollingPolicy>
上記の<maxHistory>の値がログファイルの最大保存数です。デフォルトは30であり、30日分のログファイルを保存します。ログファイルの数が30個を超えたときは最も古いファイルから削除して行きます。