ナビゲーションをスキップ

WebLogic JMX Service プログラマーズ ガイド

  前 次 前/次ボタンと目次ボタンとの区切り線 目次  

WebLogic Server の管理用ネームスペース

WebLogic Server MBean をインスタンス化すると、MBean サーバ サブシステムは weblogic.management.WebLogicObjectName の規約に準拠した名前でそのインスタンスを登録します。この命名規約によって、MBean をルックアップする際に使用する階層的な JMX ネームスペースが作成されます (MBean サーバ サブシステムの詳細については、「MBean サーバおよび MBeanHome インタフェース」を参照)。

以下の節では、WebLogic Server の管理用ネームスペースについて説明します。

 


WebLogicObjectName の規約

WebLogicObjectNamejavax.management.ObjectName のサブクラスです。MBean にユニークな名前を指定するために、すべての JMX オブジェクト名は 2 つの部分で構成されています。

MBean の WebLogicObjectName は、次の規約に基づいて、特定の MBean にユニークな識別名を与えます。

domain:Name=name,Type=type[,Location=serverName]
[,TypeOfParentMBean=NameOfParentMBean][,TypeOfParentMBean1=NameOfParentMBean1]...

attribute=value ペアの順序は重要ではありませんが、名前の先頭は domain: である必要があります。

次の表では、この名前の各コンポーネントについて説明します。

表 3-1 WebLogic Server MBean の命名規約

コンポーネント

指定されるもの

domain:

JMX ドメインの名前。規約により、すべての WebLogic Server MBean の JMX ドメイン名は WebLogic Server 管理ドメインの名前に対応する。

Name=name

MBean が表すリソースを作成したときに指定した文字列。たとえば、JDBC 接続プールを作成する場合、そのプールの名前 (MyPool1 など) を指定する必要がある。MyPool1 を表す JDBCConnectionPoolMBean は、その JMX オブジェクト名に Name=MyPool1 を使用する。

WebLogicObjectName.getName メソッドは、特定の MBean に対するこの値を返す。

MBean を作成する場合、この Name に、ドメイン内の他のすべての MBean の範囲でユニークな値を指定する必要がある。

Type=type

MBean がそのインスタンスとなっているインタフェース クラスを表す。すべての WebLogic Server MBean は、weblogic.management.configuration パッケージまたは weblogic.management.runtime パッケージで定義されているいずれかのインタフェース クラスのインスタンス。コンフィグレーション MBean については、Type はインスタンスが管理 MBean であるのかローカル コンフィグレーション MBean であるのかも示す。すべての WebLogic Server MBean インタフェース クラスの詳細なリストについては、weblogic.management.configuration または weblogic.management.runtime パッケージの「WebLogic Server Javadoc」を参照。

Type コンポーネントに指定する値を決めるには、次の手順に従う。

    1.MBean のインタフェース クラスを見つけて、クラス名から MBean サフィックスを削除する。たとえば、weblogic.management.runtime.JDBCConnectionPoolRuntime
    MBean
    のインスタンスである MBean の場合は、JDBCConnectionPoolRuntime を使用する。

    2. ローカル コンフィグレーション MBean の場合は、名前に Config を付加する。たとえば、weblogic.management.configuration.JDBCConnectionPool
    MBean
    インタフェース クラスのインスタンスであるローカル コンフィグレーション MBean の場合は、JDBCConnectionPoolConfig を使用する。対応する管理 MBean のインスタンスには、JDBCConnectionPool を使用する。

Location=servername

すべての実行時 MBean とローカル コンフィグレーション MBean には Location コンポーネントがある。このコンポーネントには、MBean が格納されているサーバの名前が指定される。管理 MBean にこの要素はない。

たとえば、myserver というサーバ インスタンスの場合、ServerMBean の 2 つのインスタンスがある。

  • 管理 MBean。オブジェクト名は以下のとおり。
    mydomain:Name=myserver,Type=Server

  • ローカル コンフィグレーション MBean。オブジェクト名は以下のとおり。
    mydomain:Name=myserver,Type=Server,Location=myserver

これらの MBean インスタンスへのアクセス方法については、「使用するインタフェースの決定」を参照。

WebLogicObjectName.getLocation メソッドは、特定の MBean に対するこの値を返す。

TypeOfParentMBean=
NameOfParentMBean

階層的なネームスペースを作成するために、実行時 MBean、ローカル コンフィグレーション MBean、または管理 MBean は、オブジェクト名の中でこの属性の 1 つまたは複数のインスタンスを使用する。階層のレベルによってスコープが示される。たとえば、ドメイン レベルの階層にある LogMBean はドメイン全体のメッセージ ログを管理し、サーバ レベルにある LogMBean はサーバ固有のメッセージ ログを管理する。

規約では、WebLogic Server の子 MBean は Name コンポーネントに親 MBean と同じ値を使用する。たとえば、MedRecServer Server MBean の子である LogMBean はその WebLogicObjectNameName=MedRecServer を使用する。

medrec:Name=MedRecServer,Type=Log

親 MBean に同じタイプの複数の子がある場合、WebLogic Server ではこの規約に従うことができない。

一部の MBean はこの要素の複数のインスタンスを使用してユニークな識別子を指定する。たとえば、MedRec サンプル アプリケーションの EJBComponentRuntime MBean の WebLogicObjectName は以下のとおり。
medrec:ApplicationRuntime=MedRecServer_MedRecEAR,
Location=MedRecServer,Name=MedRecServer_MedRecEAR_Session
EJB,ServerRuntime=MedRecServer,Type=EJBComponentRuntime

ApplicationRuntime=MedRecServer_MedRecEAR という属性と値の組み合わせは、この EJB インスタンスが MedRec エンタープライズ アプリケーションの中のモジュールであり、MedRecServer_MedRecEAR ApplicationRuntimeMBean の子であることを示す。ServerRuntime=MedRecServer という属性と値の組み合わせは、この EJB インスタンスが MedRecServer というサーバに現在デプロイされていて、MedRecServer ServerRuntimeMBean の子であることを示す。

以下を参照。


 

 


セキュリティ プロバイダ MBean 名の規約

セキュリティ プロバイダを管理するための MBean は JMX オブジェクト名を使用しますが、weblogic.management.WebLogicObjectName タイプのオブジェクト名は使用しません。代わりに、WebLogic Server に付属しているセキュリティ プロバイダは JMX 準拠の次の命名規約を使用します。

Security:Name=realmNameProviderName

この規約では Security: は JMX ドメインの名前、realmName はセキュリティ レルム、ProviderName はセキュリティ プロバイダに指定する名前です。たとえば、WebLogic Server がインストールする認証プロバイダの MBean の名前は Security:Name=myrealmDefaultAuthenticator です。

追加のセキュリティ プロバイダをコンフィグレーションする場合は、この規約に従うことをお勧めします。Administration Console を使用してセキュリティ プロバイダをレルムに追加する場合、セキュリティ プロバイダ MBean 名は推奨された命名規約に従います。

セキュリティ プロバイダの詳細については、『WebLogic Security サービスの開発』を参照してください。

 


ネームスペース内の管理 MBean の配置

システム管理者はたびたび JMX API、weblogic.Admin ユーティリティ、または wlconfig Ant タスクを使用して、WebLogic Server ドメイン内のリソースの作成を自動化します。これらのリソースを正常にコンフィグレーションするには、管理 MBean を作成して、ネームスペースの階層内に配置する必要があります。

注意 : ローカル コンフィグレーション MBean と実行時 MBean の管理用ネームスペースも階層的ですが、システム管理者はこれらのタイプの MBean にアクセスするために API や他のコマンドライン ユーティリティをあまり使用しないため、そのネームスペースについては説明していません。

以下の節では、多数の WebLogic Server リソースおよびサーバの属性をコンフィグレーションする管理 MBean のネームスペースについて説明します。

注意 : DomainMBean を除き、すべての MBean はドメインの DomainMBean の直接的または間接的な子です。この親子関係はすべての MBean に当てはまるため、MBean オブジェクト名では表現されません。

サーバ通信およびプロトコル コンフィグレーションのネームスペース

WebLogic Server インスタンスは複数の MBean の属性を使用して、クライアントや他のサーバとの通信方法を判断します。表 3-2 で MBean を紹介し、図 3-1 にサンプル MedRec ドメインのネームスペースを示します。

表 3-2 サーバ通信およびプロトコルの MBean

MBean

コンフィグレーションの対象

ServerMBean

リスン アドレス、リスン ポート。プロトコルとトンネリングを有効にする。

ServerMBean の「Javadoc」を参照。

SSLMBean

SSL プロトコル。

SSLMBean の「Javadoc」を参照。

IIOPMBean

IIOP プロトコル。

IIOPMBean の「Javadoc」を参照。

COMMBean

COM プロトコル。

COMMBean の「Javadoc」を参照。

WebServerMBean

HTTP および HTTPS プロトコル。

WebServerMBean の「Javadoc」を参照。

ServerStartMBean

ノード マネージャがこのサーバ インスタンスの起動に使用する引数。

ServerStartMBean の「Javadoc」を参照。

NetworkAccessPointMBean

追加のネットワーク接続 (ネットワーク チャネル)。

NetworkAccessPointMBean の「Javadoc」を参照。

VirtualHostMBean

サーバの応答先のホスト名。

VirtualHostMBean の「Javadoc」を参照。

図 3-1 サーバ通信およびプロトコルの MBean ネームスペース

サーバ通信およびプロトコルの MBean ネームスペース


 

ドメインおよびサーバ ロギング コンフィグレーションのネームスペース

WebLogic Server ドメインでは、複数の MBean がロギング サービスをコンフィグレーションします。表 3-3 で MBean を紹介し、図 3-2 にサンプル MedRec ドメインのネームスペースを示します。

表 3-3 ドメインおよびサーバ ロギングの MBean

MBean

コンフィグレーションの対象

LogMBean

ログ ファイル名とローテーション条件。管理サーバにはドメイン全体のメッセージ ログ用の LogMBean のインスタンスが保持され、各サーバ インスタンスにはローカル サーバ ログ用の独自のインスタンスが保持される。

LogMBean の「Javadoc」を参照。

DomainLogFilterMBean

ドメイン ログ フィルタ。サーバ インスタンスがドメイン全体のメッセージ ログに送信するメッセージを決定する。各ドメイン ログ フィルタは DomainLogFilterMBean の独自のインスタンスで表される。

DomainLogFilterMBean の「Javadoc」を参照。

ServerMBean

JDBC および JTA ロギング。サーバ インスタンスが使用するドメイン ログ フィルタも決定する。

ServerMBean の「Javadoc」を参照。

WebServerMBean

ロギング HTTP リクエスト。

WebServerMBean の「Javadoc」を参照。

図 3-2 ロギング MBean

ロギング MBean


 

アプリケーション コンフィグレーションのネームスペース

J2EE モジュール (エンタープライズ アプリケーション、Web アプリケーション、または EJB) を割り当ててデプロイするときに、WebLogic Server ではモジュールのコンフィグレーションを管理するための MBean が作成されます。

また、ユーザがコンフィグレーションして割り当てる起動クラスと停止クラスの MBean も作成されます。表 3-4 で MBean を紹介し、図 3-3 にサンプル MedRec ドメインのネームスペースを示します。

表 3-4 アプリケーションの MBean

MBean

コンフィグレーションの対象

StartupClassMBean

起動クラス、およびクラスの割り当て先のサーバ インスタンス。

StartupClassMBean の「Javadoc」を参照。

ShutdownClassMBean

停止クラス、およびクラスの割り当て先のサーバ インスタンス。

ShutdownClassMBean の「Javadoc」を参照。

ApplicationMBean

含まれている Web アプリケーションおよび EJB のデプロイメント オプション。各アプリケーションは ApplicationMBean の独自のインスタンスで管理される。

ApplicationMBean の「Javadoc」を参照。

WebAppComponentMBean

Web アプリケーション。

WebAppComponentMBean の「Javadoc」を参照。

EJBComponentMBean

EJB JAR ファイル内のすべての EJB の場所およびデプロイメント情報。

EJBComponentMBean の「Javadoc」を参照。

図 3-3 アプリケーション MBean

アプリケーション MBean


 

セキュリティ コンフィグレーションのネームスペース

WebLogic Server ドメインにおいて、各セキュリティ レルムは RealmMBean の独自のインスタンスと、そのレルムにコンフィグレーションされているセキュリティ プロバイダの複数の MBean によって管理されます。

各セキュリティ レルムはカスタマイズできるため、weblogic.management.security.RealmMBean とセキュリティ プロバイダ MBean は、他のすべての WebLogic Server MBean とは別の管理用ネームスペースを使用します。また、RealmMBean とセキュリティ プロバイダ MBean の名前は有効な JMX オブジェクト名ですが、WebLogicObjectName の規約には従いません。代わりに、作成するセキュリティ レルム MBean とセキュリティ プロバイダ MBean には次の命名規約を使用することをお勧めします。

Security:realmnameProviderName

Administration Console を使用してレルムとセキュリティ プロバイダをコンフィグレーションする場合、MBean 名は推奨された規約に従います。

レルム MBean とセキュリティ プロバイダ MBean に加えて、WebLogic Server ドメインでは表 3-5 の MBean を使用してセキュリティをコンフィグレーションします。これらの MBean は他の WebLogic Server MBean と同じネームスペース内にあります。

表 3-5 セキュリティの MBean

MBean

コンフィグレーションの対象

SecurityMBean

ドメイン全体のセキュリティ コンフィグレーション情報。

SecurityMBean の「Javadoc」を参照。

SecurityConfigurationMBean

ドメインが使用するセキュリティ レルム、パスワード ポリシー、および接続フィルタ。

SecurityConfigurationMBean の「Javadoc」を参照。

weblogic.management.configuration.RealmMBean

上記の weblogic.management.security.RealmMBean とは別のパッケージにあるこの RealmMBean は非推奨になっており、互換性セキュリティを使用するレルムをコンフィグレーションするために使われる。

図 3-4 に、サンプル MedRec ドメインのセキュリティ ネームスペースを示します。図 3-4 のセキュリティ レルムおよびプロバイダは、WebLogic Server がデフォルトでインストールするものです。ユーザが作成するドメインでは、コンフィグレーションするレルムとセキュリティ プロバイダによってセキュリティ ネームスペースの内容は異なります。

図 3-4 セキュリティ MBean

セキュリティ MBean


 

JDBC コンフィグレーションのネームスペース

WebLogic Server は複数の MBean を使用して JDBC サービスの管理インタフェースを提供します。すべての JDBC MBean はDomainMBeanの直接の子であるため、JDBC MBean の名前には階層は反映されません。表 3-6 で MBean を紹介し、図 3-5 にサンプル MedRec ドメインのネームスペースを示します。図 3-5には、MedRec ドメインでは使用しない JDBC 機能の MBean も追加されています。

表 3-6 JDBC の MBean

MBean

コンフィグレーションの対象

JDBCConnectionPoolMBean

JDBC 接続プール。

JDBCConnectionPoolMBean の「Javadoc」を参照。

JDBCMultiPool

JDBC 接続プールのプールである JDBC マルチプール。

JDBCMultiPool の「Javadoc」を参照。

JDBCDataSource

トランザクション非対応のデータ ソース。

JDBCDataSource の「Javadoc」を参照。

JDBCTxDataSource

トランザクション対応のデータ ソース。

JDBCTxDataSource の「Javadoc」を参照。

図 3-5 JDBC MBean

JDBC MBean


 

JMS コンフィグレーションのネームスペース

WebLogic Server は複数の MBean を使用して JMS サービスの管理インタフェースを提供します。表 3-7 で MBean を紹介し、図 3-6 にサンプル MedRec ドメインのネームスペースを示します。

表 3-7 JMS の MBean

MBean

コンフィグレーションの対象

JMSServerMBean

JMS サーバ。

JMSMBean の「Javadoc」を参照。

JMSQueueMBean

JMS サーバの JMS キュー (ポイント ツー ポイント) 送り先。

JMSQueueMBean の「Javadoc」を参照。

JMSTopicMBean

JMS サーバの JMS トピック (Pub/Sub) 送り先。

JMSTopicMBean の「Javadoc」を参照。

JMSSessionPoolMBean

アプリケーションがメッセージを並行処理できるようにする、サーバによって管理されたサーバ セッションのプール。

JMSSessionPoolMBean の「Javadoc」を参照。

JMSConnectionConsumerMBean

JMS 接続コンシューマ。サーバ セッションを取得してメッセージを処理する JMS 送り先 (キューまたはトピック)。

JMSConnectionConsumerMBean の「Javadoc」を参照。

JMSConnectionFactoryMBean

JMS 接続ファクトリ。JMS クライアントが JMS 接続を作成できるようにする。

JMSConnectionFactoryMBean の「Javadoc」を参照。

JMSJDBCStoreMBean

永続メッセージと恒久サブスクライバを JDBC 対応データベースに格納するための JMS JDBC ストア。

JMSJDBCStoreMBean の「Javadoc」を参照。

JMSFileStoreMBean

永続メッセージと恒久サブスクライバをファイルシステムのディレクトリに格納する、ディスクベースの JMS ファイル ストア。

JMSFileStoreMBean の「Javadoc」を参照。

JMSDestinationKeyMBean

メッセージが送り先に着いたときにメッセージのソート順を定義するために使用する送り先のキーの値。

JMSDestinationKeyMBean の「Javadoc」を参照。

図 3-6 JMS MBean

JMS MBean


 

クラスタ コンフィグレーションのネームスペース

WebLogic Server は複数の MBean を使用してクラスタおよびクラスタ関連リソースの管理インタフェースを提供します。表 3-8 で MBean を紹介し、図 3-7 にサンプル MedRec ドメインのネームスペースを示します。

表 3-8 クラスタの MBean

MBean

コンフィグレーションの対象

MachineMBean

クラスタ メンバーが実行される WebLogic Server ホストの表現。クラスタはマシンを使用してフェイルオーバのデフォルトの動作を決定する。

MachineMBean の「Javadoc」を参照。

ClusterMBean

クラスタ アドレスとマルチキャストの設定。

ClusterMBean の「Javadoc」を参照。

ServerMBean

個々のサーバ インスタンス。

ServerMBean の「Javadoc」を参照。

VirtualHostMBean

クラスタの応答先のホスト名。

VirtualHostMBean の「Javadoc」を参照。

図 3-7 クラスタ MBean

クラスタ MBean


 

マシンおよびノード マネージャ コンフィグレーションのネームスペース

ドメインが複数の WebLogic Server ホスト コンピュータ上で動作する複数のサーバ インスタンスで構成される場合は、サーバのライフ サイクル管理を容易にするために、マシンとノード マネージャを使用することができます。WebLogic Server は複数の MBean を使用してマシンおよびノード マネージャの管理インタフェースを提供します。表 3-9 で MBean を紹介し、図 3-8 にサンプル MedRec ドメインのネームスペースを示します。

表 3-9 マシンおよびノード マネージャの MBean

MBean

コンフィグレーションの対象

MachineMBean

サーバ インスタンスが実行される WebLogic Server ホストの表現。

MachineMBean の「Javadoc」を参照。

NodeManagerMBean

サーバ インスタンスが特定のマシン上で動作するノード マネージャと通信するために使用するリスン アドレス、リスン ポート、およびセキュリティ情報。

NodeManagerMBean の「Javadoc」を参照。

ServerStartMBean

ノード マネージャが管理対象サーバ インスタンスの起動に使用する情報。

ServerStartMBean の「Javadoc」を参照。

図 3-8 マシンおよびノード マネージャ MBean

マシンおよびノード マネージャ MBean


 

 


weblogic.Admin を使用した WebLogicObjectName の検索

MBean の WebLogicObjectName に指定する値がわからない場合は、weblogic.Admin ユーティリティを使用して WebLogicObjectName を検索できます。このユーティリティでは、アクティブなサーバ インスタンス上の WebLogic Server MBean についてのみ情報が返されます。

たとえば、medrec ドメインにある LogMBean の管理インスタンスの WebLogicObjectName を検索するには、MedRecServer 管理サーバで次のコマンドを入力します。ここで、管理サーバのリスン ポートは 8001 であり、weblogic は MBean の属性を表示するパーミッションを持つユーザの名前とパスワードです。

java weblogic.Admin -url localhost:8001 -username weblogic -password weblogic GET -pretty -type Log

このコマンドでは、コード リスト 3-1 の出力が返されます。出力を見ると、このコマンドでは管理サーバ上の Log タイプの 2 つの MBean が返されることがわかります。最初の MBean (medrec:Name=MedRecServer,Server=MedRecServer,Type=Log) には、MedRecServerServerMBean と子の関係があります。この関係は、その MBean がサーバ固有のログ ファイルをコンフィグレーションする LogMBean であることを示します。2 番目の MBean (medrec:Name=medrec,Type=Log) には子の関係はありません。つまり、ドメイン全体のログ ファイルをコンフィグレーションする MBean であるということになります。

-pretty を指定すると、weblogic.Admin ユーティリティは各 MBean 属性および値を別々の行に配置します。この引数がない場合、各属性/値ペアは中括弧 {} で囲まれますが、すべての出力が同じ行に配置されます。

コード リスト 3-1weblogic.Admin の出力

---------------------------
MBeanName: "medrec:Name=MedRecServer,Server=MedRecServer,Type=Log"
CachingDisabled: true
FileCount: 7
FileMinSize: 500
FileName: MedRecServer\MedRecServer.log
FileTimeSpan: 24
Name: MedRecServer
Notes:
NumberOfFilesLimited: false
ObjectName: MedRecServer
Registered: false
RotationTime: 00:00
RotationType: none
Type: Log
---------------------------
MBeanName: "medrec:Name=medrec,Type=Log"
CachingDisabled: true
FileCount: 7
FileMinSize: 500
FileName: ./logs/wl-domain.log
FileTimeSpan: 24
Name: medrec
Notes:
NumberOfFilesLimited: false
ObjectName: medrec
Registered: false
RotationTime: 00:00
RotationType: none
Type: Log

LogMBean のローカル コンフィグレーション MBean インスタンスを表示するには、type 引数の値に Config を付加します。

java weblogic.Admin -url localhost:8001 -username weblogic -password weblogic GET -pretty -type LogConfig

このコマンドでは、コード リスト 3-2 の出力が返されます。出力を見ると、ローカル コンフィグレーション MBean の WebLogicObjectNameLocation コンポーネントが含まれていることがわかります。

コード リスト 3-2ローカル コンフィグレーション MBean

---------------------------
MBeanName: "medrec:Location=MedRecServer,Name=MedRecServer,ServerConfig=MedRecServer,Type=LogConfig"
CachingDisabled: true
FileCount: 7
FileMinSize: 500
FileName: MedRecServer\MedRecServer.log
FileTimeSpan: 24
Name: MedRecServer
Notes:
NumberOfFilesLimited: false
ObjectName: MedRecServer
Registered: false
RotationTime: 00:00
RotationType: none
Type: LogConfig
---------------------------
MBeanName: "medrec:Location=MedRecServer,Name=medrec,Type=LogConfig"
CachingDisabled: true
FileCount: 7
FileMinSize: 500
FileName: ./logs/wl-domain.log
FileTimeSpan: 24
Name: medrec
Notes:
NumberOfFilesLimited: false
ObjectName: medrec
Registered: false
RotationTime: 00:00
RotationType: none
Type: LogConfig

 


weblogic.Admin を使用したセキュリティ プロバイダ MBean の名前の検索

セキュリティ MBean のオブジェクト名に指定する値がわからない場合は、weblogic.Admin QUERY コマンドを使用してオブジェクト名を取得できます。セキュリティ MBean が存在するドメインがアクティブでなければなりません。

推奨された命名規約に従っている場合、または Administration Console を使用してセキュリティ MBean を作成した場合は、次のコマンドを使用してドメイン内のすべてのセキュリティ MBean を表示できます。

java weblogic.Admin -url localhost:8001 -username weblogic -password weblogic QUERY -pretty -pattern Security:*

それ以外の場合は、QUERY コマンドの他の形式を使用して、MBean 名を検索できます。『WebLogic Server コマンド リファレンス』の「QUERY」を参照してください。

 

フッタのナビゲーションのスキップ  ページの先頭 前 次