第21章 JBoss Data Grid の管理ツール


21.1. JMX (Java Management Extensions)

21.1.1. Java Management Extensions (JMX) について

Java Management Extensions (JMX) は、アプリケーション、デバイス、システムオブジェクト、およびサービス指向ネットワークを管理および監視するツールを提供する Java ベースの技術です。これらの各オブジェクトは MBeans によって管理および監視されます。
JMX はミドルウェア管理の事実上の業界標準です。そのため、JBoss Data Grid では管理および統計情報を公開するために JMX が使用されます。

21.1.2. JBoss Data Grid における JMX の使用

JBoss Data Grid インスタンスの管理は、関連する統計情報をできるだけ多く公開することを目的としています。この統計情報により、管理者は各インスタンスの状態を確認することができます。1 つのインストールは数十または数百のインスタンスを構成することがあるため、各インスタンスの統計情報を明確で簡潔に公開し、表示する必要があります。
このような統計情報を公開し、管理者に対して適切な情報を見やすく表示するため、JBoss Data Grid では、JMX は JBoss Operations Network (JON) と共に使用されます。

21.1.3. JMX 統計レベル

JMX 統計は、次の 2 つのレベルで有効にすることが可能です。
  • 個別のキャッシュインスタンスによって管理情報が生成されるキャッシュレベル。
  • CacheManager レベル。このレベルでは、CacheManager エンティティーが CacheManager より作成されたすべてのキャッシュインスタンスを管理します。そのため、管理情報は個別のキャッシュではなく、これらすべてのキャッシュインスタンスに対して生成されます。

21.1.4. キャッシュインスタンスに対して JMX を有効にする

キャッシュレベルでは、次のように宣言的またはプログラムを用いて JMX 統計を有効にすることができます。
キャッシュレベルで JMX を宣言的に有効にする

デフォルトキャッシュインスタンスに対する <default> 要素内または特定の名前付きキャッシュに対するターゲット <namedCache> 要素下に、次のスニペットを追加します。

<jmxStatistics enabled="true"/>
Copy to Clipboard Toggle word wrap
キャッシュレベルでプログラムを用いて JMX を有効にする

プログラムを用いて JMX をキャッシュレベルで有効にするには、以下のコードを追加します。

Configuration configuration = ...
configuration.setExposeJmxStatistics(true);
Copy to Clipboard Toggle word wrap

21.1.5. CacheManagers に対して JMX を有効にする

CacheManager レベルでは、次のように宣言的またはプログラムを用いて JMX 統計を有効にすることができます。
CacheManager レベルで JMX を宣言的に有効にする

次の <global> 要素を追加して、CacheManager レベルで JMX を宣言的に有効にします。

<globalJmxStatistics enabled="true"/>
Copy to Clipboard Toggle word wrap
CacheManager レベルでプログラムを用いて JMX を有効にする

次のコードを追加して、プログラムを用いて JMX を CacheManager で有効にします。

GlobalConfiguration globalConfiguration = ...
globalConfiguration.setExposeGlobalJmxStatistics(true);
Copy to Clipboard Toggle word wrap

21.1.6. 複数の JMX ドメイン

複数の CacheManager インスタンスが 1 つの仮想マシンに存在したり、キャッシュインスタンスの名前が CacheManager クラスと異なる場合に、JMX ドメインが複数使用されます。
この問題を解決するには、JMX や JBoss Operations Network などの監視ツールが簡単に識別および使用できるような名前を各 CacheManager に付けるようにします。
CacheManager の名前を宣言的に設定する

次のスニペットを関係する CacheManager 設定に追加します。

<globalJmxStatistics enabled="true" cacheManagerName="Hibernate2LC"/>
Copy to Clipboard Toggle word wrap
CacheManager の名前をプログラミングで設定する

次のコードを追加し、プログラムを用いて CacheManager の名前を設定します。

GlobalConfiguration globalConfiguration = ...
globalConfiguration.setExposeGlobalJmxStatistics(true);
globalConfiguration.setCacheManagerName("Hibernate2LC");
Copy to Clipboard Toggle word wrap

21.1.7. MBean について

MBean は、サービス、コンポーネント、デバイス、またはアプリケーションなどの管理可能なリソースを表します。
JBoss Data Grid は複数の側面を監視および管理する MBeans を提供します。例えば、トランスポート層で統計を提供する MBeans などが提供されます。JBoss Data Grid サーバーは、JMX 統計で設定されます。JMX 統計はホスト名、ポート、読み取りバイト、書き込みバイト、およびワーカースレッドの数を提供する MBean で、次の場所に存在します。
jboss.infinispan:type=Server,name=<Memcached|Hotrod>,component=Transport
Copy to Clipboard Toggle word wrap

21.1.8. MBean を理解する

キャッシュマネージャーまたはキャッシュレベルで JMX レポートが有効になっている場合、JConsole や VisualVM などの標準的な JMX GUI を使用して JBoss Data Grid を実行する Java 仮想マシンに接続します。接続した場合、次の MBean を使用できます。
  • キャッシュマネージャーレベルの JMX 統計が有効になっている場合、jboss.infinispan:type=CacheManager,name="DefaultCacheManager" という名前の MBean が存在し、キャッシュマネージャー MBean によってプロパティーが指定されます。
  • キャッシュレベルの JMX 統計が有効になっている場合、使用される設定に応じて複数の MBean が表示されます。例えば、ライトビハインドキャッシュストアが設定されている場合、キャッシュストアコンポーネントに属するプロパティーを公開する MBean が表示されます。すべてのキャッシュレベル MBeans は同じ形式を使用します。
    jboss.infinispan:type=Cache,name="<name-of-cache>(<cache-mode>)",manager="<name-of-cache-manager>",component=<component-name>
    
    Copy to Clipboard Toggle word wrap
    この形式の詳細は次の通りです。
    • cache-container 要素の default-cache 属性を使用してキャッシュのデフォルト名を指定します。
    • cache-mode はキャッシュのキャッシュモードに置き換えられます。可能な列挙値を小文字にしたものがキャッシュモードを表します。
    • component-name は、 JMX 参考ドキュメントにある JMX コンポーネント名の 1 つに置き換えられます。
例えば、同期分散に対して設定されたデフォルトキャッシュのキャッシュストア JMX コンポーネント MBean は次のように命名されます。
jboss.infinispan:type=Cache,name="default(dist_sync)", manager="default",component=CacheStore
Copy to Clipboard Toggle word wrap
ユーザー定義の名前でサポートされていない文字が使用されないようにするため、キャッシュおよびキャッシュマネージャーの名前は引用符で囲まれています。

21.1.9. デフォルトでない MBean サーバーでの MBean の登録

使用されるすべての MBean がデフォルトで登録される場所は、標準の JVM MBeanServer プラットフォームです。ユーザーは代替の MBeanServer インスタンスを設定することもできます。MBeanServerLookup インターフェースを実装して、確実に getMBeanServer() メソッドが希望の (デフォルト以外の) MBeanServer を返すようにします。
デフォルト以外の場所を設定して MBean を登録するには、実装を作成し、クラスの完全修飾名を用いて JBoss Data Grid を設定します。例は次の通りです。
完全修飾ドメイン名を宣言的に追加する

次のスニペットを追加します。

<globalJmxStatistics enabled="true" mBeanServerLookup="com.acme.MyMBeanServerLookup"/>
Copy to Clipboard Toggle word wrap
完全修飾ドメイン名をプログラミングで追加する

次のコードを追加します。

GlobalConfiguration globalConfiguration = ...
globalConfiguration.setExposeGlobalJmxStatistics(true);
globalConfiguration.setMBeanServerLookup("com.acme.MyMBeanServerLookup")
Copy to Clipboard Toggle word wrap
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2026 Red Hat
トップに戻る