ドメインモードで JConsole から JBoss に接続する
Environment
- Red Hat JBoss Enterprise Application Platform (EAP)
- 6.xEnvironment
Issue
- JConsole から、ドメインの JBoss インスタンスに接続するにはどうしたら良いですか?
- JConsole がドメインモードの jmx に接続できません。
- JConsole についてはこちらのナレッジを見つけましたが、これはスタンドアロンモードのものになります。ドメインモードに関するドキュメントはありませんか?
- Windows のドメインモードで JConsole から
JBoss EAP 6に接続するにはどうしたら良いですか? EAP 6.3でrbac access-controlを有効にしたあと、JConsoleから一部のmbeansを確認することができません。- Linux でドメインモードの jconsole を使用して JBoss に接続するにはどうしたら良いですか?
- ドメインモードで管理サーバーインスタンスの JMX 情報にアクセスするにはどうしたら良いですか?
Resolution
jconsole から JBoss EAP に接続するには、以下の手順を行います。
-
$JAVA_HOME が正しく設定されていることを確認します。
-
管理エンドポイントを使用しないように、jmx サブシステムに remoting-connector を設定します。ドメインモードでは、ホストコントローラーにだけ管理ポイントがあり、各サーバーにはありません。したがって、代わりに各サーバーに接続するようにするには、リモートのエンドポイントを使用して実装するように
use-management-endpoint=falseを設定します。
以下は、"full-ha" プロファイルを使用した例です。
/profile=full-ha/subsystem=jmx/remoting-connector=jmx:add(use-management-endpoint=false)
domain.xml の resulting xml は以下のようになります。
<subsystem xmlns="urn:jboss:domain:jmx:1.2">
<expose-resolved-model/>
<expose-expression-model/>
<remoting-connector use-management-endpoint="false"/>
</subsystem>
-
add-user.shまたはadd-user.bat(add-user.sh を実行する場合のオプション option b) を使用して ApplicationRealm ユーザーを定義します。リモートホストコントローラーがお使いの環境に含まれる場合、ApplicationRealm ユーザーは各ホストコントローラーに定義されます。 -
$JBOSS_HOME/bin/jconsole.shを起動し、service:jmx:remoting-jmx://{$HOSTNAME}:4447を使用してドメイン内のインスタンスに接続して、上で定義したApplicationRealmユーザーを使用して認証します。
注意:
-
$HOSTNAMEは、実行しているサーバーの IP アドレスまたはホスト名となり、4447はデフォルトのリモートポートになります。jconsole から接続するには4447にポートのオフセットを追加します。 -
EAP 6.3 では
rbac access-controlを有効にすると、JConsoleからすべてのmbeansを確認することはできません。JConsoleからすべてのmbeansを確認するには、admin consoleからsuperuserロールを持つapplication userを追加し、その追加時にApplicationRealmにレルムを設定する必要があります。表示されるアイテムはすべてアクセスできます。表示されないアイテムは保護されています。さらに、ユーザーが適切なロールで設定されていない場合、表示されるアイテムのほとんどの機能は "Not authorized" で拒否されます。
Root Cause
-
jboss-as-jmx_1_2.xsd によると、show-model は EAP 6.1.x では利用できなくなりました。
-
ドメイン内の特定のインスタンスに接続しようとすると、
service:jmx:remoting-jmx://{host_name}:9999を使用することはできません。このアドレスは、ドメインコントローラーに接続します。ポート 9999 は、管理されている各サーバーではなく、ホストコントローラーに向かいます。その際、認証にはmgmt-users.propertiesを使用します。
This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.
Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.
