この章では、Solaris WBEM (Web-Based Enterprise Management) の概要について説明します。内容は次のとおりです。
この章では、WBEM および CIM の一般的な概要について説明します。WBEM および CIM の詳細については、DMTF (Distributed Management Task Force) の Web サイト (http://www.dmtf.org) を参照してください。
WBEM (Web-Based Enterprise Management) は、管理テクノロジとインターネットテクノロジを組み合わせたものです。企業のコンピューティング環境の管理を統合します。WBEM を使用すると、最新の Web 技術を活用した、標準規格管理ツールの統合的なセットを提供できます。WBEM 方式で管理アプリケーションを開発することにより、連携して動作する製品を低コストで作成できます。
Distributed Management Task Force (DMTF) は、コンピュータならびに情報通信業界の企業を代表するグループです。デスクトップ環境、エンタープライズ環境、インターネットの管理に関する標準規格の開発および普及において主導的な立場にあります。DMTF の目的は、異なったプラットフォーム間で異なったプロトコルを使用するコンピュータおよびネットワークの統合的な管理方法を開発することです。その結果、完全な相互運用性を備えた、費用効果の高い製品を実現することができます。
DMTF によって開発された CIM (Common Information Model) は、システムとネットワークの管理に使用される業界標準規格です。CIM は、ネットワーク環境の各部の分類と定義を行い、それらの統合方法を表現するための概念的な共通のフレームワークを提供します。CIM の概念は、技術の実装には依存せず、あらゆる管理領域に適用できます。
CIM の構成要素は次のとおりです。
CIM 仕様 – ほかの管理モデルとの統合に使用される言語および手法を定義します。
CIM スキーマ – システム、アプリケーション、LAN、およびデバイスの実際のモデルの説明を提供します。CIM スキーマは、次のモデルで構成されます。
コアモデル – 管理環境の基本となる一般的な前提事項を提供します。クラスと関連のサブセットで構成されます。このセットにより、管理システムを分析および説明する基本的な用語を提供します。
共通モデル – 特定の技術や実装に依存せず、特定の管理領域に共通する概念を表します。管理アプリケーションの開発基盤を提供します。
拡張スキーマ – 共通モデルで使用される技術およびプラットフォーム固有の拡張を表します。拡張スキーマは、オペレーティングシステムなどの環境に固有のものです。たとえば、Solaris スキーマは拡張スキーマです。ベンダーは、オブジェクトのサブクラスを作成することにより製品のモデルを拡張します。次にアプリケーションは、標準モデルのオブジェクトインスタンスを表示して異機種システム混在環境の異なる製品を管理します。
Solaris WBEM サービスは、WBEM および CIM 標準を Solaris プラットフォームに実装したものです。Solaris WBEM サービスには、次の構成要素が含まれます。
Solaris WBEM サービスは、Solaris OS で、管理データをセキュリティ保護でアクセスしたり操作したりする、WBEM サービスを提供するソフトウェアです。このソフトウェアには Solaris プラットフォームプロバイダが組み込まれているため、管理アプリケーションから Solaris OS の管理対象リソース (デバイスおよびソフトウェアなど) の情報にアクセスできます。
CIMOM (CIM オブジェクトマネージャ) は、Remote Method Invocation (RMI) プロトコルまたは XML over HTTP プロトコルを使用する管理アプリケーションからの接続を受け入れ、接続されたクライアントに次のようなサービスを提供します。
管理サービス – CIMOM の形式をとります。CIMOM は、CIM データのセマンティクスと構文をチェックし、複数のアプリケーション、CIM オブジェクトマネージャリポジトリ (CIM Object Manager Repository)、管理対象のリソースにデータを分配します。
セキュリティサービス – これらのサービスは、Solaris 管理コンソールのユーザーツールによって WBEM に指定します。これらのサービスについては、『Solaris のシステム管理 (セキュリティサービス)』を参照してください。
Sun WBEM ユーザーマネージャ (Sun WBEM User Manager) – このツールを使用して、WBEM サーバー上の特定の名前空間のアクセス制御リスト (ACL) を確立します。ACL ベースのセキュリティは、Solaris WBEM サービスによって提供される固有の機能です。Sun WBEM ユーザーマネージャは、以下のタスクを実行します。
承認されたユーザーの追加および削除
承認されたユーザーのためのアクセス特権の設定
ユーザー認証の管理と、WBEM 対応のシステム上の CIM オブジェクトへのアクセス
ロギングサービス – このサービスを構成するクラスを使えば、開発者は、イベントデータを動的に記録したり取得したりできるアプリケーションを作成できます。管理者はこのデータを使ってイベントの原因を追跡したり、判定したりすることができます。ロギングサービスについては、第 9 章「問題発生時の解決方法」を参照してください。
XML サービス – XML データを CIM クラスに変換します。XML/HTTP ベースの WBEM クライアントが CIM オブジェクトマネージャと通信できるようにします。
WBEM 対応システムに接続されると、WBEM クライアントは、次のような WBEM 操作を要求できます。
CIM クラスおよびインスタンスの作成、表示、削除
指定された値を持つプロパティの検索
指定されたクラス階層にあるインスタンスやクラスの列挙
Solaris WBEM サービスソフトウェアは、アプリケーション、管理、およびプロバイダという 3 つの層で機能するソフトウェア構成要素で構成されます。これらの構成要素はオペレーティングシステムやハードウェアとデータを送受信します。次の図に、各ソフトウェア構成要素と、それぞれの送受信方法を示します。
アプリケーション層 – WBEM クライアントが管理対象リソースからのデータを処理したり、表示したりします。Solaris WBEM サービスには、次のアプリケーションがあります。
Sun WBEM ユーザーマネージャおよび Solaris 管理コンソール ユーザーツール – これらのアプリケーションでは、システム管理者が、承認されたユーザーの追加や削除を実行したり、それらのユーザーの管理対象リソースへのアクセス特権を設定したりできます。
Solaris 管理コンソールログビューア – ログファイルを表示するアプリケーションです。ログに残ったコマンドを実行したユーザーの名前や、ログに残ったイベントが発生したクライアントコンピュータなど、ログレコードの詳細を表示できます。
Managed Object Format (MOF) コンパイラ – このプログラムは、MOF 文を含むファイルを解析し、そのファイルで定義されているクラスやインスタンスを Java クラスに変換し、その Java クラスを CIM オブジェクトマネージャリポジトリ (管理データを一元的に格納する場所) に追加します。
MOF は、CIM のクラスやインスタンスを定義する言語です。MOF ファイルは、MOF 言語を使って CIM オブジェクトを記述する ASCII テキストファイルです。CIM オブジェクトは、プリンタ、ディスクドライブ、CPU などの管理対象リソースを表したモデルです。MOF ファイルは /usr/sadm/mof にあります。
管理対象リソースの情報は MOF ファイルに格納されることがあります。MOF は Java に変換できるため、Java 仮想マシン (JVM) を持つシステムで動作するアプリケーションならこの情報の解釈や交換を行うことができます。さらに、インストールの後で、mofcomp コマンドを使って MOF ファイルをいつでもコンパイルできます。MOF については、DMTF の Web ページ http://www.dmtf.org を参照してください。
管理層 – この層の構成要素は、接続された WBEM クライアントに次のサービスを提供します。
CIM オブジェクトマネージャ – WBEM システム上の CIM オブジェクトを管理するソフトウェアです。CIM オブジェクトは内部的には Java クラスとして格納されます。CIM オブジェクトマネージャは WBEM クライアント、CIM オブジェクトマネージャリポジトリ、管理対象リソースとの間で情報を送受信します。
クライアントおよび CIM API – WBEM クライアントアプリケーションは、これらの Java インタフェースを使って CIM オブジェクトマネージャに次のような操作を要求します。たとえば、管理対象リソースのクラスやインスタンスの作成および表示などです。
プロバイダインタフェース – プロバイダは、これらのインタフェースを使って管理対象リソースの情報を CIM オブジェクトマネージャに転送します。CIM オブジェクトマネージャは、プロバイダインタフェースを使って、ローカルにインストールされたプロバイダに情報を転送します。
プロバイダ層 – プロバイダは、CIM オブジェクトマネージャと 1 つまたは複数の管理対象リソースとの間の仲介を行います。WBEM クライアントから CIM オブジェクトマネージャリポジトリに存在しないデータを要求されると、CIMOM は、要求を適切なプロバイダに転送します。
Solaris プロバイダ – Solaris OS 内の管理対象リソースのインスタンスを CIM オブジェクトマネージャに提供します。プロバイダは管理デバイスに関する情報の取得および設定を行います。ネイティブプロバイダとは、管理対象デバイスで動作するように作成されたマシン固有のプログラムです。たとえば、Solaris OS を実行しているシステム上のデータにアクセスするプロバイダには、そのシステムに照会する C 関数が含まれているはずです。Java Native Interface は、JDKTM ソフトウェアの一部です。Java Native Interface を使ってプログラムを作成すれば、その Java プログラムコードはどのプラットフォームに移植しても確実に動作します。Java Native Interface を使うと、Java 仮想マシン内で動作する Java コードを、C、C++、アセンブラなど、他の言語で作成されたアプリケーションやライブラリとともに動作するようにできます。
Solaris プラットフォームスキーマ – Solaris OS 内の管理対象オブジェクトを記述するクラスの集合です。 CIM スキーマや Solaris プラットフォームスキーマのクラスは CIM オブジェクトマネージャリポジトリに格納されます。CIM スキーマは、どの管理環境にもある管理オブジェクトを表すためのクラス定義の集合です。
Solaris スキーマは CIM スキーマを拡張したもので、一般的な Solaris OS の管理オブジェクトを表すクラス定義の集合です。ユーザーは、MOF コンパイラ (mofcomp) を使用して CIM スキーマ、Solaris プラットフォームスキーマ、あるいはその他のクラスを CIM オブジェクトマネージャリポジトリに追加することもできます。
オペレーティングシステム層 – Solaris プラットフォームプロバイダを使えば、管理アプリケーションから Solaris OS にある管理対象リソース (デバイスおよびソフトウェア) の情報にアクセスできます。
ハードウェア層 – 管理クライアントは、サポートされる任意の Solaris プラットフォームの管理データにアクセスできます。
CIM オブジェクトマネージャは、WBEM 対応システムの CIM オブジェクトを管理します。WBEM クライアントアプリケーションが CIM オブジェクトの情報にアクセスすると、CIMOM は、そのオブジェクトの適切なプロバイダまたは CIM オブジェクトマネージャリポジトリのいずれかに接続します。クライアントアプリケーションから CIM オブジェクトマネージャリポジトリに存在しない管理対象リソースを要求されると、CIMOM は、要求をその管理対象リソースのプロバイダに転送します。プロバイダは、動的にその情報を取得します。
WBEM クライアントアプリケーションは、CIM オブジェクトマネージャとの接続を確立します。この接続は、CIM クラスの作成、CIM インスタンスの更新といった WBEM 操作に使用されます。WBEM クライアントアプリケーションが CIM オブジェクトマネージャに接続すると、WBEM クライアントは CIM オブジェクトマネージャへの参照を取得します。WBEM クライアントは、この参照を利用して、サービスを要求したり各種操作を実行したりできます。
MOF (Managed Object Format) は、CIM スキーマを指定する言語です。管理者は、ASCII テキストを使用してクラスおよびインスタンスを定義してファイルに保存し、MOF コンパイラ (mofcomp (1M)) に送ります。 MOF コンパイラによって、ファイルの構文解析が行われ、ファイルに定義されたクラスおよびインスタンスが CIM オブジェクトマネージャリポジトリに追加されます。MOF コンパイラを使用して MOF ファイルから自動的に JavaBeansTM 構成要素を生成する手順については、第 7 章「MOF コンパイラを使用した JavaBeans 構成要素の作成」を参照してください。
MOF は、Java に変換できるので、MOF で開発されたアプリケーションは、Java プラットフォームをサポートするすべてのシステムあるいは環境で動作します。
MOF 言語、ファイル、および構文の詳細については、http://www.dmtf.org/education/cimtutorial/extend/spec.php を参照してください。
Solaris プラットフォームスキーマは、共通モデルの拡張スキーマです。特に、Solaris OS で実行されている管理オブジェクトを記述するためのものです。
Solaris WBEM サービス をインストールすると、CIM スキーマと Solaris プラットフォームスキーマを形成する MOF ファイルがディレクトリ /usr/sadm/mof に置かれます。これらのファイルは、CIMOM の起動時に自動的にコンパイルされます。ファイル名の中に CIM_ 接頭辞を含む CIM スキーマファイルが、標準の CIM オブジェクトになります。Solaris プラットフォームスキーマは、標準の CIM スキーマを拡張し、Solaris プラットフォームオブジェクトを記述しています。Solaris プラットフォームスキーマを構成する MOF ファイルのファイル名には、Solaris_ 接頭辞が含まれます。
CIM スキーマおよび Solaris プラットフォームスキーマに関するドキュメントは /usr/sadm/lib/wbem/doc/mofhtml/index.html にインストールされます。
Solaris WBEM SDK は、管理アプリケーションの作成に必要な構成要素を含む API のセットです。これらのアプリケーションは、XML および HTTP 通信標準に従って WBEM 対応の管理デバイスと通信します。
Solaris WBEM アプリケーションは、WBEM API を介して CIM オブジェクトマネージャから情報およびサービスを要求します。これらの API により、CIM オブジェクトが Java クラスとして記述されます。プログラマは、これらのインタフェースを使用して管理対象オブジェクトを記述したり、特定のシステム環境内の管理対象オブジェクトの情報を取得したりできます。CIM を使用して管理対象オブジェクトをモデル化する場合の利点は、CIM に準拠するシステム間でそれらのオブジェクトを共有できることです。
Solaris WBEM API のマニュアルは、Solaris のインストール時に Javadoc 形式で /usr/sadm/lib/wbem/doc/index.html にインストールされます。
Solaris WBEM API については、次の表で説明します。
表 1–1 Solaris WBEM API
API |
パッケージ名 |
説明 |
---|---|---|
CIM |
javax.wbem.cim |
基本的な CIM 要素を表す共通クラスおよびメソッドを含む。CIM API は、オブジェクトをローカルシステムに作成します。 |
クライアント |
javax.wbem.client |
アプリケーションは、CIM オブジェクトマネージャとの通信に CIMClient クラスを使用する。CIM オブジェクトマネージャとのデータ転送には、ほかのクラスおよびメソッドを使用する バッチ処理可能な API (クライアント API のサブセット) を新たに使用すると、クライアントは複数の要求を 1 回のリモートコールでバッチ処理できる。これにより、複数のリモートメッセージ交換による遅延を短縮できる |
プロバイダ |
javax.wbem.provider |
CIM オブジェクトマネージャは、これらの API を使用して動的データのアプリケーション要求をプロバイダに渡す |
照会 |
javax.wbem.query |
WQL を使って照会を表現したり処理したりするクラスおよびメソッドを含む |
Solaris WBEM SDK に含まれる GUI ベースの開発ツールである CIM Workshop を使用する WBEM アプリケーションを開発できます。CIM Workshop の機能は次のとおりです。
クラスの表示、追加、削除、および検索
名前空間の表示、追加、および削除
新しいクラスへのプロパティ、修飾子、およびメソッドの追加
インスタンスの作成
インスタンス値の変更
関連の表示
イベントの予約
メソッドの実行
CIM スキーマクラスや Solaris プラットフォームスキーマクラスの既存のプロパティ、メソッド、および修飾子の変更は、CIM ガイドラインによって禁止されています。継承されたプロパティ、メソッド、および修飾子の値も変更できません。
CIM Workshop では、メインウィンドウ以外のすべてのダイアログボックスにコンテキストヘルプが表示されます。インタフェース構成要素をクリックすると、ダイアログボックスの左側の情報区画にヘルプテキストが表示されます。
情報区画を閉じたり再度開いたりするには、ダイアログボックスの左上のクエスチョンマーク (?) ボタンをクリックします。
CIM Workshop のデフォルトの動作は、次の通りです。
ローカルホスト上の CIMOM に接続する
ローカルホストのデフォルトの名前空間は root\cimv2
接続には RMI (Remote Method Invocation) プロトコルを使用する
CIM オブジェクトマネージャを実行するリモートホストを指定することもできます。
システムプロンプトで次のコマンドを入力します。
% /usr/sadm/bin/cimworkshop |
「ログイン (CIM Workshop Login) 」
ダイアログボックスが表示されます。
コンテキストヘルプの指示に従って、「ログイン (CIM Workshop Login) 」
ダイアログボックスのフィールドに必要な情報を入力します。「了解 (OK)」をクリックします。
CIM Workshop メインウィンドウが表示されます。
CIM Workshop メインウィンドウで「Workshop」->「終了 (Exit)」を選択します。
CIM Workshop が終了します。
CIM Workshop メインウィンドウは、次の 3 つの区画で構成されます。
左側の区画 – 現在の名前空間のクラス継承ツリーが表示されます。
右側の区画 – 「プロパティ (Properties)」、「メソッド (Methods)」、および「イベント (Events)」タブが表示されます。左側の区画のクラスを選択して、右側区画のタブをクリックすると、選択したクラスのプロパティ、メソッド、またはイベントの詳細情報を表示できます。
下部の区画 – 予約したイベントの発生を知らせる通知が表示されます。