目次||

第6章

検出、検索サービス

Java Management Extensions (JMX) Remote API Specification』では、既存の検出、検索インフラストラクチャを使用してJMX APIエージェントを通知したり検索したりする方法が説明されています。この仕様では、JMXテクノロジ固有の検出、検索APIについては定義されていません。

この章では、JMXテクノロジで使用できる既存の検出、検索インフラストラクチャの概要を、次のセクションで簡単に説明します。

これらのインフラストラクチャについての詳細は、『Java Management Extensions Remote API 1.0 Specification』の「References」セクションを参照してください。

検索サービスについて

検索サービスはJMXエージェントとJMXクライアントが使用します。1つのJava VMには、多数のJMXエージェントやJMXクライアントが含まれている場合があります。

  • JMXエージェントは、次の機能からなる論理サーバー・アプリケーションです。
  • MBeanサーバーが1つ
  • JMXコネクタ・サーバーが1つ以上。JMXコネクタ・サーバーにより、そのMBeanサーバーに格納されるMBeanに対してリモート・クライアントがアクセスできるようになる
  • JMXクライアントは、JMXエージェントとのクライアント接続を開く論理クライアント・アプリケーションです。

Java Management Extensions (JMX)テクノロジのチュートリアル』と付属の例では、検索サービスを使用してJMXエージェントを通知したり検索したりする方法が示されています。3つのインフラストラクチャの手順は似ています。大きく異なる点は、SLPとJNDIの場合は、検索サービスでエージェントが登録するのはアドレスですが、Jiniネットワーク・テクノロジを使用した場合に登録するのはJMXコネクタ・スタブです。


注 -既存の検出、検索サービスの使用はオプションです。JMX APIエージェントのアドレスをURLの形式でエンコードし、そのURLをマネージャに通知することもできます。

Service Location Protocol (SLP)の使用

Service Location Protocol (SLP)では、企業ネットワーク内でネットワーク化されたサービスの存在、位置、および構成をネットワーク機能アプリケーションが検出できるフレームワークを提供します。

次の手順は、SLP検索サービスを使用してJMXエージェントを通知および検索するための、JMX Remote API仕様で定義された手順をまとめたものです。

  • エージェントは1つ以上のJMXコネクタ・サーバーを作成します。
  • 公開する各コネクタについて、エージェントはSLP検索サービスを使用して、そのアドレスを登録します。このとき場合によっては、エージェントやコネクタを限定し、フィルタとして使用できるような追加の属性を指定します。
  • クライアントはSLP検索サービスをクエリーし、クエリーに当てはまる1つ以上のアドレスを取得します。
  • 最後に、クライアントは、取得したアドレスで特定されるサーバーに対して接続しているコネクタを取得します。

JMX Remote API仕様では、SLPプロトコルに準拠したURLスキームを定義しています。『Java Management Extensions (JMX) Remote API Specification』を参照してください。仕様では、登録時に指定される、必須およびオプションのSLP検索属性も定義しています。

Jiniネットワーク・テクノロジの使用

Jiniネットワーク・テクノロジは、オープンなソフトウェア・アーキテクチャで、開発者はネットワークの変化に対応可能なサービスを作成できます。Jiniの仕様では、標準の検索サービスがあります。実行中のJini検索サービスは、簡単なAPI呼出しで検出できます。

次の手順は、Jini検索サービスを使用してJMXエージェントを通知および検索するための、JMX Remote API仕様で定義された手順をまとめたものです。

  • エージェントは1つ以上のJMXコネクタ・サーバーを作成します。
  • 公開する各コネクタについて、エージェントはJini検索サービスを使用して、JMXコネクタ・スタブを登録します。このとき場合によっては、エージェントやコネクタを限定し、フィルタとして使用できるような追加の属性を指定します。
  • クライアントはJini検索サービスをクエリーし、クエリーに当てはまる1つ以上のコネクタ・スタブを取得します。
  • 最後に、クライアントは、取得したコネクタ・スタブを使用して、サーバーに直接接続します。

JMX Remote API仕様では、Jiniテクノロジベースのエントリによるバインドを定義しています。『Java Management Extensions (JMX) Remote API Specification』を参照してください。仕様では、エージェント・コネクタの登録時に指定する、必須およびオプションのエントリも定義しています。

LDAPバックエンドでのJava Naming and Directory Interface (JNDI) APIの使用

Java Naming and Directory Interface(JNDI) APIは、Javaプラットフォームの標準の機能拡張です。Javaテクノロジ対応のアプリケーションに、さまざまなネームおよびディレクトリ・サービスに対する統一的なインタフェースを提供します。

JMX Remote API仕様では、LDAPサーバーを使用して、JMXエージェントに公開されたJMXコネクタの情報を格納および取得する方法を詳細に定めています。

次の手順は、JNDI検索サービスを使用するための、JMX Remote API仕様で定義された手順をまとめたものです。

  • エージェントは1つ以上のJMXコネクタ・サーバーを作成します。
  • 公開する各コネクタについて、エージェントはJNDI検索サービスを使用して、そのアドレスを登録します。このとき場合によっては、エージェントやコネクタを限定し、フィルタとして使用できるような追加の属性を指定します。
  • クライアントはJNDI検索サービスをクエリーし、クエリーに当てはまる1つ以上のアドレスを取得します。
  • 最後に、クライアントは、取得したアドレスで特定されるサーバーに対して接続しているコネクタを取得します。

JMX Remote APIでは、アドレスを登録するためのLDAPスキーマを定義し、また登録したエージェントをクライアントが検出する方法について説明しています。詳細は、「JMX 1.4仕様」を参照してください。仕様では、リース・メカニズムも定義しています。

 


目次||

Copyright © 1993, 2020, Oracle and/or its affiliates. All rights reserved.