第31章 JBoss EAP 5 の管理
31.1. JBoss EAP/AS 5 サーバーの検出
ほとんどの JBoss Enterprise Application Platform は、設定なしで子リソースの検出と監視を可能にする方法で設定されます。エージェントがリソースの検出および管理を試みる際に、一般的な設定に基づいて特定の仮定を使用してこれらのリソースを特定し、接続します。JBoss Enterprise Application Platform にこれらの仮定とは異なる設定がある場合、JBoss ON がそのシステムを完全管理できない可能性があります。
ここでは、特定の JBoss Enterprise Application Platform リソースタイプを検出または管理するために必要な設定を説明します。
31.1.1. JBoss AS/EAP 5 JVM の検出および管理
JBoss EAP リソースに対して JVM リソースおよびそのサブシステム(メモリー、スレッド、ロギングなど)を検出する JBoss ON エージェントでは、MBean を登録する場所としてプラットフォーム MBean サーバーを使用するよう JBoss EAP インスタンスを設定する必要があります。
必要に応じて JBoss Enterprise Application Platform 起動スクリプトを編集して、プラットフォーム MBean サーバーを使用します。
run.conf
ファイルを開きます。たとえば、Red Hat Enterprise Linux の場合は以下のようになります。[root@server ~]# vim jbossInstallDir/bin/run.conf
- プラットフォーム MBean サーバーを使用するための
JAVA_OPTS
設定を追加します。Red Hat Enterprise Linux の場合:JAVA_OPTS="$JAVA_OPTS -Djboss.platform.mbeanserver"
Windows の場合:set JAVA_OPTS=%JAVA_OPTS% -Djboss.platform.mbeanserver
- JBoss Enterprise Application Platform を再起動します。
31.1.2. JMX およびプロファイルサービスへのリモートアクセスの有効化
監視や実行操作などの管理タスクでは、エージェントが JBoss EAP/AS インスタンスの JMX サーバーに接続できる必要があります。そのため、リモート JMX アクセスを有効にする必要があります。
- JBoss Naming Protocol サーバー(JNP)がデプロイされていることを確認します。(デフォルトではデプロイされます。)
jboss-service.xml
ファイルを開きます。[root@server ~]# vim jbossInstallDir/server/config/conf/jboss-service.xml
次に、JNP コネクターを有効にする行があることを確認します。<mbean code="org.jboss.naming.NamingService"> ... </mbean>
- 必須ではありませんが、JNP サービスの認証を有効にすることが推奨されます。(これはデフォルトで有効になっています。)
jmx-invoker-service.xml
ファイルを開きます。[root@server ~]# vim jbossInstallDir/server/config/deploy/jmx-invoker-service.xml
- JMX コネクター認証の行を追加します。
<interceptor code="org.jboss.jmx.connector.invoker.AuthenticationInterceptor" securityDomain="java:/jaas/jmx-console"/>
- 管理ユーザーが JMX ユーザーのプロパティーファイルに一覧表示されていることを確認します。新しい JBoss EAP リソースが検出されると、エージェントはこのファイルから JMX ユーザー名とパスワードを読み取り、検出された JBoss EAP リソースの接続設定に保存します。これらの設定は、EAP サーバーの JNP サービスに接続するために使用されます。
[root@server ~]# vim jbossInstallDir/server/config/conf/props/jmx-console-users.properties
- ユーザー情報をアンコメントまたは追加します。これは、単純なキー/値のペア username=password です。例:
admin=admin
- JBoss Enterprise Application Platform を再起動します。
31.1.3. 起動スクリプト引数、環境変数、および JAVA_OPTS の設定
31.1.3.1. スクリプト検出と設定の開始
JBoss EAP 5 サーバーの検出の一環として、JBoss ON はサーバーが実行されている環境の検出を試みます。特に、検出プロセスはランタイム環境の検出を試行します。
- 検出プロセスでは、EAP サーバーの起動に使用された開始スクリプト(カスタム起動スクリプトか、またはカスタム起動スクリプト)が特定
run.sh|bat
または試行されます。 - Discovery は、開始スクリプトが機能するために必要な
run.conf
ファイルまたは親プロセスに設定された環境変数のサブセットを検出します。注記検出プロセスで一部の環境変数が検出されますが 、検出スキャンは JAVA_OPTS 値になりません。開始スクリプトの接続プロパティーは意図的に JAVA_OPTS 値のためにrun.conf
ファイルに移されます。 - 検出は、開始スクリプト自体に渡される引数を検出しようとします。
検出された設定は、EAP 5 リソースの Start Script Environment Variables および Start Script Arguments 接続設定に保存されます。
検出スキャンが一部のスクリプト設定を検出できない場合(エージェントは EAP 5 サーバーとは異なるユーザーとして実行され、親プロセスの読み取りができない場合)、正常に失敗します。可能な情報をすべて収集し、空の値を無視します。
注記
Start Script Environment Variables および Start Script Arguments 接続設定は、リソースの初回検出時に 1 回だけ検出されます。その後、接続設定設定で接続設定を変更することはできますが、ローカルシステムで行った変更は検出されません。たとえば、サーバーが特定の値(など
-XX:PermSize=256M
)で検出されると、サーバーが別の設定値で後で再起動すると、引数の値は更新されません。
スクリプト引数と環境変数は、開始スクリプトの実行時にエージェントによって使用される唯一の変数です。これらの引数および環境変数は、他の設定や親プロセスに追加されません。EAP 5 接続の開始スクリプト設定は決定論的です。
以前のバージョンのプラグインでは、EAP/AS 5 サーバーには、起動スクリプトの特定および実行の一環として、エージェントによって使用される Java ホームディレクトリーの設定およびバインドアドレス(hostname または IP)が含まれていました。
Script Arguments フィールドが空の場合、バインドアドレスと Java ホームディレクトリー [7] 起動スクリプトを呼び出す際にも使用されています。スクリプト引数が設定 さ れている場合は、バインドアドレスと Java ホームの値は無視されます。
スクリプト引数の値は、その他の開始スクリプトの接続設定を上書きします。
31.1.3.2. スクリプト引数およびドリフト監視の開始
JBoss ON はディレクトリーや特定のファイルを監視して、設定の ドリフト を確認することができます。詳細はを参照してください 15章設定項目の管理。
管理者は重要なリソースを管理するのに、ドリフト監視は重要ですが、いくつかの設定で必要になるか、または有益である場合もあります。start スクリプト引数を使用すると、ドリフトアラートをトリガー せず に EAP 5 サーバーの定義設定をオーバーライドできます。
開始スクリプトのオプションはすべての接続設定であるため、すべての変更は変更履歴に記録され、簡単に表示および元に戻されます。これにより、システムプロパティーと Java 設定がトレース可能となり、必要な場合は修正が可能になります。
例31.1 ドリフト定義を自動化せずにシステムプロパティー
Tim the IT Guy は、すべての実稼働 EAP 5 サーバーが環境を使用する特定の設定セットを作成します。その後、テンプレートに設定が加わるモニタリングおよび関連付けまたはピン用にドリフト定義テンプレートを作成します。
テンプレートのドリフトを使用する EAP 5 サーバーは、これらの構成設定に準拠する必要があります。Tim the IT Guy は、実稼働サーバーが特定の設定からドリフトした場合に通知するアラートを作成します。これは、Example Co. の実稼働アプリケーションサーバーに対する重要な安全対策です。
ただし、実稼働サーバーでは、動作中のハードウェアやその他のアプリケーションが若干異なるため、効果的に実行するために異なるヒープサイズが必要になります。
TI Guy が別のヒープサイズを使用するようにシステムプロパティーを追加する場合、一定のドリフトアラートを受信するか、サーバー側の自動スクリプトを実行してドリフト設定を修正すると、編集した設定が上書きされる可能性があります。
開始スクリプトで異なるヒープ設定を設定すると、Tim は設定ファイルを編集せずにそのシステムの正しい設定を適用できるため、アラート可能な設定のドリフトはありません。
31.1.3.3. 起動スクリプト設定の変更
- トップメニューの Inventory タブをクリックします。
- 左側 Servers - Top Level Imports の Resources メニューテーブルで選択します。JBoss EAP 5 サーバーを選択します。
- インベントリーツリーで、サーバーの上位のリソースエントリーを選択します。
- Inventory タブを開き、Connection Settings サブタブを選択します。
- Operations セクションを展開します。
- 開始スクリプトの設定を変更または追加します。これらは、EAP 5 サーバーで起動または再起動の操作を実行する際に JBoss ON エージェントが使用するスクリプトおよび設定です。
- カスタムの開始スクリプトを使用するには、パスとスクリプト名を入力します。
- 必要に応じて、開始スクリプトの実行時にスクリプトで使用する接頭辞を入力します。
- 各行に 1 つずつ環境変数を設定します。
- スクリプト引数を設定します(行ごとに 1 つ)。通常の JAVA_OPTS の場合、これらの引数は通常
-X
-D
、またはです-P
。便利な-XX
引数の一部は、Sun の JVM オプションのドキュメントに記載されています。EAP 5 のデフォルト起動スクリプトは - 形式のrun.sh
スクリプトを使用するため、引数はその形式を使用します。カスタムスクリプトは、異なる引数またはオプションを使用できます。
- ページ上部の Save ボタンをクリックします。