目次 | 前の項目 | 次の項目 Java Management Extensions (JMX) テクノロジ概要

第 5 章

JMX コネクタを使用したリソースのリモート管理

『Java Management Extensions Instrument and Agent Specification』では、「コネクタ」という概念を定義しています。コネクタを使用すると、Java Management Extensions (JMX) テクノロジの MBean サーバーから Java テクノロジベースのリモートクライアントへのアクセスが可能になります。コネクタのクライアント側は、MBean サーバーと基本的に同じインタフェースをエクスポートします。

コネクタは、コネクタクライアントとコネクタサーバーからなります。コネクタサーバーは MBean サーバーに接続して、クライアントからの接続要求を待機します。コネクタクライアントは、コネクタサーバーとの接続を確立します。通常、コネクタクライアントは、コネクタサーバーとは別の Java 仮想マシン (Java VM) 内にあり、別のマシン上で実行されることが多くあります。

コネクタは、さまざまな実装が可能です。特に、クライアントとサーバーの間の接続で通信するためのプロトコルは多種多様です。

コネクタサーバーには通常、アドレスがあり、コネクタクライアントとコネクタサーバーの間で接続を確立するために使用されます。コネクタによっては、接続の確立のために、接続スタブを用意している場合もあります。接続を確立する方法は、使用する検索・検出テクノロジによって異なります (第 6 章「検出・検索サービス」参照)。

この章では、JMX Remote API 仕様で定義されたさまざまな種類のコネクタと、コネクタで使用されるプロトコルについて説明します。

RMI コネクタ

JMX Remote API 標準では、RMI を基にした標準プロトコルを定義しています。RMI コネクタは、JMX Remote API の各実装に存在しなければなりません。

RMI では、Java Remote Method Protocol (JRMP) と Internet Inter-ORB Protocol (IIOP) という 2 つの標準トランスポートを定義しています。RMI コネクタは、両方のトランスポートをサポートしています。

JRMP 上の RMI コネクタでは、クライアントとサーバーの間の接続をセキュリティー保護および認証するための単純な機構を備えています。この機構では、RMI コネクタを使用する環境に対して、基本的なレベルのセキュリティーを提供します。総称 JMXMP コネクタでは、より高度なレベルのセキュリティーを提供しています。

クライアントとサーバーの間の接続で Secure Socket Layer (SSL) を使用するために RMI ソケットファクトリを使用することで、JRMP 上の RMI コネクタの基本セキュリティー機構は向上します。

総称コネクタ

Java SE プラットフォームに含まれていない JMX Remote API の任意指定部分は、総称コネクタです。このコネクタは、プラグイン可能なモジュールを追加することで構成でき、次の内容を定義します。

JMX Messaging Protocol (JMXMP) コネクタは、トランスポートプロトコルが TCP ベースで、オブジェクトラッピングがネイティブ Java 直列化であるような構成の総称コネクタになります。セキュリティーは RMI コネクタの場合より高度です。セキュリティーは、Java Secure Socket Extension (JSSE)、Java Authentication and Authorization Service (JAAS)、および Simple Authentication and Security Layer (SASL) が基になります。

総称コネクタとその JMXMP 構成は省略可能です。 つまり、JMX Remote API の実装に常に含まれているわけではありません。Java SE プラットフォームには省略可能な総称コネクタは含まれていません。


注 – JMXMP コネクタを使用する場合は、JSR 160 リファレンス実装を http://java.sun.com/products/JavaManagement/download.html からダウンロードして、jmxremote_optional.jar ファイルをクラスパスに追加してください。JSR 160 リファレンス実装に含まれる『JMX Remote API Tutorial』には、JMXMP コネクタの使用例があります。

ユーザー定義プロトコル

RMI コネクタは JMX Remote API の各実装に含まれている必要がありますが、JMX Remote API 標準で定義されていないプロトコルを基にしたコネクタを実装することもできます。この典型的な例としては、HTTP/S を使用するプロトコルを基にしたコネクタがあります。 他のプロトコルも可能です。JMX 仕様では、ユーザー定義プロトコルを基にしたコネクタの実装方法について説明しています。

 


目次 | 前の項目 | 次の項目 Java Management Extensions (JMX) テクノロジ概要
Java Management Extensions (JMX), Java Platform, Standard Edition 6