目次 | 前へ | 次へ

第 1 章

JMX テクノロジの紹介

Java Management Extensions テクノロジは、Java 2 Platform, Standard Edition (J2SE) 5.0 の Java プラットフォームに標準装備されています。JMX テクノロジについてすでに理解している場合は、バージョン情報について付録 A「JMX テクノロジのバージョン」を参照してください。

JMX テクノロジでは、アプリケーション、デバイス、サービスなどのリソースを管理するための簡単で標準的な方法が用意されています。JMX テクノロジは動的であるため、リソースが作成、インストール、および実装されると、そのリソースを監視および管理するために使用できます。JMX テクノロジを使用して、Java 仮想マシン1 (Java VM) を監視および管理することもできます。

JMX テクノロジは、密接に関連する 2 つの Java Specification Requests (JSR) として、Java Community Process (JCP) によって開発されました。

  • JSR 3, Java Management Extensions Instrumentation and Agent Specification
  • JSR 160, Java Management Extensions Remote API

どちらの JSR も Javadoc ツールで生成された API ドキュメントによって定義されています。また、どちらも仕様ドキュメントが PDF でも提供されています。

名前が示すとおり、JMX Remote API ではリモート機能が JMX 仕様に追加されており、アプリケーション、システム、およびネットワークをリモートで監視および管理できます。このドキュメントでは、「JMX テクノロジ」という語は JMX 仕様と JMX Remote API の両方を指しています。

この章では、次のセクションで JMX テクノロジについて紹介します。

JMX テクノロジについて

JMX 仕様では、アーキテクチャー、設計パターン、および API について Java プログラミング言語で定義しています。また、アプリケーションとネットワークの管理および監視のサービスについても定義しています。

JMX テクノロジを使用して、リソースは、Managed Bean、つまり MBean と呼ばれる 1 つまたは複数の Java オブジェクトによって計測されています。これらの MBean は、MBean サーバーと呼ばれるコアの管理対象オブジェクトサーバーに登録されます。MBean サーバーは管理エージェントとして動作し、Java プログラミング言語を使用できるほとんどのデバイス上で実行できます。

仕様では、仕様に準拠して計測されたリソースを管理するために使用する JMX エージェントを定義しています。JMX エージェントは、MBean が登録されている MBean サーバーと、MBean を処理する一連のサービスで構成されます。JMX エージェントは、この方法で直接リソースを制御し、リモート管理アプリケーションで利用できるようにします。

リソースが計測される方法は、管理インフラストラクチャーとはまったく無関係です。そのためリソースは、その管理アプリケーションが実装されている方法に関係なく管理可能です。

JMX テクノロジでは、標準コネクタ (JMX コネクタ) を定義しています。JMX コネクタを使用すると、リモート管理アプリケーションから JMX エージェントにアクセスできます。別のプロトコルを使用する JMX コネクタでも、同じ管理インタフェースを用意しています。そのため管理アプリケーションでは、使用している通信プロトコルに関係なく、リソースを透過的に管理できます。また JMX エージェントは、JMX 仕様に準拠していないが JMX エージェントをサポートしているシステムやアプリケーションでも使用できます。

JMX テクノロジを使用する理由

Java コードの計測、有用な Java エージェントの作成、分散管理ミドルウェアやマネージャーの実装、既存の管理および監視システムに対するソリューションのスムーズな統合など、JMX テクノロジでは、あらゆる業界の Java 開発者に柔軟性の高い実現方法を提供します。

  • JMX テクノロジを使用すると最小限の投資で Java アプリケーションを管理できます。JMX テクノロジエージェントは、Java テクノロジ対応のほとんどのデバイスで実行できるため、Java アプリケーションの設計に大きな影響を与えることなく管理できます。Java アプリケーションでは、管理オブジェクトサーバーを埋め込み、その機能の一部をオブジェクトサーバーに登録された 1 つまたはいくつかの管理対象 Bean (MBean) として利用できるようにする必要があるだけです。
  • JMX テクノロジでは、Java テクノロジベースのアプリケーション、システム、およびネットワークを管理する標準的な方法を用意しています。たとえば、Java Platform, Enterprise Edition (Java EE) 5 アプリケーションサーバーは、JMX アーキテクチャーに準拠しており、それゆえに JMX テクノロジを使用して管理できます。
  • JMX テクノロジを使用すれば、Java VM のアウトオブボックスの管理ができます。Java 仮想マシン (Java VM) は、JMX テクノロジを使用して高度に計測されています。JMX エージェントを起動して、簡単に組み込みの Java VM インストゥルメンテーションにアクセスできます。これによって、Java VM のリモートによる監視と管理ができます。
  • JMX テクノロジでは、スケーラブルで動的な管理アーキテクチャーを用意しています。それぞれの JMX エージェントサービスは、要件に応じて管理エージェントにプラグイン可能な独立モジュールです。このコンポーネントベースの考え方により、JMX ソリューションは、設置面積の小さなデバイスから大規模な遠距離通信スイッチ、さらにはそれ以上の規模にまで拡大可能です。JMX 仕様では、一連のコアエージェントサービスを用意しています。サービスは追加で開発でき、管理インフラストラクチャーで動的にロード、アンロード、または更新が可能です。
  • JMX テクノロジは、既存の標準 Java テクノロジを活用しています。JMX 仕様では、Java Naming and Directory Interface (JNDI) などの既存の Java 仕様を必要に応じて参照しています。
  • NetBeans IDE 5.0 では、JMX モジュールを作成することで JMX アプリケーションの作成が簡単になります。JMX モジュールは、NetBeans Update Center から入手できます。
  • JMX テクノロジを使用すると、既存の管理ソリューションや最新技術と簡単に統合できます。たとえば JMX エージェントは HTML ブラウザから管理できます。JMX API はオープンインタフェースで、あらゆる管理システムベンダーが利用可能です。JMX ソリューションでは、JiniTM ネットワークテクノロジや Service Location Protocol (SLP) などの検索、検出サービスおよびプロトコルを使用できます。

JDK7 の新機能

JDK7 Update 4 から、JMX 向けの仮想マシンサポート機能が拡張され、管理および監視システムをサポートするための機能が追加されました。これらの拡張機能のサマリーを次に示します。

1「Java 仮想マシン」と「Java VM」という語は、Java プラットフォームの仮想マシンを指します。

 


目次 | 前へ | 次へ

 


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