Enterprise Managerを拡張して、検出、監視および自動化を導入することによって新しいドメインの管理をサポートできます。Enterprise Managerフレームワークにはこれらの管理機能に関連する強力な機能のセットが用意されていますが、ほとんどのプラグイン開発者は自分のドメインに適した方法で管理機能を公開したいと思っています。Enterprise Managerのメタデータ・プラグイン・カスタム・ユーザー・インタフェース(MPCUI)機能は、この機能を備えています。
この章の構成は、次のとおりです。
MPCUIフレームワークでは、サポートされているAPIによるEnterprise Managerサービスへの制御されたアクセスをサポートしています。これらのAPIを使用すると、他の機能をサポートするEnterprise Managerのアップグレードに関係なく、ユーザー・インタフェースをEnterprise Managerにプラグインの一部として安全に追加できます。
MPCUIでは、要件に応じてUIを構築するための漸進的なオプションのセットを提供しています。MPCUIには、テンプレートおよび再利用可能なコンポーネントが用意されており、UIの開発のためのフレームワーク習得と動作保証のためのフレームワーク習得という両方の観点から、最小限の作業でカスタムUIを構築できます。UIに対する制御の強化が必要な場合、MPCUIでは、カスタマイズされた管理ユーザー・エクスペリエンスを構築するための構成要素を提供して、ドメインに最適な方法でそのUIを柔軟に構築できるようにしています。
注意:
MPCUIは、プラグインの一部として含める必要はありません。プラグインを作成してカスタムUIを提供しない場合、ターゲットは引き続きCloud Controlに表示され、デフォルトのUIが表示されます。
MPCUI実装は、プラグインの「管理サービス」セクションの一部として(oms/metadataディレクトリの下など)、プラグインに含まれます。MPCUIには、ユーザー・インタフェースの実装について次のオプションがあります。
HTML/JSベース
このアプローチでは、HTMLおよびJavaScript (JS)ファイルのコレクションとしてユーザー・インタフェースを指定できます。Flexベースだった旧リリースのMPCUIとの整合性のために、複数ページのサポート、ダイアログ定義、チャート、表などは引き続きサポートされますが、今後はHTMLおよびJS形式になります。
ユーザー・インタフェースを構成するコンポーネントは、次のとおりです。
MPCUIを使用すると、複数ページ、ダイアログおよびトレイン(ウィザード)で構成されるユーザー・インタフェースを構築できます。これらのページ間のナビゲーションをMPCUI実装の一部として定義する他、Enterprise Managerの他のページまたは外部URLへのナビゲーションも定義します。
MPCUIフレームワークを使用すると、Enterprise Managerメニュー・サブシステムに登録する必要があるページを選択できます。これにより、メニュー項目をターゲット・メニューに表示できるようになり、MPCUI実装で定義されているページへのナビゲートが可能になります。
MPCUIフレームワークには、グリッド・スタイル・レイアウトを使用してUIに定義されているページ上にコンポーネントを簡単にレイアウトする方法があります。フレームワークには、ページ内でコンテンツ・コンテナを提供し、そのコンテンツの展開および折りたたみをサポートするリージョン・コンポーネントが含まれています。図8-1に、サマリー情報が表示されているリージョンを示します。
MPCUIフレームワークでは、プラグイン開発キットにパッケージ化された多数の再利用可能なリージョンを提供しています。これを使用すると、イベント情報やジョブ・サマリー情報など、共通して表示されるコンテンツをターゲット・ホーム・ページに含めることができます。
図8-2に、MPCUIフレームワークで提供される「問題」リージョンを示します。
ページ定義で次のようなエントリを1つ使用して、ユーザー・インタフェースで構築されるページにリージョンを追加できます。
<mp-incident-region height="33%" width="100%"></mp-incident-region>
ページ定義、リージョン、チャートの高度なコンポーネントに加えて、ボタンやラベル、テキスト入力など、JavaScript Extension Toolkit (JET)と基本的なHTMLによってサポートされる完全なコンポーネント・セットも利用できます。
どのような場合でも、MPCUIフレームワークでは、その他すべてのCloud Controlユーザー・インタフェースの同じルック・アンド・フィールで表示されるようにコンポーネントのスタイルを設定し、カスタマイズされたUIがEnterprise Manager Cloud Control製品の完全に統合された部分として必ず表示されるようにしています。
MPCUIは、JavaScript Extension Toolkit (JET)を使用して、Enterprise Managerページ(chrome)内で実行されるHTMLページ(JSが支援)の書込みを有効にします。残りのEnterprise Manager UIと統合されたエクスペリエンスを提供しながら、UIおよびコードとEnterprise Managerの残りの部分の分離を維持しています。
このフレームワークはHTML/JS/JETおよびWebサービスをベースにしていますが、フレームワークの主な目的は、管理UIの構築プロセスを簡略化することです。そのため、フレームワークでは、できるだけ基礎となるテクノロジが除外されています。フレームワークには、パッケージ化されたコンポーネントおよびサービスが備えられており、HTML/JS/JET、WebサービスまたはUIフレームワークの専門家にならなくても、それらを組み合せてドメインに適した管理UIを作成できます。
MPCUIフレームワークでは、監視データ(ターゲット・アソシエーション、プロパティ、メトリック、構成データなど)の取得に使用する一連のWebサービスと、同期タスクおよび非同期ジョブを実行する自動化サービスを公開しています。
構築したUIは、プラグインにパッケージ化され、メトリック定義、ジョブ定義、検出スクリプト、監視スクリプトなどの他の統合オブジェクトとともにEnterprise Managerにデプロイされます。
プラグインのMPCUIオブジェクトは、管理リポジトリに格納されます。実行時に、Enterprise Managerクロムが表示されるラッパー・ページをレンダリングするEnterprise Managerフレームワーク・コードによって取得されます。MPCUIは、ページのフレーム内で実行されます。これは、1つのプラグインのカスタムUIに関連するあらゆる問題からEnterprise Managerの残りの部分を保護するサンドボックス化された環境です。
管理UIは、リポジトリ・データ、ジョブ・サブシステム、エージェント・サービスなどのEnterprise ManagerサービスにMPCUIサービス・レイヤーからアクセスできます。MPCUIサービス・レイヤーは、Enterprise Managerフレームワークで提供されるWebサービスで構成されています。
MPCUIには、ページ、トレイン、リージョン、チャート、表、パッケージ化されたコンポーネントを含め、管理UIの構築に使用できる多くのUIコンポーネントが含まれています。これらのコンポーネントの多くもまた、Enterprise Managerサービスを利用して、管理情報へのアクセスや表示を簡略化しています。
たとえば、チャートおよび表コンポーネントを使用すると、メトリックまたはパッケージ化されたSQL問合せをコンポーネント・タグ内に指定して、監視データをUIに簡単に含めることができます。
MPCUIフレームワークには、利用できる様々なコンポーネント・レイヤーがあります。このフレームワークには、追加の作業をしなくても管理UIのスタイルがEnterprise Managerのスタイル・ガイドラインと必ず一致するようにするためのサポートが含まれています。
MPCUIベースのアプリケーションの構造を簡略化し、より自然にEnterprise Managerフレームワークに合せるために、MPCUIにはページの概念が組み込まれています。管理UIに1つ以上のページを含めて、MPCUIフレームワークによって提供される構造を使用してページ間を移動することができます。1つ以上のページをEnterprise Managerメニュー・システムに統合することもできます。
MPCUIフレームワークに含まれている適切なUI要素を使用してドメイン固有の管理UIを構築し、MPCUIサービス・クライアント・ライブラリからEnterprise Managerサービスにアクセスしてください。
MPCUIをしてユーザー・インタフェースを構築すると、フレームワークに同梱されている多くのサービスにアクセスでき、Enterprise Managerデータへのアクセスおよび操作の実行が可能になります。これには次のサービスが含まれます。
バージョン、カテゴリ、その他の動的インスタンス・プロパティなど、ターゲット・インスタンスのプロパティの取得をサポートします。
現在のターゲット、関連ホスト、メンバーなどに関連付けられたターゲットの取得をサポートします。
メトリック・データ
管理エージェントからの現在(リアルタイム)の値や管理リポジトリに格納されている履歴データなど、メトリック・データの取得をサポートします。
SQLの結果
プラグインにパッケージ化されたSQL文の処理と、それらの文の結果の取得をサポートします。
ジョブおよびリモート操作
ジョブのスケジューリングまたは管理機能を実行するリモート操作の即時処理(管理エージェント・スクリプト)をサポートします。