15. コンテナイメージ作成

15.1. 概要

マイクロサービスは基本的に Docker コンテナとして提供されます。
このため、WebOTX でマイクロサービスを構築する場合も Docker コンテナ上で動作することを想定しています。
マイクロサービスは、この Docker コンテナ毎に機能が分化され、提供されるものです。
下記にマイクロサービスパッケージの生成からマイクロサービスの配布と構築までを示します。


図15.1-1

上記状態下において、WebOTX が提供するマイクロサービスはコンテナ上で動作することとなります。

15.2. 前提条件

WebOTX のマイクロサービスパッケージは、WebOTX Developer を使用して作成します。
作成したマイクロサービスパッケージの実行環境は、Red Hat OpenShift Container Platform です。

15.3. マイクロサービスパッケージの作成

15.3.1. 機能概要

マイクロサービスパッケージを作成する方法は下記の2パターンがあります。
マイクロサービスプロジェクト作成後、エクスポートすることでマイクロサービスパッケージを作成します。


図15.3-1

15.3.2. 利用手順

15.3.2.1. マイクロサービスプロジェクトの新規作成
WebOTX Developer を使用して、マイクロサービスプロジェクトを新規作成します。

Windows のスタートメニューより、WebOTX Developer を起動し、 メニュー ファイル > 新規 > その他 を選択し、新規ウィザード選択を表示します。
ウィザード選択で マイクロサービス > マイクロサービスプロジェクト を選択し、次へをクリックします。


図15.3.2.1-1


プロジェクトウィザードでプロジェクト名を入力し、次へをクリックします。


図15.3.2.1-2

プロファイル設定ウィザードでマイクロサービスプロファイルの参照をクリックして、マイクロサービスプロファイルを選択します。
アプリケーションファイル(warファイル)の追加をクリックして、アプリケーションファイルを選択します。
アプリケーションが使用するライブラリ(jarファイル)が存在する場合は、追加をクリックして、ライブラリファイルを選択します。
プロファイル設定の入力を行ったら、次へをクリックします。 以降の設定が必要ない場合は、終了をクリックします。


図15.3.2.1-3

WebOTX関連設定ウィザードで、ユーザドメインポート番号、HTTPポート番号、HTTPプロトコル、HTTP活性状態、HTTPSポート番号、 HTTPSプロトコル、HTTPS活性状態の各項目に変更がある場合は、変更を行います。
JVMオプションの追加が必要な場合は、JVMオプションの追加をクリックすることで、JVMオプションの追加ができます。
JDBCデータソースの登録が必要な場合は、JDBCデータソースの追加をクリックすることで、JDBCデータソースの追加ができます。
WebOTX関連設定の入力を行ったら、次へをクリックします。 以降の設定が必要ない場合は、終了をクリックします。


図15.3.2.1-4

オプション設定ウィザードで、Dockerファイル、起動スクリプト、ユーザ設定ファイルの各参照をクリックし、ファイルを選択します。 オプション設定の入力を行ったら、終了をクリックします。


図15.3.2.1-5

各ウィザードで入力した情報を元に、マイクロサービスプロジェクトが新規作成されます。


図15.3.2.1-6

マイクロサービスプロジェクトの作成が完了した後、エクスポートを実施することでマイクロサービスパッケージを作成します。
エクスポートの手順については、[マイクロサービスプロジェクトのエクスポート]を参照してください。
15.3.2.2. マイクロサービスプロジェクトに変換
WebOTX Developer を使用して、マイクロサービスプロジェクト以外のプロジェクトをマイクロサービスプロジェクトに変換します。
変換方法は下記の2パターンがあります。
マイクロサービスプロジェクトに変換後、エクスポートすることでマイクロサービスパッケージを作成します。
変換方法1
WebOTX Developer を使用して、メニューから「マイクロサービスプロジェクトに変換」を選択し、マイクロサービスプロジェクトに変換します。

マイクロサービスプロジェクトに変換するプロジェクトをプロジェクト・エクスプローラーから選択します。


図15.3.2.2-1

右クリック メニュー > マイクロサービスプロジェクトに変換 を選択します。


図15.3.2.2-2

プロファイル設定ウィザードでマイクロサービスプロファイルの参照をクリックして、マイクロサービスプロファイルを選択します。
アプリケーションファイル(warファイル)の追加をクリックして、アプリケーションファイルを選択します。
アプリケーションが使用するライブラリ(jarファイル)が存在する場合は、追加をクリックして、ライブラリファイルを選択します。
プロファイル設定の入力を行ったら、次へをクリックします。 以降の設定が必要ない場合は、終了をクリックします。


図15.3.2.2-3

WebOTX関連設定ウィザードで、ユーザドメインポート番号、HTTPポート番号、HTTPプロトコル、HTTP活性状態、HTTPSポート番号、 HTTPSプロトコル、HTTPS活性状態の各項目に変更がある場合は、変更を行います。
JVMオプションの追加が必要な場合は、JVMオプションの追加をクリックすることで、JVMオプションの追加ができます。
JDBCデータソースの登録が必要な場合は、JDBCデータソースの追加をクリックすることで、JDBCデータソースの追加ができます。
WebOTX関連設定の入力を行ったら、次へをクリックします。 以降の設定が必要ない場合は、終了をクリックします。


図15.3.2.2-4

オプション設定ウィザードで、Dockerファイル、起動スクリプト、ユーザ設定ファイルの各参照をクリックし、ファイルを選択します。 オプション設定の入力を行ったら、終了をクリックします。


図15.3.2.2-5

各ウィザードで入力した情報が、プロジェクトに反映されます。


図15.3.2.2-6

プロジェクトの変換が完了した後、エクスポートを実施することでマイクロサービスパッケージを作成します。
エクスポートの手順については、[マイクロサービスプロジェクトのエクスポート]を参照してください。
変換方法2
WebOTX Developer を使用して、プロパティからプロジェクト・ファセットを選択し、マイクロサービスプロジェクトに変換します。

マイクロサービスプロジェクトに変換するプロジェクトをプロジェクト・エクスプローラーから選択します。


図15.3.2.2-7

プロジェクト選択を右クリック メニュー > プロパティ を選択します。


図15.3.2.2-8

プロパティで プロジェクト・ファセット を選択、マイクロサービス をチェック、 Further configuration required... をクリックします。


図15.3.2.2-9

プロファイル設定ウィザードでマイクロサービスプロファイルの参照をクリックして、マイクロサービスプロファイルを選択します。
アプリケーションファイル(warファイル)の追加をクリックして、アプリケーションファイルを選択します。
アプリケーションが使用するライブラリ(jarファイル)が存在する場合は、追加をクリックして、ライブラリファイルを選択します。
プロファイル設定の入力を行ったら、次へをクリックします。 以降の設定が必要ない場合は、OKをクリックします。


図15.3.2.2-10

WebOTX関連設定ウィザードで、ユーザドメインポート番号、HTTPポート番号、HTTPプロトコル、HTTP活性状態、HTTPSポート番号、 HTTPSプロトコル、HTTPS活性状態の各項目に変更がある場合は、変更を行います。
JVMオプションの追加が必要な場合は、JVMオプションの追加をクリックすることで、JVMオプションの追加ができます。
JDBCデータソースの登録が必要な場合は、JDBCデータソースの追加をクリックすることで、JDBCデータソースの追加ができます。
WebOTX関連設定の入力を行ったら、次へをクリックします。 以降の設定が必要ない場合は、OKをクリックします。


図15.3.2.2-11

オプション設定ウィザードで、Dockerファイル、起動スクリプト、ユーザ設定ファイルの各参照をクリックし、ファイルを選択します。 オプション設定の入力を行ったら、OKをクリックします。


図15.3.2.2-12

プロパティで 適用して閉じる をクリックします。


図15.3.2.2-13

各ウィザードで入力した情報が、プロジェクトに反映されます。


図15.3.2.2-14

プロジェクトの変換が完了した後、エクスポートを実施することでマイクロサービスパッケージを作成します。
エクスポートの手順については、[マイクロサービスプロジェクトのエクスポート]を参照してください。
15.3.2.3. マイクロサービスプロジェクトのエクスポート
WebOTX Developer を使用して、作成されたマイクロサービスプロジェクトをマイクロサービスパッケージとしてエクスポートします。

マイクロサービスパッケージとしてエクスポートするマイクロサービスプロジェクトを選択します。


図15.3.2.3-1

右クリック メニュー > エクスポート をクリックします。


図15.3.2.3-2

エクスポートウィザードの選択より、マイクロサービス > マイクロサービスプロジェクト を選択し、 次へ をクリックします。


図15.3.2.3-3

マイクロサービスパッケージウィザードでエクスポート先ファイルの参照をクリックして入力し、次へをクリックします。


図15.3.2.3-4

プロファイル設定ウィザードでマイクロサービスプロファイルの変更がある場合は、参照をクリックして、変更するプロファイルを選択します。
アプリケーションのリストよりエクスポートしないアプリケーションがある場合は、チェックを未選択にします。
ライブラリのリストよりエクスポートしないライブラリがある場合は、チェックを未選択にします。 プロファイル設定の入力を行ったら、次へをクリックします。


図15.3.2.3-5

WebOTX関連設定ウィザードで、、ユーザドメインポート番号、HTTPポート番号、HTTPプロトコル、HTTP活性状態、HTTPSポート番号、 HTTPSプロトコル、HTTPS活性状態の各項目に変更がある場合は、変更を行います。
JVMオプションの変更が必要な場合は、JVMオプションの追加または削除をクリックすることで、JVMオプションの変更を行います。
JDBCデータソースの変更が必要な場合は、JDBCデータソースの追加または削除をクリックすることで、JDBCデータソースの変更を行います。
WebOTX関連設定の入力を行ったら、次へをクリックします。 以降の設定が必要ない場合は、終了をクリックします。


図15.3.2.3-6

オプション設定ウィザードで、Dockerファイル、起動スクリプト、ユーザ設定ファイルの変更がある場合は、各参照をクリックし、ファイルを選択します。 オプション設定の入力を行ったら、終了をクリックします。


図15.3.2.3-7

確認ダイアログでエクスポートウィザードで設定した内容を保存する場合は、はいをクリックします。


図15.3.2.3-8

マイクロサービスパッケージのエクスポートが完了すると元の画面に戻り、エクスポート先ファイルで指定したディレクトリにマイクロサービスパッケージが作成されます。


図15.3.2.3-9

確認ダイアログではいをクリックした際、マイクロサービスビルドツールで一定の時間が経過すると元の画面に戻らずに下記のエラーメッセージ(タイムアウト)が表示されます。


図15.3.2.3-10

上記、タイムアウトのエラーメッセージが表示された場合、設定ファイル(eclipse.ini)に下記、タイマー用のシステムプロパティを設定することでエラーを回避することが可能です。

-Dcom.nec.webotx.microservice.checkmaxtime=XXX

XXX を秒で設定してください。マイクロサービスパッケージの作成が完了するか、設定した時間が経過するまでエクスポートが継続します。

(例)タイマー値を300秒(5分)に設定する場合

-Dcom.nec.webotx.microservice.checkmaxtime=300

Memo
タイマー用のシステムプロパティの設定は任意です。未設定の場合、デフォルト値は 120秒(2分)となります。
本システムプロパティを設定した場合、設定を有効にするには、WebOTX Developer の再起動が必要となります。

15.4. マイクロサービスビルドツール

15.4.1. 機能概要

マイクロサービスビルドツール(MS-Build-Tool)は、マイクロサービスプロファイル、アプリケーションファイル(warファイル)、設定情報の3つによりマイクロサービスパッケージを生成します。


マイクロサービスビルドツールの論理構造

図15.4.1-1

Memo
マイクロサービスパッケージの出力は、基本的に WebOTX Developer のマイクロサービスプロジェクトのエクスポート機能で行いますが、マイクロサービスビルドツールのコマンドによる出力も可能です。
コマンドによる実行方法については、[コマンドによる実行方法]を参照してください。

15.4.2. 利用手順

15.4.2.1. マイクロサービスビルドツールのファイル構成
マイクロサービスビルドツールのファイル構成はマイクロサービスプロファイルのディレクトリ、 コマンドライン実行用のスクリプトのディレクトリ、マイクロサービスパッケージを生成する際の設定情報のディレクトリ、 ツールが使用する実行ライブラリのディレクトリで構成されています。

マイクロサービスビルドツールのディレクトリ構成図を以下に示します。

マイクロサービスビルドツールのファイル構成

図15.4.2.1-1
15.4.2.2. マイクロサービスプロファイルの展開

インストーラ、あるいは任意のリポジトリからユーザがダウンロードしたマイクロサービスプロファイルのファイルをマイクロサービスパッケージとし展開します。

マイクロサービスプロファイルの展開イメージ図を以下に示します。

マイクロサービスプロファイルの展開

図15.4.2.2-1
15.4.2.3. アプリケーションの配置

利用者がコンパイルしてパッケージングしたアプリケーション(*.war)をマイクロサービスパッケージに配置します。
コマンドオプションのファイル指定は相対パスまたは絶対パスで指定可能です。マイクロサービスビルドツールでは、相対パス指定はコマンドの実行ディレクトリをカレントとする相対パスとなります。

アプリケーション(*.war)の配置イメージ図を以下に示します。

アプリケーションの配置

図15.4.2.3-1
15.4.2.4. ライブラリの配置

アプリケーションファイル(*.war)が使用するライブラリファイル(*.jar)をマイクロサービスパッケージに配置します。
コマンドオプションのファイル指定は相対パスまたは絶対パスで指定可能です。マイクロサービスビルドツールでは、相対パス指定はコマンドの実行ディレクトリをカレントとする相対パスとなります。

ライブラリファイル(*.jar)の配置イメージ図を以下に示します。

ライブラリの配置

図15.4.2.4-1
15.4.2.5. 設定ファイルの反映

マイクロサービスパッケージの domain.xml へ設定を反映します。変更する設定値は key-value 形式の設定ファイル config.properties から読み込みます。
設定ファイル config.properties の設定値については、[設定値の変更]を参照してください。
config.properties ファイルの指定がない場合は、マイクロサービスビルドツールに格納された既定の設定ファイル default-config.properties を使用します。

設定ファイルの反映イメージ図を以下に示します。

設定ファイルの反映

図15.4.2.5-1
15.4.2.6. 任意設定ファイルの配置

マイクロサービス向け任意設定ファイル(リモートコマンドの羅列)をマイクロサービスパッケージに配置します。本オプションを省略した場合、任意設定ファイルは配置しません。

マイクロサービス向け任意設定ファイルの配置イメージ図を以下に示します。

任意設定ファイルの配置

図15.4.2.6-1
15.4.2.7. 起動スクリプトの配置

起動スクリプト(ドメインの起動+プロセス監視)のファイルをマイクロサービスパッケージに配置します。 ドメインの起動+プロセス監視を行うことを目的とした起動スクリプトのファイルパスを指定します。
コマンドオプションを指定された場合は、予めマイクロサービスプロファイルに含まれる同ファイルを上書きします。 コマンドオプションのファイル指定は相対パスまたは絶対パスで指定可能です。マイクロサービスビルドツールでは、相対パス指定はコマンドの実行ディレクトリをカレントとする相対パスとなります。

起動スクリプトの配置イメージ図を以下に示します。

起動スクリプトの配置

図15.4.2.7-1
15.4.2.8. Dockerファイルの配置

Docker コンテナを構成する Docker ファイルをマイクロサービスパッケージに配置します。 コマンドオプション(--docker-setting)で指定された場合は、その Docker ファイルを配置します。
コマンドオプションが省略された場合は既定ファイル${TOOL_DIR}/config/default-Docker.templateを Docker ファイルとして配置します。 コマンドオプションのファイル指定は相対パスまたは絶対パスで指定可能です。マイクロサービスビルドツールでは、相対パス指定はコマンドの実行ディレクトリをカレントとする相対パスとなります。

Docker コンテナを構成する Docker ファイルの配置イメージ図を以下に示します。

起動スクリプトの配置

図15.4.2.8-1
15.4.2.9. マイクロサービスパッケージのアーカイブ

「マイクロサービスプロファイルの展開」の章で展開したマイクロサービスパッケージに、「アプリケーションの配置」の章から「Dockerファイルの配置」の章の各配置及びファイル設定を行った後、 マイクロサービスパッケージを zip 形式でアーカイブして出力します。 コマンドオプションのファイル指定は相対パスまたは絶対パスで指定可能です。マイクロサービスビルドツールでは、相対パス指定はコマンドの実行ディレクトリをカレントとする相対パスとなります。

15.4.2.10. コマンドによる実行方法

ここでは、マイクロサービスビルドツールでのコマンドによる実行方法を説明します。 コマンドによるマイクロサービスパッケージの作成は、Windows 環境、Linux 環境で可能です。

マイクロサービスビルドツールが、インストールされているディレクトリ(<WebOTXインストールディレクトリ>/Developer/ms-build-tool)を {TOOL_DIR} とし、 マイクロサービスプロファイル(${TOOL_DIR}/app-server/webotx-as-microprofile-1.2.zip)とアプリケーションファイル(${TOOL_DIR}/example.war)を使用して、マイクロサービスパッケージファイルを作成する場合のコマンド例を下記に示します。

  1. コマンドプロンプトを起動します。
  2. CD コマンドで ${TOOL_DIR} のディレクトリにカレントを移動します。
  3. 以下のコマンドを実行します。
    TOOL_DIR> .\bin\ms-build-tool.bat --app-server-name webotx-as-microprofile-1.2.zip --app-file example.war
  4. コマンド実行終了後、カレントディレクトリにマイクロサービスパッケージファイル(my-ms-webotx-as.zip)が出力されます。

Memo
マイクロサービスビルドツールのコマンド詳細については、[ その他機能 > マイクロサービスビルドツール]を参照してください。

15.4.3. 設定値の変更

設定ファイル(config.properties)に定義できるものは以下の通りです。
表15.4.3-1
プロパティ名 説明 既定値
server.admin-service.jmx-connector.system.port 運用管理エージェントによるJRMPを用いた運用制御。 6212
server.network-config.network-listeners.network-listener.http-listener-1.port Webサーバが利用するプロトコル。(HTTP) 80
server.network-config.network-listeners.network-listener.http-listener-2.port WebサーバによってWebクライアントとの間でSSLやTLSで暗号化されて通信するためのプロトコル。(HTTPS) 443
server.java-config.system-jvm-options システムが使用するJava VMオプションの追加。
server.java-config.system-jvm-optionsは複数設定が可能です。複数設定を行う場合は、カンマ(,)区切りで指定します。
server.java-config.system-jvm-optionsに”-Dlog4j2-as.logsdir=XXX”(XXXは任意の文字列)の文字列が設定されている場合、
domain.xmlの<system-jvm-options>の要素に設定されている文字列から”^-Dlog4j2-as.logsdir=.*”の正規表現に
合致する要素を検索して、その要素に設定ファイルの値を設定します。
”-Dlog4j2-as.logsdir=XXX”(XXXは任意の文字列)の文字列が設定されていない場合、
”-Dlog4j2-as.logsdir=${com.nec.webotx.instanceRoot}/logs”のデフォルト値を設定します。
-
server.network-config.protocols.protocol.http-protocol.http.version プロトコルバージョン(HTTP)を指定します。 HTTP1.1
server.network-config.protocols.protocol.https-protocol.http.version プロトコルバージョン(HTTPS)を指定します。 HTTP1.1
server.network-config.network-listeners.network-listener.http-litener-1.enabled http-litener-1のリスナの有効/無効化を指定します。
値の有効範囲:
TRUE
FALSE
TRUE
server.network-config.network-listeners.network-listener.http-litener-2.enabled http-litener-2のリスナの有効/無効化を指定します。 TRUE
server.network-config.network-listeners.network-listener.http-listener-1.protocol プロトコルの参照先1を指定します。 http-protocol
server.network-config.network-listeners.network-listener.http-listener-2.protocol プロトコルの参照先2を指定します。 https-protocol
server.resources.jdbc-datasource.'JNDI名'.jndiName JNDIサーバへの登録名(JDBCデータソースを一意に表わす名前)を指定します。[必須] -
server.resources.jdbc-datasource.'JNDI名'.dataSourceType JDBCドライバベンダが提供するインタフェースの種別を表わす文字列を指定します。[必須]
値の有効範囲:
JDBCEX_OracleOracleのJDBC Optional Package API
JDBCJDBC API
JDBCEX_DB2DB2のJDBC Optional Package API
JDBCEX_MSSqlServerMicrosoft SQL ServerのJDBC Optional Package API
JDBCEX_SybaseSybaseのJDBC Optional Package API
JDBCEX_CloudscapeCloudscapeのJDBC Optional Package API
JDBCEX_PostgreSQLPostgreSQLのJDBC Optional Package API
JDBCEX_SequeLinkSequeLinkのJDBC Optional Package API
JDBCEX_DerbyApache DerbyのJDBC Optional Package API
JDBCEX_CoreSaverCoreSaverのJDBC Optional Package API
-
server.resources.jdbc-datasource.'JNDI名'.jdbcMajorVersion JDBCドライバがサポートするJDBCのメジャーバージョン番号を指定します。
値の有効範囲:
2
3
4
4
server.resources.jdbc-datasource.'JNDI名'.jdbcMinorVersion JDBCドライバがサポートするJDBCのマイナーバージョン番号を指定します。
値の有効範囲:
0
1
0
server.resources.jdbc-datasource.'JNDI名'.useJTA JTAと連携するかどうかを表わすブール値を指定します。
値の有効範囲:
TRUE
FALSE
TRUE
server.resources.jdbc-datasource.'JNDI名'.description JDBCデータソースの説明(任意の文字列)を指定します。 -
server.resources.jdbc-datasource.'JNDI名'.dataSourceName JDBC URLまたはデータベース名、データソース名を指定します。 -
server.resources.jdbc-datasource.'JNDI名'.userName データベースと接続するためのユーザ名を指定します。 -
server.resources.jdbc-datasource.'JNDI名'.password データベースと接続するためのパスワードを指定します。 -
server.resources.jdbc-datasource.'JNDI名'.serverName データベースサーバのサーバ名を指定します。 -
server.resources.jdbc-datasource.'JNDI名'.portNumber データベースサーバのポート番号を指定します。 -
server.resources.jdbc-datasource.'JNDI名'.use-jmx-agent JMXエージェント上でロードするかどうかを指定します。
値の有効範囲:
TRUE
FALSE
TRUE
server.resources.jdbc-datasource.'JNDI名'.use-all-ejb-processgroups 全てのEJBプロセスグループで使用するかどうかを指定します。
値の有効範囲:
TRUE
FALSE
TRUE
server.resources.jdbc-datasource.'JNDI名'.minPoolSize プールに常時保持されるコネクション数を指定します。 4
server.resources.jdbc-datasource.'JNDI名'.maxPoolSize プールに保持される最大のコネクション数を指定します。 0
server.resources.jdbc-datasource.'JNDI名'.initialPoolSize プール生成時に作成されるコネクション数を指定します。 0
server.resources.jdbc-datasource.'JNDI名'.maxIdleTime コネクションが未使用状態のままプールされ続ける時間を指定します。(単位:秒) 0
server.resources.jdbc-datasource.'JNDI名'.propertyCycle 動作中のJDBCデータソースが使用するプロパティ値を強制的に変更するまでの待ち時間を指定します。(単位:秒) 0
server.resources.jdbc-datasource.'JNDI名'.resetAllConnectionsOnFailure コネクション障害発生時にプールの全コネクションを一括破棄するかどうかを表わすブール値を指定します。
値の有効範囲:
TRUE
FALSE
TRUE
server.resources.jdbc-datasource.'JNDI名'.reconnectInitialPool 初期接続の接続リトライを行うかどうかを表すブール値を指定します。
値の有効範囲:
TRUE
FALSE
TRUE
server.resources.jdbc-datasource.'JNDI名'.waitFreeConnTimeout 最大プール数のJDBCコネクションが全て使用中の場合に、空きコネクションが取得できるまで待ち合わせる時間を指定します。(単位:秒) 15
server.resources.jdbc-datasource.'JNDI名'.maxStatements ステートメントの最大プール数を指定します。 0
server.resources.jdbc-datasource.'JNDI名'.loginTimeout コネクション接続時のタイムアウト時間を指定します。(単位:秒) 0
server.resources.jdbc-datasource.'JNDI名'.connectRetryMax 接続失敗時のリトライ回数を指定します。 0
server.resources.jdbc-datasource.'JNDI名'.connectRetryInterval 接続失敗時のリトライ間隔を指定します。(単位:秒) 10
server.resources.jdbc-datasource.'JNDI名'.defaultAutoCommit コネクション払い出し直後の自動コミットの値を指定します。
値の有効範囲:
TRUE
FALSE
TRUE
server.resources.jdbc-datasource.'JNDI名'.shrinkDelayTime コネクション解放までの待ち合わせ時間を指定します。(単位:秒) 15
server.resources.jdbc-datasource.'JNDI名'.queryTimeout java.sql.Statementに指定するクエリのタイムアウト時間を指定します。(単位:秒) 0
server.resources.jdbc-datasource.'JNDI名'.readTimeout ソケットの読み取りタイムアウト時間を指定します。(単位:秒) 0
server.resources.jdbc-datasource.'JNDI名'.transactionIsolationLevel トランザクション遮断レベルを指定します。 0
server.resources.jdbc-datasource.'JNDI名'.checkGarbageOption コネクションのガベージコレクト機能の動作オプションを指定します。
値の有効範囲:
noneガベージコレクトの監視なし
closeJDBCコネクションの切断
rollbackJDBCコネクションの切断とロールバック
debugJDBCコネクションの切断とロールバック。リークに関する情報をログ出力。
none
server.resources.jdbc-datasource.'JNDI名'.checkGarbageInterval System.gc()を呼び出す間隔を指定します。(単位:秒) 0
server.resources.jdbc-datasource.'JNDI名'.checkServerOption データベースサーバの状態監視オプションを指定します。
値の有効範囲:
noneデータベースサーバの監視なし
monitor定期的にデータベースサーバの状態を確認
methodJDBCコネクションを払い出すたびにデータベースサーバの状態を確認
none
server.resources.jdbc-datasource.'JNDI名'.checkServerInterval データベースサーバの状態監視間隔を指定します。(単位:秒) 180
server.resources.jdbc-datasource.'JNDI名'.checkServerCommand データベースサーバの状態監視コマンドとして使用するSQL命令を指定します。 commit
server.resources.jdbc-datasource.'JNDI名'.useOneConnectionPerTransaction JTAのトランザクション毎に1つの物理コネクションを使用するかどうかを指定します。
値の有効範囲:
TRUE
FALSE
FALSE
server.resources.jdbc-datasource.'JNDI名'.useDatabaseCluster データベースのクラスタ構成サポート機能の使用有無を指定します。
値の有効範囲:
TRUE
FALSE
FALSE
server.resources.jdbc-datasource.'JNDI名'.useMultiUsersPerTransaction JTAのトランザクション内で、接続先が同じデータベースの、複数ユーザのJDBCコネクションを使用するかどうかを表すブール値を指定します。
値の有効範囲:
TRUE
FALSE
FALSE
server.resources.jdbc-datasource.'JNDI名'.clusterPoolOption コネクションプールのクラスタ動作オプションを指定します。
値の有効範囲:
noneコネクションプールのクラスタ動作なし
roundrobin複数のコネクションプールをラウンドロビンに使用する
standby障害検出時にコネクションプールを切り替える
none
server.resources.jdbc-datasource.'JNDI名'.clusterPoolNames コネクションプールのクラスタ対象のJDBCデータソース名リストを指定します。
JDBCデータソース名が複数ある場合は、カンマ(,)区切りの文字列で指定します。
例: jdbc/DB1,jdbc/DB2
-
server.resources.jdbc-datasource.'JNDI名'.validAllClusterConnectionsOnFailure 障害時に全てのデータベースと再接続を試みるかどうかを表すブール値を指定します。
値の有効範囲:
TRUE
FALSE
FALSE
server.resources.jdbc-datasource.'JNDI名'.clusterPoolWeight クラスタ機能のラウンドロビン呼び出しで、データベースサーバを連続して呼び出す回数を指定します。 1
server.resources.jdbc-datasource.'JNDI名'.maxSqlRankingCount SQLランキング情報で、ログに出力するランキングの数の上限を指定します。
値の有効範囲:
0-9999
20
server.resources.jdbc-datasource.'JNDI名'.maxSqlTraceLength SQLランキング情報で、ログに出力するSQL文字列の長さの上限(単位:バイト)を指定します。
値の有効範囲:
5-1000000
1024
server.resources.jdbc-datasource.'JNDI名'.wrapStatement java.sql.StatementクラスをWebOTXの実装クラスでラップするかどうかを指定します。
値の有効範囲:
TRUE
FALSE
FALSE
server.resources.jdbc-datasource.'JNDI名'.iPXdaConfigDirectoryName 定義ファイルの格納ディレクトリ名を指定します。 $INSTANCE_ROOT/config/iPXda
server.resources.jdbc-datasource.'JNDI名'.iPXdaConfigFileName 動作環境定義ファイル名を指定します。 DataAccessEnvConfig.xml
server.resources.jdbc-datasource.'JNDI名'.iPXdaInvokeConfigFileName トランザクション定義ファイル名を指定します。 DataAccessTrnsConfig.xml
server.resources.jdbc-datasource.'JNDI名'.iPXdaOptionConfigFileName オプション定義ファイル名を指定します。 AAT.properties
server.resources.jdbc-datasource.'JNDI名'.driverVenderProperties JDBCドライバの独自プロパティを指定します。
JDBCドライバの独自プロパティの名前と値の組み合わせを複数指定する場合は、カンマ(,)区切りの文字列で指定します。
例: property1=value1,property2=value2
-
server.resources.jdbc-datasource.'JNDI名'.property.jdbcDriverName データソースタイプがJDBCの場合にロードされる、JDBCドライバのクラス名を指定します。
-
server.resources.jdbc-datasource.'JNDI名'.property.networkProtocol データベースとの通信プロトコルを表わす文字列を指定します。 -
server.resources.jdbc-datasource.'JNDI名'.property.useStaticPool JDBCコネクションの共有範囲を表わすブール値を指定します。
値の有効範囲:
TRUE同一プロセス内のJDBCデータソース間でJDBCコネクションを共有します。
FALSEJDBCデータソースのインスタンス間でJDBCコネクションを共有しません。
TRUE
server.resources.jdbc-datasource.'JNDI名'.property.cursorMode データベースカーソルの利用有無を表わす文字列を指定します。
値の有効範囲:
cursorデータベースカーソルを利用します。
directデータベースカーソルを利用しません。
cursor
server.resources.jdbc-datasource.'JNDI名'.property.characterEncoding 文字列引数を送信する際の変換方法を表わす文字列を指定します。
値の有効範囲:
UnicodeUnicodeの文字列をそのまま送信します。
Defaultデータベースのデフォルトのcharacter encodingに従って変換した文字列を送信します。
Default
server.resources.jdbc-datasource.'JNDI名'.property.logLevel JDBCデータソースがAPサーバプロセス外で動作する際のログ出力レベルを指定します。
値の有効範囲:
info動作に関する重要な情報を標準出力に出力します。
debug動作に関する主な情報を標準出力に出力します。
traceトレース情報を標準出力に出力します。
test全ての情報を標準出力に出力します。
noneログを全く出力しません。
info
server.resources.jdbc-datasource.'JNDI名'.property.autoRecoveryOnOnePhaseCommit 2フェーズコミットで、dataSourceTypeの値がJDBCであるコネクションに対するコミットが失敗した場合に、 トランザクション全体を自動的にロールバックするかどうかを表わすブール値を指定します。
値の有効範囲:
TRUEトランザクション全体を自動的にロールバックします。
FALSEトランザクションの完了処理を保留します。
TRUE
server.resources.jdbc-datasource.'JNDI名'.property.jndiProviderUrl JNDIプロバイダのURLを指定します。clusterPoolOptionがnone以外で、リモートのJNDIサーバと接続する場合に指定します。
例:corbaname://hostname1
-
server.resources.jdbc-datasource.'JNDI名'.property.asyncCloseOnFailure 無応答障害など、復旧に時間がかかる障害発生時に、時間がかかるコネクションのクローズ処理を、アプリケーションの動作スレッドとは別のスレッドで非同期に行うかどうかのブール値を指定します。
値の有効範囲:
TRUE
FALSE
TRUE
server.resources.jdbc-datasource.'JNDI名'.property.asyncCloseEnableTime 復旧に時間がかかる障害とみなす時間(単位:秒)を指定します。 60

15.4.4. 任意の設定の反映

マイクロサービスでは、Docker コンテナ起動時に任意の otxadmin コマンドを実行して、WebOTX の設定を行うことができます。

この otxadmin コマンドは、マイクロサービスプロジェクトを新規作成、または、エクスポートする際の以下の画面で設定します。

設定ファイルには、otxadmin コマンドで実行するコマンドを 1 行ずつ記述します。 このコマンドには --user または --password は指定する必要はありません。

例えば、PostgreSQL サーバーとの連携のため、データソースを作成しておく必要がある場合は、 以下のように記述したファイルを作成し、上記画面の「ユーザ設定ファイル」で指定します。

create-jdbc-datasource --serverName postgres --portNumber 5432 --dataSourceType JDBCEX_PostgreSQL --jdbcUserName user01 --jdbcPassword user01 --dataSourceName sampledb jdbc/sample