読み取り専用ファイル・システムへの製品バイナリー・ファイルおよび共有リソースの配置をサポートする特定の変数を使用して、 Liberty 環境をカスタマイズできます。
このタスクについて
Liberty サーバーを手動でカスタマイズするための資料は、 Open Liberty Web サイトから入手できます。
以下のリストの Liberty 固有の環境変数を server.env ファイルで構成して、 Liberty 環境をカスタマイズすることができます。 ${wlp.install.dir}
構成変数には、推定されるロケーションが使用され、常に、起動スクリプトを含んでいるディレクトリーの親に設定されます。
JVM_ARGS
この環境変数を使用して、サーバーの始動時に JVM に渡されるコマンド行オプション (システム・プロパティーや -X パラメーターなど) のリストを指定できます。 スペースを含む値は、引用符で囲む必要があります。
WLP_USER_DIR
この環境変数を使用して、${wlp.user.dir}
の代替ロケーションを指定できます。 この変数は、絶対パスでなければなりません。 この変数を指定した場合、ランタイム環境は、指定されたディレクトリーで共有リソースおよびサーバー定義を探します。 ${server.config.dir}
は ${wlp.user.dir}
/servers/serverName と等価です。 この環境変数が指定されない場合、${wlp.user.dir}
は ${wlp.install.dir}/usr
に設定されます。
WLP_OUTPUT_DIR
この環境変数は、ログ、workarea ディレクトリー、および生成されたファイルなどの、サーバーが生成した出力の代替ロケーションを指定するために使用できます。 logs ディレクトリー内のファイルには、console.log、messages.log、およびすべての生成された FFDC ファイルを含めることができます。 生成されたファイルには、server dump コマンドまたは server javadump コマンドを使用して作成されるサーバー・ダンプを含めることができます。 この変数は、絶対パスでなければなりません。 この環境変数が指定された場合、${server.output.dir}
は、WLP_OUTPUT_DIR
/serverName と等価になるように設定されます。 この環境変数が指定されない場合、${server.output.dir}
は ${server.config.dir}
と同じです。
サーバー・コマンドが使用される場合、サーバー・プロセスは出力ディレクトリーを現行作業ディレクトリーとして使用します。
WLP_DEBUG_ADDRESS
この環境変数を使用して、デバッグ・モードでサーバーを実行する場合の代替ポートを指定できます。 デフォルト値は 7777 です。 Liberty がサーバー・コマンドからデバッグ・モードで実行される場合、以下の値が設定されます JAVA_DEBUG="-Dwas.debug.mode=true
-Dcom.ibm.websphere.ras.inject.at.transform=true
-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=${WLP_DEBUG_ADDRESS}"
。 ただし、 ws-server.jar 実行可能 JAR ファイルまたは組み込み Liberty サーバー SPI から Liberty を実行する場合は、同じ設定を使用して Libertyのデバッグ・モードを有効にする必要があります。
LIBPATH
この環境変数を使用して、Liberty server.env ファイル内でライブラリーへのパスの設定を指定できます。
server.env ファイルで WLP_OUTPUT_DIR
、 WLP_USER_DIR
、および WLP_DEBUG_ADDRESS
環境変数を指定できます。 また、jvm.options ファイルで JVM オプションを指定することもできます。 server.env ファイルと jvm.options ファイルは両方とも、サーバー管理スクリプトを使用した場合にのみ機能します。 ws-server.jar 実行可能 JAR ファイルを使用してサーバーを起動する場合、これらのファイルはサポートされません。
手順
- server.env ファイルを使用して環境変数を指定します。
インストール・レベルおよびサーバー・レベルの
server.env を使用して、
JAVA_HOME
、
WLP_USER_DIR
、および
WLP_OUTPUT_DIR
などの環境変数を指定できます。 例:
# Use a specific Java binary
JAVA_HOME=/opt/ibm/java-i386-60/jre
# JAVA_HOME=c:\Java
注:
- server.env ファイルは、
key=value
のペアのみをサポートします。
- 空の行と、番号記号 (#) で始まる行は無視されます。
- 感嘆符 (!) のような変数拡張文字をエスケープするためにキャレットを使用する場合の Windows のキャレット (^) を除き、すべての文字はリテラルです。
- 等号 (=) の前後にブランク・スペースがあってはなりません。
- バージョン 21.0.0.12 以前の Linux システムでは、シェルおよび変数拡張はサポートされていません。 Windows または Linux (バージョン 22.0.0.1 以降) での拡張変数の使用については、 Open Liberty Web サイトの 拡張変数 を参照してください。
WLP_USER_DIR
は、残りの構成が配置されている場所を指定することが目的であるため、この変数は
${wlp.install.dir}/etc/server.env ファイルにのみ指定することができます。 残りの構成が検出されてマージされると、他のロケーションにさらに構成があることは想定されず、また、そうした構成はサポートされません。
サーバー管理スクリプトは、2 カ所で server.env ファイルを検索します。${wlp.install.dir}
/etc/server.env ファイルおよび ${server.config.dir}
/server.env です。 両方のファイルが存在する場合、2 つのファイルの内容はマージされます。その際、サーバー・レベル・ファイル内の値が、ランタイム・レベル・ファイルの値よりも優先されます。
シェル環境でこれらの環境変数を指定することもできますが、server.env ファイルが環境変数よりも優先されます。
- jvm.options ファイルを使用して JVM オプションをカスタマイズします。
ランタイム・レベルおよびサーバー・レベルの
jvm.options ファイルを使用して、
-X 引数などの追加的なサーバー始動オプションを指定できます。 それらのオプションは、サーバー管理スクリプトを通じて始動アクション、実行アクション、およびデバッグ・アクションが開始されたときに適用されます。 オプションは必ず 1 行に 1 つのみ指定してください。 例:
# Set the maximum heap size to 1024m.
-Xmx1024m
# Set a system property.
-Dcom.ibm.example.system.property=ExampleValue
# Enable verbose output for class loading.
-verbose:class
# Enable verbose garbage collection.
-verbose:gc
# Specify an alternate verbose garbage collection log on IBM Java Virtual Machines only.
-Xverbosegclog:verbosegc.log
# Specify additional verbose garbage collection options on HotSpot Java Virtual Machines only.
-Xloggc:verbosegc.log
-XX:+PrintGCDetails
-XX:+PrintGCTimeStamps
-XX:+PrintHeapAtGC
以下のロケーションで、複数の
jvm.options ファイルを作成することができます。
${wlp.install.dir}/usr/shared/jvm.options
${server.config.dir}/configDropins/defaults/jvm.options
${server.config.dir}/jvm.options
${server.config.dir}/configDropins/overrides/jvm.options
これらのファイルは、サーバーの始動前にこのリストの先頭から最後まで順にマージされ、サーバーの JVM オプションとして使用されます。 これらのファイルのいずれも存在しない場合は、
${wlp.install.dir}/etc/jvm.options
が読み取られます。
注:
- プロパティー値を引用符で囲まないでください。
- 空の行と、番号記号 (#) で始まる行は無視されます。
- 感嘆符 (!) のような変数拡張文字をエスケープするためにキャレットを使用する場合の Windows のキャレット (^) を除き、すべての文字はリテラルです。
- 等号 (=) の前後にブランク・スペースがあってはなりません。
- バージョン 21.0.0.12 以前の Linux システムでは、シェルおよび変数拡張はサポートされていません。 Windows または Linux (バージョン 22.0.0.1 以降) での拡張変数の使用については、 Open Liberty Web サイトの 拡張変数 を参照してください。
次の作業
サーバー・スクリプトを使用して Liberty サーバーを始動すると、現行セッションのすべてのオペレーティング・システム環境変数が使用可能になります。 MBean または 管理センターのいずれかを使用してサーバーを始動する場合、使用可能な環境変数は、そのシステムで実行されているリモート・コマンドで使用可能な環境変数のみです。