この章の内容は次のとおりです。
JMX管理は、tangosol-coherence-override.xml
ファイルの<management-config
要素内で、または起動時に管理用のシステム・プロパティを設定することで構成します。<management-config要素の詳細は、『Oracle Coherenceでのアプリケーションの開発』を参照してください。
この項には次のトピックが含まれます:
Coherenceを構成して、動的管理モードで起動します。動的管理モードは、自動的に上位のクラスタ・メンバーをJMXクラスタ・メンバーとして選択します。JMXクラスタ・メンバーは、すべてのクラスタメンバーから管理情報を集計するMBeanサーバーをホストします。JMXクラスタ・メンバーが操作的ではない場合、次に最も上位のクラスタ・メンバーがJMXクラスタ・メンバーとして自動的に選択されます。
すべてのクラスタ・メンバーが、JMXクラスタ・メンバーとして選択される可能性があります。JMXメンバーとして選択される対象からクラスタ・メンバーを除外するには、<managed-nodes>
要素をnone
に設定します。次に例を示します。
<?xml version='1.0'?> <coherence xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.oracle.com/coherence/coherence-operational-config" xsi:schemaLocation="http://xmlns.oracle.com/coherence/ coherence-operational-config coherence-operational-config.xsd"> <management-config> <managed-nodes system-property="coherence.management">none </managed-nodes> </management-config> </coherence>
何も値が指定されない場合、デフォルト値はdynamic
で、クラスタ・メンバーがJMXクラスタ・メンバーになることを示します。
coherence.management
システム・プロパティも、クラスタ・メンバーをJMXクラスタ・メンバーの選択から除外します。次に例を示します。
-Dcoherence.management=none
1つ以上のクラスタ・メンバーを明示的に構成して、すべてのクラスタ・メンバーの管理対象オブジェクトを処理するMBeanサーバーをホストできます。これらのクラスタ・メンバーのMBeanサーバーにアクセスすることで、すべてのクラスタ・メンバーの管理情報が表示されます。専用のJMXクラスタ・メンバーを使用するのは一般的な方法です。なぜなら、それによりJMXソフトウェアを1つずつクラスタ・メンバーにロードする必要もなくなり、しかも1つのJMXメンバーに問題が発生してもフォルト・トレランスは維持されるためです。
注意:
デフォルトで、Coherenceは動的管理モードを使用するように構成され、JMXクラスタ・メンバーは自動的に選択されます。詳細は、動的管理モードの使用を参照してください。
小規模のクラスタでは、2つの既存クラスタ・メンバーに対して複数の専用のJMX JVMを用意するのがフォルト・トレランスを確保するための一般的な方法です。非常に大規模なクラスタでは、JMX専用の2台のコンピュータを用意するほうが現実的な場合が多いですが、必ずしもその必要はありません。
クラスタ・メンバーに対するリモートJMX管理を有効にするには、<managed-nodes>
要素をall
またはremote-only
に設定します。次に例を示します。
<?xml version='1.0'?> <coherence xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.oracle.com/coherence/coherence-operational-config" xsi:schemaLocation="http://xmlns.oracle.com/coherence/ coherence-operational-config coherence-operational-config.xsd"> <management-config> <managed-nodes system-property="coherence.management">all </managed-nodes> </management-config> </coherence>
remote-only
設定では、リモートMBeanのみを管理するMBeanサーバーが起動されます。all
設定では、リモートMBeanおよびローカル(同一JVM上の)MBeanを管理するMBeanサーバーが起動されます。
coherence.management
システム・プロパティによりリモートJMX管理を有効にすることもできます。次に例を示します。
-Dcoherence.management=all
注意:
JMXクラスタ・メンバーとして構成されていないクラスタ・メンバーは、JMXクラスタ・メンバーとして動的に選択されることから明示的に無効化される必要があります。詳細は、JMX管理の無効化を参照してください。
ローカルJMX管理では、MBeanサーバーの管理対象がクラスタ・メンバーのローカル(同一JVM上の)MBeanに制約されます。クラスタ・メンバーのMBeanサーバーにアクセスしても、ローカル管理情報しか表示されません。しかし、そのクラスタ・メンバーのMBeanは、リモートJMX管理が有効化されたクラスタ・メンバーによって引き続き管理できます。ローカルJMX管理は一般的に、拡張クライアントまたは一時的なクラスタ・クライアントで使用されます。
クラスタ・メンバーでのローカルJMX管理を有効化するには、<managed-nodes>
要素をlocal-only
に設定します。次に例を示します。
<?xml version='1.0'?> <coherence xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.oracle.com/coherence/coherence-operational-config" xsi:schemaLocation="http://xmlns.oracle.com/coherence/ coherence-operational-config coherence-operational-config.xsd"> <management-config> <managed-nodes system-property="coherence.management">local-only </managed-nodes> </management-config> </coherence>
coherence.management
システム・プロパティによりローカルJMX管理を有効にすることもできます。次に例を示します。
-Dcoherence.management=local-only
便宜上の理由により、COHERENCE_HOME
/bin/cache-server
およびCOHERENCE_HOME
/bin/
coherence
の起動スクリプトには、クラスタ・メンバーでのJMX管理を有効にする-jmx
引数が含まれます。次に例を示します。
cache-server -jmx
この引数は、スクリプト内で必要に応じて変更できる管理用のシステム・プロパティを自動的に設定します。デフォルトの設定は、次のようになります。
-Dcoherence.management=all -Dcoherence.management.remote=true
デフォルトでは、すべてのクラスタ・メンバーのMBeanで、リモートMBeanサーバーによる管理が許可されています。メンバーのMBeanのリモート管理を制限するには、<allow-remote-management>
要素をfalse
に設定します。次に例を示します。
<?xml version='1.0'?> <coherence xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.oracle.com/coherence/coherence-operational-config" xsi:schemaLocation="http://xmlns.oracle.com/coherence/ coherence-operational-config coherence-operational-config.xsd"> <management-config> <allow-remote-management system-property="coherence.management.remote">false </allow-remote-management> </management-config> </coherence>
coherence.management.remote
システム・プロパティによりリモート管理を無効にすることもできます。次に例を示します。
-Dcoherence.management.remote=false
クラスタ・メンバーでのJMX管理を無効化するには、<managed-nodes>
要素をnone
に設定します。次に例を示します。
<?xml version='1.0'?> <coherence xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.oracle.com/coherence/coherence-operational-config" xsi:schemaLocation="http://xmlns.oracle.com/coherence/ coherence-operational-config coherence-operational-config.xsd"> <management-config> <managed-nodes system-property="coherence.management">none </managed-nodes> </management-config> </coherence>
メンバーのJMX管理を無効にしても、そのメンバーのリモート管理は停止されません。<allow-remote-management>
もfalse
に設定する必要があります。次の例では、JMX管理を無効化してメンバーのリモート管理を停止します。
<?xml version='1.0'?> <coherence xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.oracle.com/coherence/coherence-operational-config" xsi:schemaLocation="http://xmlns.oracle.com/coherence/ coherence-operational-config coherence-operational-config.xsd"> <management-config> <managed-nodes system-property="coherence.management">none </managed-nodes> <allow-remote-management system-property="coherence.management.remote">false </allow-remote-management> </management-config> </coherence>
Oracle Coherence管理フレームワークでは、MBeanをMBeanサーバーに登録する前にそれらのMBeanをフィルタできます。即時利用可能なMBeanフィルタが提供されており、カスタムのフィルタを必要に応じて作成することもできます。付属のMBeanフィルタ(com.tagosol.net.management.ObjectNameExcludeFilter
)は、標準的な正規表現パターンを使用するJMXオブジェクト名に基づいて、MBeanを登録から除外します。たとえば、パターン.*type=Service,name=Management,.*
によって、type=Service
およびname=Management
のMBeanが除外されます。初期状態の構成では、このフィルタによっていくつかのプラットフォームMBeanが管理フレームワークに登録されないように除外されます。MBeanフィルタは、<mbean-filter>
要素を使用して定義します。
次の例は、初期状態の構成を示しています。
... <mbean-filter> <class-name>com.tangosol.net.management.ObjectNameExcludeFilter</class-name> <init-params> <init-param> <param-type>string</param-type> <param-value system-property="coherence.management.exclude"> .*type=Service,name=Management,.* .*type=Platform,Domain=java.lang,subType=ClassLoading,.* .*type=Platform,Domain=java.lang,subType=Compilation,.* .*type=Platform,Domain=java.lang,subType=MemoryManager,.* .*type=Platform,Domain=java.lang,subType=Threading,.* </param-value> </init-param> </init-params> </mbean-filter> ...
管理サービスまたはプラットフォームMBeanを有効化するには、<param-value>
要素の名前のリストから対応するオブジェクト名を削除します。特定のMBeanを登録されないように除外するには、そのMBeanオブジェクト名をリストに追加します。
coherence.management.exclude
システム・プロパティによりMBeanをフィルタリングすることもできます。次に例を示します。
-Dcoherence.management.exclude=.*type=Service,name=Management,.*
<refresh-expiry>
、<refresh-policy>
および<refresh-timeout>
の各要素は、管理情報の待機時間を制御します。次の例では、これらの各設定を構成しています。詳細は、例の後に説明します。
<?xml version='1.0'?> <coherence xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.oracle.com/coherence/coherence-operational-config" xsi:schemaLocation="http://xmlns.oracle.com/coherence/ coherence-operational-config coherence-operational-config.xsd"> <management-config> <refresh-policy system-property="coherence.management.refresh.policy"> refresh-ahead</refresh-policy> <refresh-expiry system-property="coherence.management.refresh.expiry">1s </refresh-expiry> <refresh-timeout system-property="coherence.management.refresh.timeout">300ms </refresh-timeout> </management-config> </coherence>
この項には次のトピックが含まれます:
<refresh-expiry>
要素は、リモート・メンバーの管理情報をリモートで取得する最小間隔を指定します。この要素の値は、次の形式で指定する必要があります。
(\d)+((.)(\d)+)?[MS|ms|S|s|M|m|H|h|D|d]?
前述の文字は(左から右へ)それぞれ、次の時間間隔の単位を示しています。
MSまたはms(ミリ秒)
Sまたはs(秒)
Mまたはm(分)
Hまたはh(時)
Dまたはd(日数)
値に単位が含まれていない場合は、ミリ秒が単位として適用されます。デフォルト値は1s
です。
coherence.management.refresh.expiry
システム・プロパティにより失効を設定することもできます。次に例を示します。
-Dcoherence.management.refresh.expiry=2s
<refresh-policy>
要素は、リモート管理情報のリフレッシュ方法を指定します。それぞれのポリシーでは、指定したMBeanの使用パターンの待機時間を短縮する様々なリフレッシュ・アルゴリズムが使用されます。表2-1は、各ポリシーを説明しています。
表2-1 リフレッシュ・ポリシー
設定 | 説明 |
---|---|
|
失効遅延が経過した後、リクエストされる前に、MBeanを前の使用パターンに基づいてリフレッシュします。この設定は、ネットワーク消費量を多少増加させることで管理情報の待機時間を低減します。この設定は、MBeanが反復的(またはプログラム的)なパターンでアクセスされる場合に最良です。 |
|
データにアクセスした後、それぞれのMBeanをリフレッシュします。この方法では最適なレスポンス・タイムが確保されます。ただし返される情報は、最後のリフレッシュ時刻からのオフセットになります。 |
|
MBeanがアクセスされ、最後のリフレッシュから失効遅延が経過すると、それぞれのMBeanをリモート・メンバーからリフレッシュします。この設定は、MBeanがランダムなパターンでアクセスされる場合に最適です。 |
coherence.management.refresh.policy
システム・プロパティによりポリシーを設定することもできます。次に例を示します。
-Dcoherence.management.refresh.policy=refresh-expired
<refresh-timeout>
要素は、MBean情報のリフレッシュ時に管理メンバーがリモート・メンバーからのレスポンスを待つ期間を指定します。この値は<refresh-expiry>
値より小さくする必要があります。この要素の値は、次の形式で指定する必要があります。
(\d)+((.)(\d)+)?[MS|ms|S|s|M|m|H|h|D|d]?
前述の文字は(左から右へ)それぞれ、次の時間間隔の単位を示しています。
MSまたはms(ミリ秒)
Sまたはs(秒)
Mまたはm(分)
Hまたはh(時)
Dまたはd(日数)
値に単位が含まれていない場合は、ミリ秒が単位として適用されます。デフォルト値は250ms
です。
coherence.management.refresh.timeout
システム・プロパティによりタイムアウトを設定することもできます。次に例を示します。
-Dcoherence.management.refresh.timeout=300ms
Oracle Coherence管理フレームワークでは、既存のMBeanサーバーを使用してOracle Coherence MBeanを公開できます。MBeanサーバーは、クラスタ・メンバーと同一のJVMプロセス内にある必要があります。また、そのクラスタ・メンバーでは、JMX管理が有効化されている必要があります。
既存のMBeanサーバーを使用するには、<default-domain-name>
要素を使用してMBeanサーバーのドメイン名を入力します。入力したドメイン名のMBeanサーバーが見つからないと、MBean登録に失敗します。次の例では、MyDomainName
ドメイン名の既存のMBeanサーバーを指定します。
<?xml version='1.0'?> <coherence xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.oracle.com/coherence/coherence-operational-config" xsi:schemaLocation="http://xmlns.oracle.com/coherence/ coherence-operational-config coherence-operational-config.xsd"> <management-config> <managed-nodes system-property="coherence.management">all </managed-nodes> <default-domain-name>MyDomainName</default-domain-name> </management-config> </coherence>
com.tangosol.net.management.MBeanServerFinder
インタフェースを実装して、Oracle Coherence管理フレームワークによるMBeanサーバーの検出方法をカスタマイズします。<server-factory>
要素内の<class-name>
要素を使用して、実装クラスの完全修飾された名前を追加します。また、<init-params>
要素を使用して、初期化パラメータを含めます。<default-domain-name>
要素を使用して、クラスをインスタンス化する際に使用する既存のMBeanサーバー・ドメイン名を指定します。
次の例では、MyMBeanServerFinder
実装クラスを指定して、その実装クラスにMyDomainName
ドメイン名を渡します。
<?xml version='1.0'?> <coherence xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.oracle.com/coherence/coherence-operational-config" xsi:schemaLocation="http://xmlns.oracle.com/coherence/ coherence-operational-config coherence-operational-config.xsd"> <management-config> <managed-nodes system-property="coherence.management">all </managed-nodes> <default-domain-name>MyDomainName</default-domain-name> <server-factory> <class-name system-property="coherence.management.serverfactory"> package.MyMBeanServerFinder</class-name> <init-params> <init-param> <param-type>int</param-type> <param-value>0</param-value> </init-param> </init-params> </server-factory> </management-config> </coherence>
coherence.management.serverfactory
システム・プロパティにより実装クラスを指定することもできます。次に例を示します。
-Dcoherence.management.serverfactory=package.MyMBeanServerFinder
Oracle Coherence MBeanにアクセスする前に、JMX管理をクラスタ・メンバーで有効にする必要があります。JMX管理の構成を参照してください。この項の例では、Oracle Coherence起動スクリプトの-jmx
引数を使用してJMX管理を有効化します。
この項には次のトピックが含まれます:
Java VisualVMは、JDK (JDK_HOME
\bin\jvisualvm
)に含まれる管理ユーティリティで、MBeanの表示およびMBeanとのやり取りの機能が提供されます。MBean機能がJava VisualVMに対するプラグインとして提供されています。このプラグインをJava VisualVM Plugins Centerからインストールする必要があります。ツールから、「ツール」 -> 「プラグイン」オプションを使用してVisualVM-MBeansプラグインをインストールします。
Java VisualVMユーティリティを使用してCoherence MBeanにローカルでアクセスする手順は次のとおりです。
JConsoleは、JDK (JDK_HOME
\bin\jconsole
)に含まれる管理ユーティリティで、MBeanの表示およびMBeanとのやり取りの機能が提供されます。
JConsoleユーティリティを使用してMBeanにローカルでアクセスする手順は次のとおりです。
リモートJMX管理では、リモート・コンピュータ上のJMXクライアントでOracle Coherence MBeanにアクセスすることが可能です。システム・プロパティはリモート・アクセスを構成するためのもので、多くの場合、MBeanサーバーをホスティングするJVMを起動する際に設定されます。つまり、そのクラスタのMBeanサーバーをホスティングするクラスタ・メンバーを起動する際にシステム・プロパティは設定されます。次の記述では、最低限の構成要件のみが説明されています。JMX管理の構成方法の詳細は、JMXドキュメントを参照してください。
http://download.oracle.com/javase/7/docs/technotes/guides/management/agent.html
セキュリティを有効化せずにOracle Coherence MBeanへのリモート・アクセスを許可するには、次のシステム・プロパティをクラスタ・メンバーの起動時に設定します。システム・プロパティを簡単に使用できるように、Oracle Coherence起動スクリプトのシステム・プロパティが-jmx
引数の使用時に自動的に設定されるようにしておきます。
-Dcom.sun.management.jmxremote.port=port
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.ssl=false
com.sun.management.jmxremote.port
値を、クラスタ・メンバーの使用可能なポートのいずれかに設定します。JMXクライアント(例: JConsole)のホストとポートを、リモートMBeanサーバーへ接続するときに指定します。
場合によっては(仮想環境またはネットワーク・アドレス変換を使用する場合)、コンピュータのホスト名が誤って識別されたり、JMXクライアントに送信するRMIスタブでデフォルト値(127.0.0.1)が返されたりすることがあります。その結果、JMXクライアントによるMBeanサーバーへの接続が失敗します。RMIスタブに正しいIPアドレスを含めるには、java.rmi.server.hostname
システム・プロパティを使用してホストのIPアドレスを明示的に設定します。次に例を示します。
-Djava.rmi.server.hostname=IP_Address
RMIプロパティの詳細は、次のRMIドキュメントを参照してください。
http://download.oracle.com/javase/7/docs/technotes/guides/rmi/javarmiproperties.html
HTMLアダプタWebアプリケーションでは、キャッシュ・クライアントのOracle Coherence MBeanへのリモート・アクセスが可能で、JMXリファレンス実装の一部として同梱されているHTMLアダプタ(HtmlAdaptorServer
)を使用します。このアダプタでは、jmxri.jar
とjmxtools.jar
ライブラリを両方ともクラスパスに含める必要があります。JMXリファレンス実装は、次のサイトから入手できます。
http://www.oracle.com/technetwork/java/javase/tech/download-jsp-141676.html
HTMLアダプタを使用してMBeanにアクセスする手順は次のとおりです。
Oracle Coherenceには、クラスタ・メンバーを専用のMBeanサーバー・ホストとして起動するためのプログラムが用意されています。このプログラムでは、Oracle Coherence MBeanへのリモート・アクセスがJMXリモートAPIのRMI、またはJMXリファレンス実装で提供されるHTTPサーバーを使用して実現されます。必要に応じてRMIとHTTPのポート設定を構成して、ファイアウォールを介したアクセスを許可します。次のコマンドを使用して、サーバーを起動します。
java -Dcoherence.management=all -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -cp coherence.jar;jmxri.jar;jmxtools.jar com.tangosol.net.management.MBeanConnector [-http -rmi]
JMX RMIを使用したアクセスを許可するには、-rmi
引数を含めます。HTTPおよびWebブラウザを使用したアクセスを許可するには、-http
引数を含めます。これらの引数を両方とも含めることはできますが、メンバーを起動するには少なくと1つの引数を指定する必要があります。
表2-2は、JMX RMI構成のオプションのプロパティについて説明しています。
表2-2 JMX RMIの構成に使用できるオプションのプロパティ
プロパティ | 説明 |
---|---|
|
JMXサーバーがバインドされているホスト。デフォルト値は |
|
JMX RMIのレジストリに使用するポート。デフォルト値は |
|
JMX RMI接続に使用するポート。デフォルト値は |
表2-3は、HTTPの構成に使用できるオプションのプロパティについて説明しています。
表2-3 HTTPの構成に使用できるオプションのプロパティ
プロパティ | 説明 |
---|---|
|
HTTPの接続に使用するポート。デフォルト値は |
JConsoleを使用してデフォルト設定でMBeanサーバーに接続するには、次のコマンドを使用します。
jconsole service:jmx:rmi://localhost:3000/jndi/rmi://localhost:9000/server
HTTPを使用してデフォルト設定でMBeanサーバーに接続するには、次のURLにアクセスします。
http://localhost:8888
注意:
認証およびSecure Socket Layer (SSL)を使用したセキュアなアクセスを設定するには、次のJMXエージェントのドキュメントを参照してください。
http://download.oracle.com/javase/7/docs/technotes/guides/management/agent.html
Coherence-JVisualVMプラグインによって、JDK (JDK_HOME
\bin\jvisualvm
)に含まれるJava VisualVM管理ユーティリティを使用したCoherenceクラスタのモニターが可能になります。プラグインは、Coherence MBeanデータを集約し、単一のCoherenceクラスタの簡潔な運用ビューを表示します。一定期間の管理情報が表示されるため、リアルタイム分析およびトラブルシューティングが可能になります。
注意:
Coherence-JVisualVMプラグインは、開発およびテスト時に単一のCoherenceクラスタをモニターすることを目的とした設計時ツールです。本番環境でのモニタリング、管理およびアラート生成には、エンタープライズ・レベルの管理製品(Oracle Enterprise Managerなど)を使用する必要があります。
この項には次のトピックが含まれます:
Coherence-JVisualVMプラグイン・ファイル(coherence-jvisualvm.nbm
)は、COHERENCE_HOME
\plugins\jvisualvm
ディレクトリにあります。Java VisualVMプラグイン・ツールを使用してプラグインをインストールします。Coherence-JVisualVMプラグインは、JDK 7 update 79以上およびJDK 8 update 40以上でサポートされています。
Coherence-JVisualVMプラグインをインストールするには、次の手順を実行します。
JDK_HOME
\bin\jvisualvm
ファイルを実行します。「Java VisualVM」ウィンドウが表示されます。COHERENCE_HOME
\plugins\jvisualvm\coherence-jvisualvm.nbm
ファイルを検索します。Coherenceクラスタは、Coherenceクラスタ・メンバーであるJVMプロセスに接続し、「Oracle Coherence」タブを使用することによって、Java VisualVMツールでモニターされます。管理データにアクセスする前に、Coherence JMX管理をクラスタ・メンバーで有効にする必要があります(JMX管理の構成を参照してください)。
Coherence-JVisualVMプラグインを使用してCoherenceクラスタをモニターするには、次の手順を実行します。
表2-4に、Coherence JVisualVMプラグインで使用可能なタブの概要を示します。
表2-4 Coherence-JVisualVMプラグインのタブの説明
タブ | 説明 |
---|---|
クラスタの概要 |
クラスタ名、バージョン、メンバー数および高可用性ステータスを含むクラスタの概要情報が表示されます。他のタブからサマリー・グラフが集計され、使用可能および使用済の合計クラスタ・メモリー、クラスタ・マシンの平均負荷、パケット・パブリッシャおよびパケット・レシーバの成功率が表示されます。 「クラスタの概要」タブを使用して、クラスタの動作を示す簡単なスナップショットを採取し、発生する可能性のあるパフォーマンスの問題および高可用性の問題を識別します。 |
マシン |
クラスタ内の物理サーバーのリストが表示され、このリストには各サーバーのメモリー・プロファイルが含まれます。サマリー・グラフには、これらのサーバーの平均負荷が表示されます。 「マシン」タブを使用して、各サーバーの負荷をモニターし、使用可能なメモリーをすべて使用する危険のあるサーバーを識別します。 |
メンバー |
すべてのクラスタ・メンバー、そのアドレスおよびクラスタでのロールのリストが表示され、そのリストにはパブリッシャとレシーバの両方の成功率、ヒープ・メモリー使用量および送信キュー・サイズが含まれます。サマリー・グラフには、使用可能および使用済の合計クラスタ・メモリーが表示されます。メンバー行を右クリックして、「詳細の表示」を選択して統計の完全なリストを表示する、または「ノードの状態をレポート」を選択してノードのスレッドのフル・ダンプを取得します。 「メンバー」タブを使用して、クラスタのメンバーシップをモニターし、メンバーおよびクラスタ全体の両方で発生する可能性のあるメモリーの問題を識別および診断します。 |
サービス |
サービス・パーティション数およびstatusHA値を含むクラスタ・サービスの情報が表示されます。サービスを選択し、サービスの各ノードの詳細なスレッド情報と、次のデータをリフレッシュした後でその情報のグラフを確認します。サービスを右クリックして、サービス・パーティション統計を表示します。 サービス・スレッドのパフォーマンスを示すRAWデータは、グラフに左端に表示されます。ノード行を右クリックして、「詳細の表示」を選択し、統計の完全なリストを表示します。 「サービス」タブを使用して、クラスタ内のサービスをモニターし、サービス・スレッドで発生する可能性のあるパフォーマンスの問題を識別します。 |
キャッシュ |
サイズおよびメモリー使用量を含むクラスタ・キャッシュの情報が表示されます。メモリー使用量について正しい情報を表示するには、バイナリ単位換算カリキュレータを使用するようにキャッシュのバッキング・マップ・スキームを構成する必要があります。これは、単位換算カリキュレータが定義されていない場合のデフォルトの単位換算カリキュレータです。キャッシュを選択し、次のデータ・リフレッシュの詳細情報を確認します。ニア・キャッシュが選択されている場合、フロント・キャッシュで追加の統計が使用可能です。ノード行を右クリックして、「詳細の表示」を選択し、キャッシュ・サイズとアクセス統計、またはキャッシュ・ストレージ統計のいずれか(どのタブがアクティブであるかによります)の完全なリストを表示します。 「キャッシュ」タブを使用して、キャッシュ統計の詳細ビューを取得し、キャッシュ問合せで発生する可能性のあるパフォーマンスの問題を識別します。 |
フェデレーション |
フェデレーテッド・サービスの現在の参加者クラスタのコンテキスト内でのフェデレーテッド・サービスの情報を表示します。現在の参加者クラスタが接続されている各参加者クラスタのリストが表示されます。クラスタ参加者を選択して、現在のクラスタ参加者のメンバーに関連するパフォーマンス統計を表示します。現在の参加者を構成してデータを送信、受信または送受信するかに応じて、送信および受信統計の両方が提供されます。特定のクラスタ・メンバーを選択して、帯域幅使用量およびレプリケーション統計を表示します。 「フェデレーション」タブを使用して、フェデレーテッド参加者を監視し、フェデレーテッド参加者間で発生する可能性のあるパフォーマンスの問題を特定します。 「フェデレーション」タブは、フェデレーション操作をサポートしています。クラスタ参加者を右クリックして、選択可能な操作のリストを表示します。 |
永続性 |
使用可能および使用中のストレージ、永続性操作で提供される待機時間およびキャッシュ・スナップショットの数を含むキャッシュ永続性に関する情報を表示します。パフォーマンス統計は、アクティブな永続性モードにのみ適用されます。 「永続性」タブを使用して、アクティブな永続性の詳細な表示を取得し、発生する可能性のあるパフォーマンスおよび領域の消費に関する問題を特定します。 「永続性」タブは、永続性操作の実行をサポートしています。サービスを右クリックして、選択可能な操作のリストを表示します。 |
エラスティック・データ |
RAMおよびフラッシュのジャーナルのメモリー使用量の情報が表示されます。それぞれの進行状況バーを選択して、RAMおよびフラッシュのジャーナルの詳細を表示します。ジャーナル統計には、フェデレーテッドキャッシュ機能に必要なエラスティック・データの内部使用量が含まれます。 「エラスティック・データ」タブを使用して、エラスティック・データのメモリー使用量を監視し、いつメモリーが使い果たされる可能性があるか特定します。 |
プロキシ・サーバー |
各プロキシ・サーバーをまたぐ接続数および送受信された合計メッセージを含む、クラスタ内のプロキシ・サーバーの情報が表示されます。サマリー・グラフには、プロキシ・サーバー接続の合計数が表示されます。 「プロキシ・サーバー」タブを使用して、プロキシに接続しているCoherence*Extendクライアントをモニターし、プロキシで発生する可能性のあるパフォーマンスの問題を識別します。 注意: このタブは、クラスタでプロキシ・サーバーが構成されている場合のみ使用可能です。また、他のCoherence JVMプロセスの後プロキシ・サーバーが起動した場合は、Coherence JVMプロセスに再接続する必要がある可能性があります。 |
HTTPサーバー |
プロキシ・サーバーに対して構成されているHTTPアクセプタに関する情報を表示します。情報には、各サーバーでの接続数、合計接続数とレスポンス・コードのグラフ、および選択したデバイスのエラーとリクエストの推移が含まれます。 HTTPサーバータブを使用して、リソース使用率を監視し、潜在的なパフォーマンスの問題を特定します。 注意: このタブは、プロキシ・サーバーに対してHTTPアクセプタが構成されている場合のみ使用可能です。また、他のCoherence JVMプロセスの後プロキシ・サーバーが起動した場合は、Coherence JVMプロセスに再接続する必要がある可能性があります。 |
Coherence*Web |
デプロイされているアプリケーションの数、格納されるHTTPセッションの数、セッション・リープに関するその他の情報を含む、クラスタ内のHTTPセッション・ストレージに関する情報が表示されます。 「Coherence*Web」タブを使用して、HTTPセッション・ストレージをモニターし、セッション・ストレージで発生する可能性のあるパフォーマンスの問題を識別します。 注意: このタブは、HTTPセッション・ストレージでCoherenceクラスタが使用されている場合のみ使用可能です。 |
JCache |
JCacheキャッシュの構成情報およびパフォーマンス統計情報を表示します。 JCacheタブを使用して、構成およびパフォーマンスの問題をトラブルシューティングします。 注意: このタブはCoherenceクラスタがJCacheキャッシュの格納に使用されている場合にのみ使用できます。 |
Coherence-JVisualVMプラグインを使用して、WebLogic Serverドメインで管理されるCoherenceクラスタをモニターできます。1つの管理対象Coherenceサーバーを管理プロキシとして構成する必要があり、すべての管理対象Coherenceサーバーを再起動する必要があります。WebLogic Serverドメインの実行時MBeanサーバーは、JMX情報を管理プロキシから収集します。管理プロキシの構成の詳細は、『Oracle WebLogic Serverクラスタの管理』を参照してください。
注意:
WebLogic Serverマルチテナント・ドメインに接続している場合、Coherence-JVisualVMプラグインはWebLogicドメイン管理者として接続された場合にのみ表示されます。マルチテナント・ドメインには、パーティション管理者として接続できません。WebLogic Serverドメイン管理の場合、すべてのドメイン・パーティションにアクセスできます。サービス、キャッシュおよび永続性操作を実行する際は、正しいパーティションを選択するようにしてください。
Java VisualVMを使用してドメインの実行時MBeanサーバーに接続するには、次の手順を実行します。
Coherence-JVisualVMプラグインは、デフォルトの30秒ごとにCoherence MBeanサーバーのデータをリフレッシュするように設定されています。ほとんどのタブ(「サービス」タブ、「キャッシュ」タブ、「フェデレーション」タブなど)の詳細セクション上のデータは、別のタブが選択されると瞬時に削除され、次のリフレッシュ・サイクル時にリフレッシュされます。
リフレッシュ設定を変更するには、Java VisualVMを起動するときに次のシステム・プロパティを使用します。
jvisualvm -J-Dcoherence.jvisualvm.refreshtime=10
管理データをリフレッシュするとパフォーマンスに影響が出る場合(特に、大規模クラスタの場合)、プラグインのリフレッシュ間隔はデフォルトのままにし、デフォルトのCoherence管理リフレッシュ有効期限を1秒から高い値に変更することを検討してください。値は、オペレーション・オーバーライド・ファイルまたはシステム・プロパティを使用して指定できます。リフレッシュ有効期限の変更の詳細は、管理情報のリフレッシュの構成を参照してください。
また、Coherence-JVisualVMプラグインは、コンソール・ログに問合せ回数を含めるように構成できます。このログは、パフォーマンスの問題をトラブルシューティングするときに役立ちます。
ログで問合せ回数を有効にするには、Java VisualVMを起動するときに次のシステム・プロパティを使用します。
-J-Dcoherence.jvisualvm.log.query.times=true
コンソールでJava VisualVMログを表示するには、「ヘルプ | バージョン情報」を選択してから、「Java VisualVMについて」画面で「ログファイル」をクリックします。