3.9. システムプロパティー

Java システムプロパティーを使用すると、JBoss EAP の多くのオプションや、アプリケーションサーバー内で使用する名前と値のペアを設定することができます。

システムプロパティーを使用して JBoss EAP 設定のデフォルトの値を上書きできます。たとえば、以下のパブリックインターフェイスバインドアドレスの XML 設定は、jboss.bind.address システムプロパティーによる設定が可能で、このシステムプロパティーが提供されないとデフォルトで 127.0.0.1 が使用されることを表しています。

<inet-address value="${jboss.bind.address:127.0.0.1}"/>

JBoss EAP でシステムプロパティーを設定する方法は複数あり、以下の方法が含まれます。

JBoss EAP のマネージドドメインを使用する場合、ドメイン全体、特定のサーバーグループ、特定のホストとそのすべてのサーバーインスタンス、または 1 つのサーバーインスタンスにシステムプロパティーを適用できます。他の多くの JBoss EAP ドメイン設定と同様に、より具体的なレベルで設定されたシステムプロパティーはより抽象的なものを上書きします。詳細は ドメイン管理 の章を参照してください。

起動スクリプトにシステムプロパティーを渡す

JBoss EAP 起動スクリプトにシステムプロパティーを渡すには -D 引数を使用します。以下に例を示します。

$ EAP_HOME/bin/standalone.sh -Djboss.bind.address=192.168.1.2

このシステムプロパティーの設定方法は、JBoss EAP が起動する前に JBoss EAP のオプションを設定する必要がある場合に便利です。

管理 CLI を使用したシステムプロパティーの設定

管理 CLI で以下の構文を使用すると、システムプロパティーを設定できます。

/system-property=PROPERTY_NAME:add(value=PROPERTY_VALUE)

以下に例を示します。

/system-property=jboss.bind.address:add(value=192.168.1.2)

管理 CLI を使用してシステムプロパティーを設定する場合、一部の JBoss EAP オプション (上記の例の jboss.bind.address など) を有効にするにはサーバーの再起動が必要です。

マネージドドメインの場合、上記の例はドメイン全体のシステムプロパティーを設定しますが、ドメイン設定のより具体的なレベルでシステムプロパティーを設定または上書きすることもできます。

管理コンソールを使用したシステムプロパティーの設定

  • スタンドアロン JBoss EAP サーバーでは、管理コンソールの Configuration タブでシステムプロパティーを設定できます。System Properties を選択し、表示 ボタンをクリックします。
  • マネージドドメインの場合:

    • ドメインレベルのシステムプロパティーは Configuration タブで設定できます。System Properties を選択し、表示 ボタンをクリックします。
    • サーバーグループおよびサーバーレベルのシステムプロパティーは Runtime タブで設定できます。設定するサーバーグループまたはサーバーを選択し、サーバーグループまたはサーバー名の横にある 表示 ボタンをクリックした後、System Properties タブを選択します。
    • ホストレベルのシステムプロパティーは Runtime タブで設定できます。設定するホストを選択し、ホスト名の横にあるドロップダウンメニューで Properties を選択します。

<ph x="1"/>

システムプロパティーは JAVA_OPTS 環境変数を使用して設定することもできます。JAVA_OPTS を編集する方法は多くありますが、JBoss EAP では JBoss EAP のプロセスで使用される JAVA_OPTS を設定する設定ファイルが提供されます。

スタンドアロンサーバーの場合、このファイルは EAP_HOME/bin/standalone.conf になります。マネージドドメインの場合は、EAP_HOME/bin/domain.conf になります。Microsoft Windows システムではこれらのファイルに .bat 拡張子が付きます。

注記

RPM インストールの場合、RPM サービス設定ファイルJAVA_OPTS を編集してシステムプロパティーを設定することが推奨されます。RPM サービスプロパティーの設定 を参照してください。

適切な設定ファイルで JAVA_OPTS にシステムプロパティー定義を追加します。以下は、Red Hat Enterprise Linux システムでバインドアドレスを設定する例になります。

  • standalone.conf では、JAVA_OPTS システムプロパティー定義をファイルの最後に追加します。以下に例を示します。

    ...
    # Set the bind address
    JAVA_OPTS="$JAVA_OPTS -Djboss.bind.address=192.168.1.2"
  • domain.conf では、プロセスコントローラーの JAVA_OPTS 設定の前に JAVA_OPTS を設定する必要があります。以下に例を示します。

    ...
    # Set the bind address
    JAVA_OPTS="$JAVA_OPTS -Djboss.bind.address=192.168.1.2"
    
    # The ProcessController process uses its own set of java options
    if [ "x$PROCESS_CONTROLLER_JAVA_OPTS" = "x" ]; then
    ...

MODULE_OPTS 環境変数を使用した Java エージェントの追加

MODULE_OPTS=-javaagent:my-agent.jar 環境変数を使用して、起動スクリプトを編集せずに Java エージェントを JBoss Modules に直接追加できます。これにより、ログの設定後にエージェントが初期化されます。以前は、ブートクラスパスでログマネージャーが必要でした。

スタンドアロンサーバーでは、以下のファイルに MODULE_OPTS 環境変数を設定できます。

  • RHEL では、起動スクリプトは EAP_HOME/bin/standalone.conf ファイルを使用します。
  • Windows サーバーで、コマンドプロンプトで EAP_HOME\bin\standalone.bat ファイルを使用します。
  • Windows サーバーで、PowerShell で EAP_HOME\bin\standalone.ps1 ファイルを使用します。

ドメインのサーバーでは、module-options 属性をホスト JVM 設定またはサーバー JVM 設定に追加できます。