Enterprise Manager 12cには、新しいメタデータ・プラグイン・フレームワークが含まれており、これは前回のリリースで使用されたフレームワークから大幅に拡張されました。Cloud Control 12cより前のバージョンでリリースされた既存のメタデータ・プラグインは、新しいフレームワークと互換性がありません。
この章では、新しいフレームワークで必要な形式に、既存のプラグインを変換する手順について説明します。
注意: この変換要件は、Enterprise Manager 11g以前のプラグインからのみ適用されます。Enterprise Manager Cloud Control 12c用に新しいプラグインを作成している場合、この章で説明されている問題は作業に影響しません。 |
この章の内容は次のとおりです。
プラグイン開発者は、変換プロセスにおいて、次の手順に従う必要があります。
新しいプラグイン・フレームワークへの変更点を理解します。
詳細は、第18.2項「新しいプラグイン・フレームワークの既存のプラグインへの影響」を参照してください。
convert_mp
ユーティリティを実行して、プラグイン・メタデータを新しい形式に変換します。
詳細は、第18.3項「プラグイン・メタデータを変換するためのconvert_mpユーティリティの使用」を参照してください。
生成されたプラグインの構成ファイルを手動で変更します。
詳細は、第18.4項「変換後の手順」を参照してください。
拡張開発キット(EDK)を使用して、デプロイ可能なアーカイブとしてプラグインをパッケージ化します。
詳細は、第14章「プラグインの検証、パッケージ化およびデプロイ」を参照してください。
Enterprise Manager Cloud Control 12インストールに対してプラグインを検証、デプロイおよびテストします。
詳細は、第14章「プラグインの検証、パッケージ化およびデプロイ」を参照してください。
プラグイン開発者は、次に説明する、新しいプラグイン・フレームワークへの変更点およびEnterprise Manager Cloud Control 12cアップグレード・プロセスへの影響を認識する必要があります。
Enterprise Manager Cloud Control 12cで使用されるプラグイン・メタデータ形式は、以前のリリースで使用された形式と互換性がありません。結果として、すべての既存のプラグインのメタデータは、このマニュアルの手順に従って、新しい形式に変換する必要があります。
拡張開発キット(EDK)にはconvert_mp
ユーティリティが含まれていて、これは既存のプラグイン・メタデータ・ファイルを新しい形式に変換し、新しいフレームワークで必要な追加のメタデータ・ファイルを生成します。
プラグインは、Oracleプラグイン・アーカイブ(OPAR)ファイルとして、Cloud Control 12cへのデプロイメント用にパッケージ化する必要があります。以前のプラグインをパッケージ化するために使用したメタデータ・プラグイン・アーカイブ(MPA)ファイルは、Cloud Control 12cにデプロイできません。
既存のプラグイン・メタデータは、プラグイン開発キットに含まれているconvert_mp
コマンドライン・ユーティリティを使用して、新しい形式に変換できます。このツールでは、新しい形式で必要な新しい2つのメタデータ・ファイルも生成されます。
ツールは次の2つのモードで実行できます。
デプロイ済プラグインのメタデータを含む10.2.x or 11.1管理リポジトリに対して。手順は、管理リポジトリに格納されたプラグイン・メタデータの変換に関する項を参照してください。
既存のメタデータ・プラグイン・アーカイブ(MPA)ファイル上で。手順は、メタデータ・プラグイン・アーカイブ(MPA)の変換に関する項を参照してください。
このツールは、Enterprise Manager Cloud Control 12cにデプロイできるプラグイン・アーカイブ(OPAR)ファイルの作成に必要なディレクトリ構造に新しいメタデータ・ファイルを出力します。このツールではアーカイブが作成されないことに注意してください。これは、別の手順で実行する必要があります。
このツールでは、次の既存のメタデータを新しい形式に変換します。
ターゲット・タイプ定義
パフォーマンス・メトリックおよびメトリック収集定義
収集スクリプトおよびバイナリ
ジョブ・タイプ定義
ジョブ・スクリプトおよびバイナリ
レポート定義
ホームページ・チャートのカスタマイズ
ホームページへの関連リンク
このユーティリティでは、次の新しいファイルも作成されます。これには、新しいフレームワークで必要なメタデータが含まれています。
このファイルはプラグインのデプロイメント中に使用されます。これには、名前やバージョンなどのプラグインを識別するプロパティが含まれます。また、Enterprise Managerに追加されるターゲット・タイプのセットを宣言します。
このファイルは、管理エージェントにデプロイされるプラグインに含まれるコンポーネントを宣言します。
注意: plugin.xmlおよびplugin_registry.xmlファイルは、変換プロセスが完了した後に、手動で更新する必要があります。詳細は、第18.4.1項「plugin.xmlおよびplugin_registry.xmlファイルの変更」を参照してください。 |
convert_mp
コマンドは、デプロイ済プラグインのメタデータを含むEnterprise Managerリリース10.2.xまたは11.1の管理リポジトリに対して実行できます。1回のコマンドの起動で、プラグインは1つしか変換できないことに注意してください。
注意: プラグインにレポート定義メタデータが含まれる場合、このプロセスを使用して変換する必要があります。レポート定義は、メタデータ・プラグイン・アーカイブ(MPA)ファイルに対して変換ユーティリティを実行しても変換できません。レポート定義が含まれていない場合、プラグイン・メタデータを変換するいずれのモードも使用できます。 |
ユーティリティを実行する前に、プラグインを既存のEnterprise Manager Enterprise Manager 10.2.xまたは11.1インストールにインポートし、プラグインを管理エージェントにデプロイする必要があります。これにより、プラグイン・メタデータが管理リポジトリに書き込まれます。ツールを実行する前に、ターゲット・インスタンスを作成する必要はありません。
このツールは、指定したCloud Control 10.2.xまたは11.1ユーザーとして指定した接続文字列を使用して、管理リポジトリに接続します。その後、指定した出力ディレクトリ内の/oparという名前のサブディレクトリに変換済ファイルを書き込みます。
convert_mp
ユーティリティを使用するには、EDK内の/binディレクトリに移動します。
convert_mp
ユーティリティの構文の基本的な使用方法は、次のとおりです。
convert_mp -conn_descrepository_connection_string
-repos_userusername
[-repos_passwordrepos_password
] [-mp_nameplugin_name
] [-mp_versionplugin_version
] -out_diroutput_directory
[-plugin_idconverted_plug_id
] [-force]
次に、基本的な変換の例を示します。
C:\edk
\bin>convert_mp -conn_desc myhost.us.example.com:25055:$ORACLE_SID -repos_user sysman -mp_name sample_plugin_01 -out_dir /tmp/plugins
表18-1に、管理リポジトリに格納されたメタデータを変換するために使用できるオプションを示します。
表18-1 管理リポジトリに格納されたメタデータを変換するためのオプション
オプション | 必須Y/N | 説明 |
---|---|---|
|
Y |
管理リポジトリに接続するために使用する接続文字列。 |
|
Y |
10.2.xまたは11.1管理リポジトリに接続するユーザー。 注意: Cloud Control 12.0のユーザー名を指定しないでください。
|
|
N |
10.2.xまたは11.1の管理リポジトリのパスワード。パスワードを指定しない場合、パスワードの入力を要求されます。 注意: コマンドラインでのパスワードの指定は安全性が低いため、本番環境では行わないでください。 |
|
Y |
複数のプラグインが管理リポジトリに存在する場合、必須。一度に1つのプラグインしか変換できないため、変換するプラグインの名前を指定する必要があります。 |
|
Y |
同じ名前の複数のプラグインが管理リポジトリに存在する場合、必須。 |
|
Y |
変換済のXMLファイルを出力するディレクトリ。/oparという名前の新しいサブディレクトリがこのディレクトリに作成されます。 |
|
N |
変換プロセスの一部として生成されたplugin.xmlおよびplugin_registry.xmlファイルに書き込まれる識別子。識別子をコマンドラインで指定しない場合、プラグインをパッケージ化する前に、plugin.xmlおよびplugin-registry.xmlファイルで指定する必要があります。 |
|
N |
設定した場合、プラグインの既存の出力ディレクトリは削除され、新しいディレクトリが作成されます。設定しない場合、出力ディレクトリがすでに存在すると、エラーが発生します。 |
convert_mp
ユーティリティは、メタデータ・プラグイン・アーカイブ(MPA)でパッケージ化された1つ以上のプラグインのメタデータ・ファイルを変換することもできます。1つのプラグインを指定して変換することも、アーカイブ内のすべてのプラグインを同時に変換することもできます。
注意: プラグインにレポート定義メタデータが含まれる場合、管理リポジトリ・オプションを使用して変換する必要があります。レポート定義は、メタデータ・プラグイン・アーカイブ(MPA)ファイルに対して変換ユーティリティを実行しても変換できません。管理リポジトリ・オプションの詳細は、第18.3.1項「管理リポジトリに格納されたプラグイン・メタデータの変換」を参照してください。 |
管理リポジトリ・オプションと異なり、プラグインは変換する前にEnterprise Manager Cloud Controlにデプロイする必要がないことに注意してください。
構文は、次のとおりです。
convert_mp -mpampa_file_location
[-mp_nameplugin_name
] [-mp_versionplugin_version
] -out_diroutput_directory
[-plugin_idconverted_plug_id
] {-force]
次に、基本的な変換の例を示します。このツールでは、my_gc11_plugins.mpa内のすべてのプラグインが変換され、それぞれの変換済ファイルが/tmp/plugins/内の一意の/oparディレクトリに出力されます。
convert_mp -mpa /tmp/my_gc11_plugin.mpa -out_dir /tmp/plugins
表18-2に、MPAファイルを変換するために使用できるオプションを示します。
表18-2 MPAファイルを変換するためのオプション
オプション | 必須Y/N | 説明 |
---|---|---|
|
Y |
MPAファイルのパス。EDKインストールに対する相対パス。 |
|
N |
アーカイブ内の変換するプラグインの名前。指定しない場合、アーカイブ内のすべてのプラグインが変換されます。 |
|
N |
同じ名前を持つ複数のプラグインが存在する場合、変換するプラグインのバージョン。指定しない場合、指定した |
|
Y |
変換済のXMLファイルを出力するディレクトリ。/oparという名前の新しいサブディレクトリがこのディレクトリに作成されます。複数のプラグインを変換する場合、それぞれのプラグインに対して一意の/oparディレクトリが作成されます。 |
|
N |
変換プロセスの一部として生成されたplugin.xmlおよびplugin_registry.xmlに書き込まれる識別子。識別子をコマンドラインで指定しない場合、プラグインをパッケージ化する前に、plugin.xmlおよびplugin-registry.xmlファイルで指定する必要があります。 |
|
N |
設定した場合、プラグインの既存の出力ディレクトリは削除され、新しいディレクトリが作成されます。設定しない場合、出力ディレクトリがすでに存在すると、エラーが発生します。 |
変換プロセスの完了後、プラグインをパッケージ化する前に、いくつかの手動での追加の変更が想定されます。
plugin.xmlファイルは、変換プロセス中に生成されます。これはプラグインのデプロイメント中に使用されます。
このファイルには、名前やバージョンなどのプラグインを識別するプロパティが含まれます。また、プラグインに含まれる他のメタデータを使用して、Enterprise Managerに追加されるターゲット・タイプのセットを宣言します。
convert_mp
コマンドを実行する際に、-plugin_id
オプションをコマンドラインで指定しない場合、プラグインをパッケージ化する前に、<PluginID>
要素をplugin.xmlおよびplugin_registry.xmlファイルに指定する必要があります。
plugin.xmlファイルとplugin_registry.xmlファイルの内容の詳細は、plugin.xmlファイルの作成およびplugin_registry.xmlファイルの作成に関する項を参照してください。
例18-1 plugin.xmlファイルの変更
<?xml version="1.0" encoding="UTF-8" ?>
<Plugin xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.oracle.com/EnterpriseGridControl/plugin_metadata plugin_metadata.xsd"
xmlns="http://www.oracle.com/EnterpriseGridControl/plugin_metadata">
<!-- If the -plugin_id option is not included on the command line when running
the convert_mp command, the PluginID element must be manually specified. -->
<PluginId vendorId="oracle" productId="sysman" pluginTag="db2"/>
<PluginVersion value="11.2.0.1.0"/>
<TargetTypeList>
<TargetType name="ibm_db2_database" isIncluded="TRUE">
</TargetType>
</TargetTypeList>
<EMPlatforms>
<CertifiedPlatform version="11.2.0.1.0"/>
</EMPlatforms>
<AgentSideCompatibility>
<Version>11.2.0.1.0</Version>
</AgentSideCompatibility>
<PluginJ2EEArtifacts/>
</Plugin>
oracle.sysman.eml.ip.render.elem.sqlStatementタイプを介したSQL文の参照を含むPL/SQLを使用して作成したレポート定義を、Enterprise Manager Cloud Control 12cでサポートされている新しいレポート・メタデータ形式に直接変換できません。
レポート定義にレポート・データを取得するSQL文が含まれている場合、SQLはnamedSQLとして抽出され、登録される必要があります。
既存のレポート定義には、次のようなSQL文が含まれることがあります。
l_param_values(N) := MGMT_IP_PARAM_VALUE_ RECORD('oracle.sysman.eml.ip.render.elem.sqlStatement', 'select target_name, target_type from mgmt$target');
次の文が含まれることもあります。
l_element_guid := mgmt_ip.add_element_to_report_def ( p_report_guid => l_report_guid, p_element_name_nlsid => 'IPMSG_TABLE_FROM_SQL', p_element_type_nlsid => 'IPMSG_ANY_TARGET_TYPE', p_header_nlslid => null, p_element_order => 2, p_element_row => 2, p_parameters => l_param_values, p_targets => null );
レポートのXML形式への変換を開始する前に、第18.4.2.1項「名前付きSQL文」を確認してください。
名前付きSQL文をレポート用に登録する場合、これをXMLに変換する必要があります。
たとえば、PL/SQLレポート定義には、次のような行が含まれているとします。
mgmt_ip.register_sql_statement ( p_name =>'oracle.sysman.db.storage.reports.TablespaceUsage
', p_sql_statement => 'select * from dual
');
次のようなXMLファイルに変換されます。
<?xml version = '1.0' encoding = 'UTF-8'?> <NamedSQLStatements xmlns= "http://www.oracle.com/DataCenter/NamedSQL"> <NamedSQL sqlName="oracle.sysman.db.storage.reports.TablespaceUsage
" sqlValue="select * from dual
"/> </NamedSQLStatements>
レポート定義を変換する手順は、次のとおりです。
レポート定義PL/SQLを実行して、Enterprise Manager 10.2.xまたは11.1インストールに対してレポートを登録します。
Enterprise ManagerにSYSMAN
としてログインし、レポート・ページから、「類似作成」を使用して、すぐに使用できるレポートのコピーを作成します。
注意: レポート定義を編集ページを使用して、レポート名を一時的に変更する必要があります。 |
次のように、emcli export_report
コマンドを使用して、レポート定義をXMLファイルにエクスポートします。レポートIDを-title
の値として指定する必要があります。
emcli export_report -title='MY_REPORT_ID
' -output_file='./tmp/report.xml'
MY_REPORT_IDは、手順2で作成したコピー済ファイルの名前です。
プラグインのステージング領域内の/oms/metadata/reportディレクトリに生成済ファイルを含めます。プラグインがデプロイされるときに、ファイルがインポートされます。
次のように、レポートで参照される名前付きSQLを含むXMLファイルを作成します。複数の文がこのファイルに含まれる可能性があります。同じ文の識別子が使用されていることを確認します。
<?xml version = '1.0' encoding = 'UTF-8'?>
<NamedSQLStatements xmlns="http://www.oracle.com/DataCenter/NamedSQL">
<NamedSQL sqlName="MY_UNIQUE_SQL_STATEMENT_ID
”
sqlValue="'select target_name, target_type from mgmt$target"/>
</NamedSQLStatements>
注意: Oracleでは、レポート定義ごとに1つのXMLファイルをサポートしています。名前付きSQL文を1つのファイルに自由にグループ化できます。 |
これらの手順は、SQL文を含むすべてのレポート定義に対して繰り返す必要があります。
プラグインのステージング領域内の/oms/metadata/namedsqlディレクトリにファイルを含めます。プラグインがデプロイされるときに、ファイルがインポートされます。
既存のプラグインで作成されたジョブ・タイプ定義をconvert_mp
ユーティリティで変換します。ただし、ジョブ・タイプ・メタデータを記述するXSDは、Cloud Control 12cで、厳密に検証されます。結果として、既存のジョブ・タイプ定義に新しいXSDに対して有効でないXMLが含まれる場合、プラグインのデプロイメント中に検証エラーが発生します。
このような問題を事前に検出する最善の方法は、プラグインに対してempdk
validate_plugin
コマンドを実行することです。エラーが発生するたびに、これを修正し、再度コマンドを実行します。検証エラーが報告されなくなるまで、コマンドの実行を続行します。
empdk
validate_plugin
コマンドの使用方法の詳細は、第14.3項「プラグインの検証」を参照してください。
不正な形式のジョブ・タイプ定義を再構築する方法を判断するために、ジョブ・タイプXSDを参照します。
プラグインを新しい形式に完全に変換すると、Enterprise Manager Cloud Control 12cにデプロイメントを行えるようにプラグインをパッケージ化できるようになります。詳細は、第14.4項「プラグイン・アーカイブの作成」を参照してください。