プライマリ・コンテンツに移動
Oracle® Enterprise Manager Cloud Control拡張プログラマーズ・リファレンス
12cリリース4 (12.1.0.4)
B70762-06
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

18 既存のメタデータ・プラグインの変換

Enterprise Manager 12cには、新しいメタデータ・プラグイン・フレームワークが含まれており、これは前回のリリースで使用されたフレームワークから大幅に拡張されました。Cloud Control 12cより前のバージョンでリリースされた既存のメタデータ・プラグインは、新しいフレームワークと互換性がありません。

この章では、新しいフレームワークで必要な形式に、既存のプラグインを変換する手順について説明します。


注意:

この変換要件は、Enterprise Manager 11g以前のプラグインからのみ適用されます。Enterprise Manager Cloud Control 12c用に新しいプラグインを作成している場合、この章で説明されている問題は作業に影響しません。

この章の内容は次のとおりです。

18.1 既存のメタデータ・プラグインの変換の概要

プラグイン開発者は、変換プロセスにおいて、次の手順に従う必要があります。

  1. 新しいプラグイン・フレームワークへの変更点を理解します。

    詳細は、第18.2項「新しいプラグイン・フレームワークの既存のプラグインへの影響」を参照してください。

  2. convert_mpユーティリティを実行して、プラグイン・メタデータを新しい形式に変換します。

    詳細は、第18.3項「プラグイン・メタデータを変換するためのconvert_mpユーティリティの使用」を参照してください。

  3. 生成されたプラグインの構成ファイルを手動で変更します。

    詳細は、第18.4項「変換後の手順」を参照してください。

  4. 拡張開発キット(EDK)を使用して、デプロイ可能なアーカイブとしてプラグインをパッケージ化します。

    詳細は、第14章「プラグインの検証、パッケージ化およびデプロイ」を参照してください。

  5. Enterprise Manager Cloud Control 12インストールに対してプラグインを検証、デプロイおよびテストします。

    詳細は、第14章「プラグインの検証、パッケージ化およびデプロイ」を参照してください。

18.2 新しいプラグイン・フレームワークの既存のプラグインへの影響

プラグイン開発者は、次に説明する、新しいプラグイン・フレームワークへの変更点およびEnterprise Manager Cloud Control 12cアップグレード・プロセスへの影響を認識する必要があります。

18.2.1 新しい形式に変換する必要のあるプラグイン・メタデータ

Enterprise Manager Cloud Control 12cで使用されるプラグイン・メタデータ形式は、以前のリリースで使用された形式と互換性がありません。結果として、すべての既存のプラグインのメタデータは、このマニュアルの手順に従って、新しい形式に変換する必要があります。

拡張開発キット(EDK)にはconvert_mpユーティリティが含まれていて、これは既存のプラグイン・メタデータ・ファイルを新しい形式に変換し、新しいフレームワークで必要な追加のメタデータ・ファイルを生成します。

18.2.2 Oracle Plug-in Archive (OPAR)ファイルとしてパッケージ化する必要のあるプラグイン

プラグインは、Oracleプラグイン・アーカイブ(OPAR)ファイルとして、Cloud Control 12cへのデプロイメント用にパッケージ化する必要があります。以前のプラグインをパッケージ化するために使用したメタデータ・プラグイン・アーカイブ(MPA)ファイルは、Cloud Control 12cにデプロイできません。

18.2.3 サポートされていない既存のプラグインのインプレース・アップグレード

既存のプラグインのインプレース・アップグレードは、Enterprise Manager Cloud Control 12cアップグレード・プロセスの一部としてサポートされていません。つまり、既存のインストールにデプロイされたプラグイン・アーティファクトの、アップグレードされたインストールへの変換または移行は自動的に行われません。

前述したように、アップグレード・プロセスを開始する前に、インストールに含まれた、アップグレード対象のすべてのプラグインを新しいプラグイン形式に変換する必要があります。

18.2.4 アップグレードする前に登録する必要のあるプラグイン

新しい形式に変換すると、Enterprise Manager Cloud Control 12cアップグレード・プロセスを開始する前に、プラグインをCloud Controlアップグレード・コンソールに登録する必要があります。

適切なプラグインが使用できず、アップグレード・コンソールに登録されていない場合、プラグイン・メタデータに指定されたターゲット・タイプに関連付けられたターゲットを既存のインストールからアップグレードしたインストールに移行できません。

18.3 プラグイン・メタデータを変換するためのconvert_mpユーティリティの使用

既存のプラグイン・メタデータは、プラグイン開発キットに含まれているconvert_mpコマンドライン・ユーティリティを使用して、新しい形式に変換できます。このツールでは、新しい形式で必要な新しい2つのメタデータ・ファイルも生成されます。

ツールは次の2つのモードで実行できます。

このツールは、Enterprise Manager Cloud Control 12cにデプロイできるプラグイン・アーカイブ(OPAR)ファイルの作成に必要なディレクトリ構造に新しいメタデータ・ファイルを出力します。このツールではアーカイブが作成されないことに注意してください。これは、別の手順で実行する必要があります。

このツールでは、次の既存のメタデータを新しい形式に変換します。

  • ターゲット・タイプ定義

  • パフォーマンス・メトリックおよびメトリック収集定義

  • 収集スクリプトおよびバイナリ

  • ジョブ・タイプ定義

  • ジョブ・スクリプトおよびバイナリ

  • レポート定義

  • ホームページ・チャートのカスタマイズ

  • ホームページへの関連リンク

このユーティリティでは、次の新しいファイルも作成されます。これには、新しいフレームワークで必要なメタデータが含まれています。

  • plugin.xml

    このファイルはプラグインのデプロイメント中に使用されます。これには、名前やバージョンなどのプラグインを識別するプロパティが含まれます。また、Enterprise Managerに追加されるターゲット・タイプのセットを宣言します。

  • plugin_registry.xml

    このファイルは、管理エージェントにデプロイされるプラグインに含まれるコンポーネントを宣言します。


注意:

plugin.xmlおよびplugin_registry.xmlファイルは、変換プロセスが完了した後に、手動で更新する必要があります。

詳細は、第18.4.1項「plugin.xmlおよびplugin_registry.xmlファイルの変更」を参照してください。


18.3.1 管理リポジトリに格納されたプラグイン・メタデータの変換

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_desc repository_connection_string -repos_user username
[-repos_password repos_password] [-mp_name plugin_name] [-mp_version plugin_version] 
-out_dir output_directory [-plugin_id converted_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 説明

-conn_desc

Y

管理リポジトリに接続するために使用する接続文字列。host:port:sidの形式で文字列を指定します。

-repos_user

Y

10.2.xまたは11.1管理リポジトリに接続するユーザー。SYSMANとして接続することをお薦めします。

注意: Cloud Control 12.0のユーザー名を指定しないでください。

-repos_passwordでパスワードを指定しない場合、パスワードの入力を要求されます。

-repos_password

N

10.2.xまたは11.1の管理リポジトリのパスワード。パスワードを指定しない場合、パスワードの入力を要求されます。

注意: コマンドラインでのパスワードの指定は安全性が低いため、本番環境では行わないでください。

-mp_name

Y

複数のプラグインが管理リポジトリに存在する場合、必須。一度に1つのプラグインしか変換できないため、変換するプラグインの名前を指定する必要があります。

-mp_version

Y

同じ名前の複数のプラグインが管理リポジトリに存在する場合、必須。

-out_dir

Y

変換済のXMLファイルを出力するディレクトリ。/oparという名前の新しいサブディレクトリがこのディレクトリに作成されます。

-plugin_id

N

変換プロセスの一部として生成されたplugin.xmlおよびplugin_registry.xmlファイルに書き込まれる識別子。識別子をコマンドラインで指定しない場合、プラグインをパッケージ化する前に、plugin.xmlおよびplugin-registry.xmlファイルで指定する必要があります。

-force

N

設定した場合、プラグインの既存の出力ディレクトリは削除され、新しいディレクトリが作成されます。設定しない場合、出力ディレクトリがすでに存在すると、エラーが発生します。


18.3.2 メタデータ・プラグイン・アーカイブ(MPA)の変換

convert_mpユーティリティは、メタデータ・プラグイン・アーカイブ(MPA)でパッケージ化された1つ以上のプラグインのメタデータ・ファイルを変換することもできます。1つのプラグインを指定して変換することも、アーカイブ内のすべてのプラグインを同時に変換することもできます。


注意:

プラグインにレポート定義メタデータが含まれる場合、管理リポジトリ・オプションを使用して変換する必要があります。レポート定義は、メタデータ・プラグイン・アーカイブ(MPA)ファイルに対して変換ユーティリティを実行しても変換できません。

管理リポジトリ・オプションの詳細は、第18.3.1項「管理リポジトリに格納されたプラグイン・メタデータの変換」を参照してください。


管理リポジトリ・オプションと異なり、プラグインは変換する前にEnterprise Manager Cloud Controlにデプロイする必要がないことに注意してください。

構文は、次のとおりです。

convert_mp -mpa mpa_file_location [-mp_name plugin_name] [-mp_version plugin_version] -out_dir output_directory [-plugin_id converted_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 説明

-mpa

Y

MPAファイルのパス。EDKインストールに対する相対パス。

-mp_name

N

アーカイブ内の変換するプラグインの名前。指定しない場合、アーカイブ内のすべてのプラグインが変換されます。

-mp_version

N

同じ名前を持つ複数のプラグインが存在する場合、変換するプラグインのバージョン。指定しない場合、指定したmp_nameのすべてのバージョンが変換されます。

-out_dir

Y

変換済のXMLファイルを出力するディレクトリ。/oparという名前の新しいサブディレクトリがこのディレクトリに作成されます。複数のプラグインを変換する場合、それぞれのプラグインに対して一意の/oparディレクトリが作成されます。

-plugin_id

N

変換プロセスの一部として生成されたplugin.xmlおよびplugin_registry.xmlに書き込まれる識別子。識別子をコマンドラインで指定しない場合、プラグインをパッケージ化する前に、plugin.xmlおよびplugin-registry.xmlファイルで指定する必要があります。

-force

N

設定した場合、プラグインの既存の出力ディレクトリは削除され、新しいディレクトリが作成されます。設定しない場合、出力ディレクトリがすでに存在すると、エラーが発生します。


18.4 変換後の手順

変換プロセスの完了後、プラグインをパッケージ化する前に、いくつかの手動での追加の変更が想定されます。

18.4.1 plugin.xmlおよびplugin_registry.xmlファイルの変更

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>

18.4.2 PL/SQLで作成されるレポート定義の変換

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文」を確認してください。

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> 

18.4.2.2 レポート定義のXMLへの変換

レポート定義を変換する手順は、次のとおりです。

  1. レポート定義PL/SQLを実行して、Enterprise Manager 10.2.xまたは11.1インストールに対してレポートを登録します。

  2. Enterprise ManagerにSYSMANとしてログインし、レポート・ページから、「類似作成」を使用して、すぐに使用できるレポートのコピーを作成します。


    注意:

    レポート定義を編集ページを使用して、レポート名を一時的に変更する必要があります。

  3. 次のように、emcli export_reportコマンドを使用して、レポート定義をXMLファイルにエクスポートします。レポートIDを-titleの値として指定する必要があります。

    emcli export_report -title='MY_REPORT_ID' -output_file='./tmp/report.xml'
    

    MY_REPORT_IDは、手順2で作成したコピー済ファイルの名前です。

  4. プラグインのステージング領域内の/oms/metadata/reportディレクトリに生成済ファイルを含めます。プラグインがデプロイされるときに、ファイルがインポートされます。

  5. 次のように、レポートで参照される名前付き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文を含むすべてのレポート定義に対して繰り返す必要があります。

  6. プラグインのステージング領域内の/oms/metadata/namedsqlディレクトリにファイルを含めます。プラグインがデプロイされるときに、ファイルがインポートされます。

18.4.3 ジョブ・タイプ定義の変換

既存のプラグインで作成されたジョブ・タイプ定義をconvert_mpユーティリティで変換します。ただし、ジョブ・タイプ・メタデータを記述するXSDは、Cloud Control 12cで、厳密に検証されます。結果として、既存のジョブ・タイプ定義に新しいXSDに対して有効でないXMLが含まれる場合、プラグインのデプロイメント中に検証エラーが発生します。

このような問題を事前に検出する最善の方法は、プラグインに対してempdk validate_pluginコマンドを実行することです。エラーが発生するたびに、これを修正し、再度コマンドを実行します。検証エラーが報告されなくなるまで、コマンドの実行を続行します。

empdk validate_pluginコマンドの使用方法の詳細は、第14.3項「プラグインの検証」を参照してください。

不正な形式のジョブ・タイプ定義を再構築する方法を判断するために、ジョブ・タイプXSDを参照します。

18.4.4 プラグインのパッケージ化

プラグインを新しい形式に完全に変換すると、Enterprise Manager Cloud Control 12cにデプロイメントを行えるようにプラグインをパッケージ化できるようになります。詳細は、第14.4項「プラグイン・アーカイブの作成」を参照してください。