2 Enterprise Managerプラグインのスタート・ガイド
この章では、Enterprise Managerメタデータ・プラグインと拡張開発キット(EDK)の概要を説明します。
この章の構成は、次のとおりです。
プラグインとは
プラグインは、ファイル(ターゲット定義ファイル、ターゲットからメトリックを収集する収集スクリプト、ユーザー・インタフェースをカスタマイズするカスタムUIコンポーネントなど)のグループで、Enterprise Manager拡張開発キット(EDK)を使用してプラグイン・アーカイブに追加されています。プラグイン・ファイルは、正式にプラグインになる前に、アーカイブに追加する必要があります。プラグイン・アーカイブ・ファイル(*.opar)は、ファイルを関連付け正式なプラグインとしてまとめます。
各プラグインは、Enterprise Managerで監視できるターゲットの新しいタイプを定義します。ターゲット、すなわちターゲット・インスタンスは、企業内で監視できるエンティティとして定義できます。このエンティティは、サーバーで実行されているアプリケーション、サーバー自体、ネットワーク、構成要素のいずれかです。
Enterprise Managerでは、Enterprise Managerコンソールから新しいターゲット・インスタンスを管理フレームワークに追加できるようにすることで、ターゲット・インスタンスの管理が簡単になります。その結果、Enterprise Managerの監視機能および管理機能を利用できます。
プラグインは、Enterprise Managerフレームワーク内の様々な層で特定の機能を提供するいくつかのタイプのファイルで構成されています。たとえば、ターゲット・タイプ・メタデータ・ファイルは、新しいターゲット・タイプの定義における不可欠な要素です。EDKには、デフォルト収集ファイルに加えてターゲット・タイプ・メタデータ・ファイルが、プラグイン・アーカイブ内での新しいプラグインの作成に必要です。
新しいプラグインを作成するには、次のものが必要です(最低要件)。
プラグインを使用して、Enterprise Managerで監視するカスタム・ターゲット・タイプを定義すると、すべての管理情報をコンソールに集中化できます。
新しいターゲット・タイプをCloud Controlに導入すると、デフォルトでは、Enterprise Managerに含まれている管理機能が新しいターゲットに対して自動的にサポートされます。これには、次のようなコア管理機能があります。
また、EDKでサポートされるアプリケーション・プログラミング・インタフェース(API)を使用して、ターゲット・タイプに対して追加の管理機能を有効にすることもできます。これには、次の機能があります。
これらの各管理機能には、追加のメタデータ・ファイルが必要です。また、プラグインにパッケージ化する必要があるスクリプトの作成が必要な場合もあります。
Enterprise Managerプラグインの新機能
この項では、Enterprise Managerプラグインの新機能について説明します。
-
プラグインの非推奨化と廃止
このリリースでは、EDKが付属しており、デフォルトではサポートされていないターゲット・タイプを管理するためのカスタム・プラグインの開発をサポートしています。
拡張開発キット(EDK)について
Enterprise Manager Cloud Controlアーキテクチャのキー・コンポーネントは拡張フレームワークです。Enterprise Managerプラットフォームを拡張するOracle Partnerを有効にするために、拡張開発キット(EDK)が製品に提供されています。
EDKは、次のようなツール、ユーティリティおよびドキュメントの集合です。
-
Enterprise Manager拡張ドキュメント: Enterprise Managerプラグインをプログラミングするための一般的なガイドラインです。
-
リファレンスの実装: 様々なEnterprise Manager機能のリファレンス・コード、コード・スニペットなど
-
EDK適合性を確認するためのビルド・タイム・ツール: Enterprise Manager拡張性ガイドラインへの違反の検証と報告を行うために使用できるツール
EDKには、empdk
というコマンドライン・ユーティリティがあります。このユーティリティは、プラグイン・アーカイブのパッケージ化または検証に使用します。empdk
コマンドおよびそのオプションの詳細は、Oracle Enterprise Manager拡張プログラマーズ・リファレンスを参照してください。
EDKをダウンロードしたら、ローカル・システムで解凍し、現行ディレクトリをEDKを解凍した場所に変更します。EDKには、リファレンス・ドキュメントおよびプラグイン開発に役立つガイドの他、プラグインの開発中に場合によってはまとめる必要があるAPIリファレンスが格納されています。
EDKのダウンロードの詳細は、拡張開発キット(EDK)のインストールに関する説明を参照してください。
EDKの内容
EDKアーカイブには、次のディレクトリが格納されています。
-
\bin
empdk
ユーティリティが格納されています。このユーティリティは、次の目的で使用します。-
プラグインの構造の検証
-
プラグインのパッケージ化
-
-
\doc
管理ビューについてのマニュアルを含め、『Oracle Enterprise Manager拡張プログラマーズ・ガイド』、『Oracle Enterprise Manager拡張プログラマーズ・リファレンス』およびAPIリファレンス・マニュアルが含まれています。提供されるマニュアルへのリンクについてoverview.htmlを確認します。
索引ページ(sdk_api_ref.html)を使用して、EDK APIリファレンス・マニュアルに直接アクセスすることもできます。
-
\lib
EDKで使用される内部ライブラリが含まれています。
-
\oui
EDKで使用される内部ライブラリが含まれています。
-
\samples
demo_hostsample.zipとしてパッケージ化されたプラグインの完全なリファレンス実装が含まれています。含まれているサンプルのメタデータ・ファイルは、EDKマニュアル全体で参照されるファイルの例として使用されます。
サンプル・プラグインの構築、デプロイおよび使用についての詳細は、アーカイブにパッケージ化されたREADMEを参照してください。
EM CLIやEMCTLなど、このマニュアルで参照される他のユーティリティは、Enterprise Managerとともにインストールされ、通常Oracle Management Service (OMS)ホストにデプロイされます。
拡張開発キット(EDK)のインストール
ノート:
EDKをインストールするには、次のものが必要です。
-
自己更新コンソールの最新バージョンのEDK ZIPアーカイブ。(Cloud Controlコンソールから自己更新コンソールにアクセスするには、「設定」、「拡張性」、「自己更新」の順に選択します。)
-
Javaバージョン1.7.0_51以上
-
Solaris、Linux、HP-UX、AIXまたはNew Technology File System (NTFS)を持つWindowsを実行するローカル・システム
EDKをインストールするには、次の手順を実行します。
-
次のオプションのいずれかを使用して、EDK ZIPアーカイブをローカル・システムにダウンロードします。
-
Enterprise Manager Cloud Controlコンソールを使用して、次のようにします。
-
Enterprise Manager Cloud Controlにログインします。
-
「設定」メニューで、「拡張性」、「開発キット」の順に選択します。
拡張開発キット(EDK)ページが表示されます。
-
「EDKのインストール中」で、「拡張開発キットをワークステーションにダウンロードします。」を選択します。
-
13.1.0.0.0_edk_partner.zipをローカル・システムに保存します。
-
-
Enterprise Managerコマンドライン・ユーティリティ(EM CLI)を使用して、コマンド・プロンプトを開き、次のコマンドを実行します。
emcli get_ext_dev_kit
コマンドを実行したのと同じディレクトリにEDK ZIPアーカイブがダウンロードされます。このコマンドにパラメータは必要ありません。
ノート:
EM CLIの設定の詳細は、Oracle Enterprise Manager Cloud Control拡張リファレンス・ガイドを参照してください。
-
-
JAVA_HOME環境変数を設定し、PATHに含まれていることを確認します。次に例を示します。
setenv JAVA_HOME /usr/local/packages/j2sdk1.7.0_51 setenv PATH $JAVA_HOME/bin:$PATH
-
ダウンロードしたEDK ZIPアーカイブをローカル・システム上のディレクトリでパッケージ化を解除します。次に例を示します。
Unzip 13.1.0.0.0_edk_partner.zip
このコマンドでは、EDK ZIPアーカイブのパッケージ化を解除したディレクトリ(release_edk_partner)で次のディレクトリが作成されます。
release_edk_partner | bin doc lib oui samples README
ディレクトリの内容の詳細は、「EDKの内容」を参照してください。
プラグイン開発サイクル
プラグイン開発では、次のことを実行します。
-
プラグインに含める一連のエンティティの設計
-
Enterprise Managerにエンティティを記述するメタデータの定義
-
Enterprise Managerインストールでユーザーがデプロイおよび使用できるようにするための、プラグインのパッケージ化および配信
図2-1に、プラグインのライフサイクルを示します。
プラグインのライフサイクルは、次のステージを通過するプラグインの遷移を表します。
プラグイン・メタデータの設計
プラグイン開発の最初のステップは、プラグインの内容を設計することです。最も大まかなレベルでは、プラグインに含めるターゲット・タイプのセットの決定(1つのプラグインには1つ以上のターゲット・タイプの管理メタデータを含めることができます)と、ターゲット・タイプごとにサポートする管理機能のセットの定義を行います。(詳細は、「プラグインの内容およびパッケージ化」を参照してください)。
プラグイン・ファイルを作成する前に、新しいコンポーネントを正確に監視および管理するのに必要なターゲット・タイプのパラメータを定義する必要があります。内容は次のとおりです。
-
顧客固有の運用に基づいた、デフォルトの警告またはクリティカルしきい値、あるいはその両方の指定。しきい値を超えるたびに、Enterprise Managerはインシデントを生成して、考えられる問題を管理者に通知します。
これらのメトリックおよび収集の設定は、各プラグインの必須コンポーネントです。ジョブ定義、カスタム・ユーザー・インタフェースなどの追加の機能はオプションです。プラグインに含める各機能には、それらの機能で管理できるターゲットの側面を決定するための思索と設計がさらに必要です。
プラグインの設計時に検討する主要機能には、次のようなものがあります。
-
管理タスクや自動化サポートを必要とするより大規模で複雑なジョブ(たとえば、スケジューリング)など、ターゲットの管理に必要な管理機能
-
ターゲットとネットワーク内の他のターゲット間のアソシエーションを含め、ターゲットの管理に使用する構成データ
-
ターゲットを管理するためにエンドユーザーに提供されるレポートおよびカスタマイズされたユーザー・インタフェース
これは一部にすぎず、各サブシステムとの統合に関する情報の概要は、このマニュアルに記載されています。詳細は、Oracle Enterprise Manager Cloud Control拡張リファレンス・ガイドを参照してください。
プラグインの内容およびパッケージ化
この項の内容は、次のとおりです。
プラグイン・メタデータ
各プラグインにはプラグイン・メタデータが含まれていますが、プラグインに関するすべての情報を表すXMLファイルで定義されています。
プラグイン・メタデータは、プラグインのデプロイ時に使用します。これには、名前やバージョンなどのプラグインを識別するプロパティが含まれます。また、Enterprise Manager Cloud Controlに追加されるターゲット・タイプのセットを宣言します。
メタデータ・サービス
Enterprise Manager EDKを使用して公開されるEnterprise Managerの機能のほとんどは、メタデータXMLファイルの構造である必要があります。これらのメタデータ・ファイルでは、特定のサブシステムについてそのターゲット・タイプのために統合される項目を定義します。たとえば、プラグインには、そのターゲット・タイプに使用可能なジョブ・タイプを定義するメタデータXMLファイルを含めることができます。デプロイ後、そのターゲット・タイプのインスタンスについて、ジョブを発行または実行できます。
ターゲット・タイプ・メタデータは、公開するメトリックと、それらのメトリックの取得および計算に使用されるメソッドで構成されています。ターゲット・タイプ・メタデータ・ファイルは、取得するデータ、およびこのターゲット・タイプについてそのデータを取得する方法をOracle Management Agentに指示します。
ターゲット・タイプについて収集されるメトリックに加えて、ターゲット・タイプ・メタデータにはターゲット・プロパティおよび資格証明情報が含まれています。ターゲット・プロパティは、ターゲットの定義を支援する重要なプロパティ・セットです。Enterprise Managerでは管理エージェントによって評価される動的インスタンス・プロパティの定義機能がサポートされていますが、これらのプロパティは通常、静的です。動的インスタンス・プロパティの定義の詳細は、Oracle Enterprise Manager Cloud Control拡張リファレンス・ガイドを参照してください。
プラグインにはデフォルト収集ファイルが含まれていますが、メトリックおよび構成データが収集される頻度を定義します。
Enterprise Manager拡張フレームワークは、EDKでのこれらのメタデータ・ファイルのパッケージ化の他、Enterprise Manager内の適切なサブシステムへのこれらのファイルのデプロイをサポートします。これには、管理サーバーまたは管理エージェント(場合によってはその両方)への情報のデプロイが含まれることもあります。EDKでのメタデータ・ファイルのパッケージ化の詳細は、「プラグインのパッケージ化構造」を参照してください。
特定のインスタンスでは、プラグインにパッケージ化されている他のコンポーネントへの参照がメタデータに含まれます。たとえば、ジョブ・タイプ定義に、管理タスクを実行するターゲットの1つに対してPerlスクリプトを実行するステップが含まれていることがあります。その場合、ジョブ・タイプ定義はメタデータで宣言され、プラグインの管理サーバー部分に組み込まれますが、スクリプトはプラグインの管理エージェント部分に組み込まれます。
使用可能なすべてのメタデータ・サービスの詳細なリストおよび各サービスの使用方法を説明する詳細なドキュメントは、Oracle Enterprise Manager Cloud Control拡張リファレンス・ガイドを参照してください。
プラグインのパッケージ化構造
プラグイン開発の最後のステップは、プラグイン・アーカイブにプラグインをパッケージ化することです。このステップでは、プラグインを構成するファイルがあるステージング・ディレクトリ(plugin_stage)を入力として取ります。例2-1に、ディレクトリ構造およびファイルの場所をまとめます。
プラグイン・ディレクトリの内容の詳細は、Oracle Enterprise Manager Cloud Control拡張リファレンス・ガイドを参照してください。
例2-1 プラグインのディレクトリ構造
plugin_stage
/ | plugin.xml agent/ | plugin_registry.xml default_collection/ |target_type
.xml metadata/ |target_type
.xml scripts/ |scripts
oms/ | metadata/ | default_collection/ |target_type
.xml derivedAssoc/ |derivedAssoc_rule
.xml discovery/ |discovery
.xml gccompliance/ |compliance_rule
.xml jobTypes/ |job_type
.xml mpcui/ |mpcui
.xml reports/ |report
.xml snapshotlive/ |target-type
_ecmdef.xml targetType/ |target_type
.xml discovery/ |discovery scripts
プラグインのリリース
プラグインをパッケージ化すると、そのプラグインに含まれるターゲット・タイプのサポートを必要とするEnterprise Manager管理者にプラグイン・アーカイブ(OPAR)ファイルを配布できます。このモードでは、オラクル社は本番環境での使用においてプラグインの品質または安全性を保証しないため、オラクル社が保証しないプラグインをデプロイする前にテスト環境での適切な評価をお薦めします。
プラグインをデプロイできるようにするために、Enterprise Manager管理者はプラグイン・アーカイブをEnterprise Managerインストールにインポートする必要があります。これが完了したら、プラグインはオラクル社からダウンロードした他のプラグインと同様にデプロイできます。プラグイン・インポート・コマンドの詳細は、Oracle Enterprise Manager Cloud Control拡張リファレンス・ガイドを参照してください。
プラグインのデプロイ
プラグインをEnterprise Managerにインポートした後に、Enterprise Manager管理者はプラグインを管理サーバーおよび適切な管理エージェントに明示的にデプロイする必要があります。
プラグインのデプロイは、Enterprise Managerコマンドライン機能(EM CLI)を使用するか、Enterprise Managerコンソールの「設定」メニューから「拡張性」を選択して実行できます。これらのオプションの使用方法の詳細は、Oracle Enterprise Manager Cloud Control拡張リファレンス・ガイドを参照してください。
検出時の自動デプロイ
プラグインに自動検出のサポートが含まれている場合、Enterprise Managerでターゲットが検出され、管理可能ターゲットとしてマーク(昇格)されると、プラグインは適切な管理エージェントに自動的にデプロイされます。自動検出を有効にするには、適切な検出メタデータをプラグインに含める必要があります。
ターゲットの自動検出のサポートが含まれていないプラグインの場合、Enterprise Manager管理者は、ターゲットがある管理エージェントを指定して、ターゲットをEnterprise Managerコンソールに手動で追加する必要があります。その場合、Enterprise Manager管理者は、ターゲットを手動で追加する前に、それらの管理エージェントにプラグインをデプロイする必要があります。
プラグイン・アップグレード
プラグインの新しいバージョンがリリースされると、Enterprise Manager管理者は、Enterprise Managerの自動更新機能を使用してOracleストアから新しいバージョンをダウンロードするか、プライベート配布である場合は新しいプラグイン・アーカイブをインポートして、新しいプラグインをインポートできます。
この時点で、新しいバージョンのプラグインはEnterprise Managerで使用できますが、管理サーバーまたは管理エージェントのいずれにもデプロイされていません。Enterprise Manager管理者は、「プラグインのデプロイ」で説明されているのと同じデプロイ・プロセスを使用して、新しいバージョンのプラグインを明示的にデプロイする必要があります。
非推奨となるプラグイン
業務上および技術上の様々な理由から、リリースされるプラグインのサポート終了を宣言することが必要になり、そのようなプラグインのサポートは継続されなくなります。
プラグインを非推奨にする際には、前もってプラグインのサポート終了を発表し、Enterprise Managerプラットフォームのその次のメジャー・リリースからサポートが停止となります。次のメジャー・リリースでサポートは継続されなくなり、そのプラグインは廃止となります。
たとえば、リリース13.1.0.0でプラグインを非推奨にした場合、非推奨にしたプラグインのサポート・レベルはリリース13.1.0.1と同じになります。次のメジャー・リリース、たとえばリリース14.1までは廃止になりません。プラグインの非推奨化の詳細は、『Oracle Enterprise Manager Cloud Control拡張プログラマーズ・リファレンス』を参照してください。
ノート:
プラグインを直接、廃止にすることはできません。それに先立つパッチセット・リリースで非推奨にする必要があります。