Oracle® Fusion Middleware Oracle Enterprise Repository管理者ガイド 12c リリース 1 (12.1.3) E59479-02 |
|
![]() 前 |
![]() 次 |
この章では、Enterprise Manager統合ユーティリティを使用および構成して、Oracle Enterprise ManagerとOracle Enterprise Repositoryを統合する方法について説明します。
この章では、次の項目について説明します。
Oracle Enterprise Manager(EM)は、包括的な監視ツールです。これは、OracleのSOA製品、J2EEサーバー、データベース、JVMおよびオペレーティング・システムの監視をサポートしています。
EM統合ユーティリティでは、EMからOracle Enterprise Repositoryに実行時のパフォーマンス・メトリックの要約を提供することで、実行時と設計時の間のループを終了させます。EM統合ユーティリティは、EMからメトリックをプルし、Oracle Enterprise Repositoryにプッシュします。EM統合ツールは現在、EM 12cをサポートし、連携しています。
EMでは、1つのEMGCインスタンスで複数のバージョンの製品またはターゲットを同時に監視できます。たとえば、Oracle Service Bus 11gおよび12cはEMで同時に監視できるため、これらの両方のインスタンスのメトリックを1つのOracle Enterprise Repositoryインスタンスにプルでき、これには、Oracle Service Bus 11gまたは12cから収集したプロジェクトが含まれます。Oracle Enterprise RepositoryとEMの統合では、Oracle Enterprise Repositoryへの複数の製品バージョン・ターゲットのメトリックの収集もサポートされます。
EM統合ユーティリティを使用する前に、次の前提条件を実行する必要があります。
EM統合ユーティリティでは、OERハーベスタ・データパックをOracle Enterprise Repositoryにインストールする必要があります。
EMからメトリックを受け取るアセットが、Oracle Enterprise Repositoryに存在している必要があります。これらは、Oracle Enterprise Repositoryハーベスタを使用して、SOAスイート/BPEL-PM、WebLogicまたはOracle Service BusからOracle Enterprise Repositoryに発行されます。
収集の詳細は、第8章「自動収集の構成および使用」を参照してください。
EM統合ユーティリティでは、Enterprise Managerの共有データベース・ビューへの読取り権限が必要です。
EM統合ユーティリティでは、Java SDKバージョン6以上が必要です。
EM 12cをインストールして、EM統合ツールでメトリックをOracle Enterprise Repositoryに収集できるようにします。Oracle Enterprise RepositoryとEMの統合ツールは、EMと統合し、11gおよび12cバージョンのSOAと連携します。
EM 12cと統合する場合、em-integration-settings.xml構成ファイルを使用します。ただし、いくつかの変更が必要です。
SOASuiteメトリックの場合、metricName属性をsoainfra_binding_rollupからsoa_composite_services_rollupに変更します。
Weblogic Webサービスの場合、metricName属性をj2ee_app_jee_ws_port_rollupからj2ee_app_jrf_ws_port_propertiesに変更します。
ターゲットのマッピングで、ターゲット・タイプがj2ee_applicationの場合、primaryMetrics metricNameをj2ee_app_jee_ws_port_propertiesからj2ee_app_jrf_ws_port_propertiesに変更します。
ターゲットのマッピングで、ターゲット・タイプがoracle_soa_compositeの場合、次のtargetMetricを追加します。
<targetMetric name="primaryMetrics" metricName="soainfra_composite_label_rollup_by_revision" metricColumn="soainfra_composite" />
Enterprise Manager統合ユーティリティを取得するには、次の手順を実行します。
コンピュータのOracle_HOME\oer\modules\tools\solutions
ディレクトリに移動します。Oracle Enterprise Repositoryのすべてのソリューション・パックの一覧が表示されます。
12.1.3.0.0-EM-Integration.zip
ファイルを一時ディレクトリに解凍します。
インポート/エクスポート・ツールを使用して、12.1.3.0.0-OER-Harvester-Solution-Pack.zip
ファイルをOracle Enterprise Repositoryにインポートします。詳細は、第5章「インポート・エクスポート・ツール」を参照してください。
EM統合ユーティリティは次の用途に使用できます。
EMのOracle Service Busサービスから既存のOracle Enterprise Repositoryアセットにメトリックを発行します。
EMのBPEL-PMプロセスから既存のOracle Enterprise Repositoryアセットにメトリックを発行します。
EMのWebサービスから既存のOracle Enterprise Repositoryアセットにメトリックを発行します。
Oracle Enterprise RepositoryのエンドポイントおよびDeployment: BPELアセットをEMのデプロイメント情報から発行します。
Oracle Enterprise RepositoryのWeb UIからEMの詳細なメトリックへのリンクをサポートします。
EMの新しいターゲットをOracle Enterprise Repositoryアセットにマップできるように、構成可能性と拡張性をサポートします。
EMのOracle SOA Suiteコンポジットのターゲットのメトリック取得をサポートします。EM統合を行うと、サービスを起動し、EMで監視される、コンポジットのメトリックを発行できます。ただし、Oracle Service Bus、BPELまたはWebLogicなどのターゲットと異なり、サービス・エンドポイントがOracle Enterprise Repositoryに存在しない場合、これは統合プロセス中に作成されません。アセットが存在する場合、これらはメトリックで更新されます。
この項では、Enterprise Manager統合ユーティリティの使用方法について説明します。
EM統合ユーティリティはコマンド行で実行できます。Windowsでは、em-integration.bat
ユーティリティを、LinuxとUNIXでは、em-integration.sh
を使用します。
em-integration.bat
またはem-integration.sh
を実行する前に、表17-1で示された環境変数が設定されていることを確認します。
Windowsでは、コマンド・ウィンドウからset JAVA_HOMEと入力して、変数JAVA_HOMEの値を表示し、set JAVA_HOME=C:\Jdk6\bin\javaと入力してJAVA_HOMEの値にC:\Jdk6\bin\javaを設定します。
Linuxでは、echo $JAVA_HOMEと入力して変数JAVA_HOMEの値を表示し、設定されていない場合、export JAVA_HOME=/usr/bin/javaを使用して、JAVA_HOMEに値/usr/bin/javaを設定します。
表17-1コマンド行スクリプト
環境変数 | 説明 |
---|---|
|
|
|
次のように
関連項目: |
表17-2に、EM統合コマンド行ユーティリティを使用して指定できるオプションを示します。
EM統合オプション | 説明 |
---|---|
|
XMLファイルで指定された構成設定のことです。 |
|
Oracle Enterprise RepositoryインスタンスのURLを指定します。 |
|
Oracle Enterprise Repositoryユーザーの名前を指定します。 |
|
Oracle Enterprise Repositoryユーザーのパスワードを指定します。 セキュリティを確実にするために、パスワードを暗号化する必要があります。 Oracle Enterprise Repository Webコンソールには、次のようなパスワードを暗号化するツールがあります。http://<host>:<port>/<domain>/diag/encryptstrings.jsp |
|
EMデータベースのJDBC URLを指定します。 |
|
EMデータベースのユーザー名を指定します。 |
|
EMデータベースのパスワードを指定します。 セキュリティを確実にするために、パスワードを暗号化する必要があります。 Oracle Enterprise Repository Webコンソールには、次のようなパスワードを暗号化するツールがあります。http://<host>:<port>/<domain>/diag/encryptstrings.jsp コマンド行からのパスワードの暗号化の詳細は、17.4項「構成ファイルのパスワードの暗号化」を参照してください。 |
|
バージョン情報を表示します。 |
|
EM統合ユーティリティのオンライン・ヘルプを表示します。 |
注意: 前述のオプションは必須ではなく、省略可能です。オプションが省略された場合、ユーティリティはem-integration.bat が存在するカレント・ディレクトリのem-integration-settings.xml ファイルにある情報を使用します。コマンド行パラメータが指定された場合、em-integration-settings.xml の情報よりも優先されます。 |
図17-1に、em-integration.sh -help
コマンドで表示されるコマンド行ユーティリティのオプションとオンライン・ヘルプを示します。
Enterprise Managerでは、コマンド行アプリケーションが定期的に実行されるようにスケジュールできます。EM統合ユーティリティも、このように実行されるようにスケジュールできます。
詳細は、Oracle Enterprise Manager管理者ガイドのジョブ・システムに関する項を参照してください。
EM統合を1日に1回、夜やシステムのアクティビティの少ない時間にスケジュールすることをお薦めします。
この項では、様々なメトリック発行オプションについて説明します。
EM統合では、タイプがEndpoint
であり、Oracle Service Busプロキシ・サービスおよび外部サービス用にEM内のendpointURIメトリックと一致するendpointURI属性を持つ、Oracle Enterprise Repositoryの既存のアセットを更新します。
注意: 外部サービスは、Oracle Service Busビジネス・サービスによって起動されるサービスです。 |
一致するendpointURIを持つEndpoint
アセットが見つからない場合、ツールは名前とOracle Service Busのサービス・タイプ(BusinessService
またはProxyService
)で、一致するサービス・アセットを検索しようとします。見つかった場合、新しいEndpoint
アセットを作成し、これをサービスに関連付けます。ビジネス・サービスの場合、エンドポイントはビジネス・サービスによって起動された外部サービスに関連付けられます。
メトリックが収集されていない、あるいはOracle Service Busサービスのメトリックを収集する際にEM Grid Controlにエラーが生じるなど、EM内のOracle Service Busターゲットのためのメトリック収集に問題がある場合、『Oracle Enterprise Manager Oracle Fusion Middleware Managementスタート・ガイド』を参照してください。
注意: Oracle Service Busサービスのメトリックが最初にEMにアップロードされたとき、値は0です。メトリックが収集されない場合、Oracle Service Busコンソールの「グローバル設定」を使用して、監視フラグをOnにします。また、Oracle Service Busのプロキシ・サービス/ビジネス・サービス用の別の監視フラグ(操作の設定内)がある場合、これらを有効にしてすべてのサービスのためにメトリックを収集します。 |
EM統合では、タイプがDeployment:BPEL
であり、EM内のendpointURI
メトリックと一致するendpointURI
属性を持つEndpoint
アセットに対してEntryPoint
リレーションシップを持つ、Oracle Enterprise Repositoryの既存のアセットを更新します。EMでは、エンドポイントのWSDLの場所が格納されます。
一致するendpointURIを持つEndpoint
アセットが見つからない場合、ツールはWSDLの修飾名で、一致するサービス・アセットを検索しようとします。見つかった場合、新しいEndpoint
アセットを作成し、これをサービスに関連付けます。
Deployment:BPEL
アセットが見つからない場合、ツールは一致するBusiness Process: BPEL
アセットをプロセス名で検索しようとします。見つかった場合、新しいDeployment:BPEL
アセットを作成し、これをサービスに関連付けます。
EM統合では、タイプがEndpoint
であり、EM内のendpointURI
メトリックと一致するendpointURI属性を持つ、Oracle Enterprise Repositoryの既存のアセットを更新します。
一致するendpointURIを持つEndpoint
アセットが見つからない場合、ツールはWSDLの修飾名で、一致するサービス・アセットを検索しようとします。見つかった場合、新しいEndpoint
アセットを作成し、これをサービスに関連付けます。
EM統合を行うと、コンポジット・レベルのみでメトリックを発行できます。エンドポイント・アセットがEM 11gで監視されているコンポジット・サービスのためにOERに存在する場合、メトリックはOER内で更新されます。ただし、Oracle Service Bus、BPELまたはWebLogicなどのターゲットと異なり、サービス・エンドポイントがOracle Enterprise Repositoryに存在しない場合、これは統合プロセス中に作成されません。
Oracle Enterprise RepositoryにArtifact:WSDL
アセットが存在しない場合、作成されているすべてのEndpoint
に対して、EM統合ユーティリティでは対応するアセットが作成されます。EM統合ユーティリティでは、任意のインポート済のファイル用にArtifact:WSDL
アセットとArtifact:XSD
アセットも作成されます。Oracle Enterprise Repository内の既存のアーティファクトを検索するには、Oracle Enterprise Repositoryハーベスタのフィンガープリント・ルールに従います。
本番エンドポイントがOracle Enterprise Repositoryで取得されていない場合でも、通常、これらをEMで監視できます。一致するサービスを見つけることができて、Deployment:BPEL
アセットを作成した場合や、一致するBusiness Process:BPEL
を見つけることができた場合、EM統合ユーティリティはエンドポイント・アセットを作成します。
EM統合では、デフォルトの構成で、Oracle Enterprise Repositoryの次のメトリックを更新しようとします。Oracle Enterprise RepositoryのWebユーザー・インタフェースの「運用」タブでアセットをすべて表示できます。
前述のターゲット・タイプのすべてについて、これらのメトリックのすべてがEMで収集されるわけではないので、一部は除外されることがあります。em-integration-settings.xml
ファイルでは、どのターゲットのどのメトリックを収集するかを構成します。
日次平均レスポンス時間
週次平均レスポンス時間
月次平均レスポンス時間
最小レスポンス時間
最大レスポンス時間
日次リクエスト
週次リクエスト
月次リクエスト
日次障害
週次障害
月次障害
可用性 - 日次%
可用性 - 週次%
可用性 - 月次%
現在の最大リクエスト/秒
メトリック監視の開始日
最終更新日時
EMの詳細メトリックへのリンク
この項では、Enterprise Manager統合ユーティリティの構成方法について説明します。
<EM Integration Home>
(12.1.3.0.0-EM-Integration.zip
ファイルを解凍したディレクトリ)にあるem-integration-settings.xml
ファイルを開き、適切な資格証明でOracle Enterprise Repositoryインスタンス、EMデータベースおよびWebコンソールを指す次のXMLチャンクを変更します。
EMデータベースを使用して、Oracle Enterprise Repositoryに送信されるメトリック情報を取得します。EMコンソールのURLは、EMへのリンクのベースURLとして使用されます。これはOracle Enterprise Repository内で作成されます。
ユーティリティが作成する任意のエンドポイント・アセットのプロパティを構成するには、introspectionSettings
セクションを使用します。createMissingEndpoints
属性は、EMがエンドポイントまたはDeployment:BPELを監視するが、一致するサービスに対応するアセットがOERに存在しないシナリオで、エンドポイント・アセットとDeployment:BPEL
アセットを作成するかどうかを示します。それ以外の場合、次のコードの残りのセクションは無視されます。
matchMultipleEndpoints
属性は、ユーティリティで、EMのターゲットと一致する複数のエンドポイント・アセットまたはDeployment:BPEL
アセットがOracle Enterprise Repositoryで見つかった場合、実行する必要のあるアクションを示します。見つかった場合、メトリックですべてのエンドポイントを更新します(および警告をログに記録します)。見つからなかった場合、ターゲットをスキップします(および警告をログに記録します)。
matchMultipleServices
属性は、エンドポイントの作成時に、ユーティリティで、EMのターゲットと一致する複数のサービスまたはBusiness Process:BPEL
アセットがOracle Enterprise Repositoryで見つかった場合、実行する必要のあるアクションを示します。見つかった場合、一致するそれぞれのアセットに新しいエンドポイントまたはDeployment:BPEL
をアタッチします(および警告をログに記録します)。見つからなかった場合、ターゲットをスキップします(および警告をログに記録します)。
introspectionDescription
、introspectionVersion
およびregistrationStatus
属性は、作成された任意のアセットに設定されているプロパティを示します。
例17-1 em-integration-settings.xmlのリポジトリおよびEnterprise Manager接続情報の設定
<repository> <uri>http://localhost:7131/oer30/services/FlashlineRegistry</uri> <credentials> <user>admin</user> <password>*****</password> <enableTransaction>false</enableTransaction> <triggerEvent>false</triggerEvent> </credentials> <timeout>120000</timeout> </repository> <introspectionSettings> <createMissingEndpoints>true</createMissingEndpoints> <introspectionDescription>Found in EM </introspectionDescription> <introspectionVersion>1.0</introspectionVersion> <namespace>mythings</namespace> <!-- The Valid Registration states are 1)Unsubmitted 2)Submitted - Pending Review 3)Submitted - Under Review 4) Registered --> <registrationStatus>Submitted</registrationStatus> </introspectionSettings> <emDatabase> <driverClass>oracle.jdbc.driver.OracleDriver</driverClass> <url>jdbc:oracle:thin@remotehost.there.com:1501:mysid</url> <credentials> <user>sysman</user> <password>*****</password> </credentials> </emDatabase>
注意: アセットの表示、編集、承認および登録を行うための基本的なアクセス権が設定されたユーザーとしてEnterprise Manager統合ユーティリティを実行することをお薦めします。 |
また、次のように接続情報をコマンド行ユーティリティにパラメータとして渡すこともできます。
C:\test\em-integration> em-integration - er_url http://localhost:7101/oer/services/FlashlineRegistryTr -er_user admin -em_url jdbc:oracle:thin:@remotehost.there.com:1501:mysid - em_user sysman
この項では、Enterprise Manager統合ユーティリティの次の拡張構成オプションについて説明します。
図17-2
で示すように、EMのメトリックとOracle Enterprise Repositoryのフィールド間のマッピングはem-integration-settings.xmlで構成されます。これらをデフォルト設定から変更するには、このファイルを開いて、次のように変更します。
<metricMappingGroup>
: EMデータベース・ビューで同じメトリック名を持つメトリック・セット用のマッピング。EMでは、関連するメトリック・セットを同じメトリック名でグループ化します。個々のメトリックには異なるメトリック列があります。この要素には次の属性があります。
metricName
: EMデータベース・ビューのEMメトリック名。
<metricMapping>
: 単一のメトリックのマッピング。この要素には、次の属性があります。
metricColumn
: EMデータベース・ビューのEMメトリック列。
rollupPeriod
: EMデータベース・ビューの問合せの対象およびデータの集計方法を示します。DAILY、WEEKLY、MONTHLY、CURRENTのいずれかです。
viewColumn
: データをプルする、EMデータベース内の列を示します。VALUE、AVERAGE、SUM、MINIMUM、MAXIMUM、STANDARD_DEVIATION、SAMPLE_COUNT、COLLECTION_TIMESTAMP、ROLLUP_TIMESTAMP、NOW()、DETAILS_URLのいずれかです。
ロールアップ期間がCURRENTの場合、AVERAGE、SUM、MINIMUM、MAXIMUM、STANDARD_DEVIATION、SAMPLE_COUNTまたはROLLUP_TIMESTAMP列はサポートされていません。
ロールアップ期間がDAILY、WEEKLYおよびMONTHLYの場合、VALUEまたはCOLLECTION_TIMESTAMP列はサポートされていません。
NOW()は、EMに対する問合せの時間が含まれる仮想の列です。
DETAILS_URLは、EM内の詳細情報のURLが含まれる仮想の列です。これは、EM統合コードによって作成されます。EMデータベース・ビューにはありません。
oerField
: カスタム・データが格納される、Oracle Enterprise Repository内のカスタム・データ・フィールドの内部名。
overwrite
: Oracle Enterprise Repository内のカスタム・データ・フィールドがすでに存在する場合に、これを上書きするかどうかを示します。trueまたはfalseを指定します。指定されていない場合、デフォルト値はtrueです。
Oracle Enterprise Repository内のアセットと関連するEM内のターゲットのロジックは、各ターゲット・タイプで異なっています。EM統合には、Oracle Service Bus、BPEL-PM、WebLogicのためのターゲット・ファインダがあります。
上級ユーザーの場合、専用のターゲット・ファインダ・クラスを作成できます。図17-3
で示すように、これらはem-integration-settings.xmlで構成する必要があります。
<targetFinder>
: EM内のターゲット・タイプ用のターゲット・ファインダ・クラスへのマッピング。この要素には次の属性があります。
targetType
: EMデータベース・ビューのEMターゲット・タイプ。
targetFinderClass
: ファインダ・クラスの完全修飾クラス名。これは、em-integration.jar内にあるcom.oracle.oer.integration.em.TargetFinderを実装する必要があります。
セキュリティを確実にするために、Enterprise Manager統合ユーティリティを実行する前に、構成ファイル内のパスワードを暗号化する必要があります。次の方法のいずれかを使用して、EMの構成ファイルのパスワードを暗号化できます。
コマンド・プロンプトによる方法
<em_integration_home>
ディレクトリに移動します。
次のように、コマンド・プロンプトからパスワード暗号化ツールを実行します。
> encrypt.bat em-integration-settings.xml em-integration-settings.xml
<Oracle_home>/oer/modules/tools/solutions/12.1.3.0.0-OER-PasswordTools.zip
にある、パスワード暗号化ツール(encrypt.bat
またはencrypt.sh
)を使用すると、構成ファイルem-integration-settings.xml
に格納されているパスワードを暗号化できます。
Oracle Enterprise Repository Webコンソールによる方法
次の場所にあるOracle Enterprise Repository Webコンソールに移動します。
http://<host>:<port>/<domain>/diag/encryptstrings.jsp
(使用しているコンピュータの資格証明に合ったホスト、ポートおよびドメインに置き換えます)
「ツール」セクションにスクロールして、パスワードの文字列の暗号化リンクをクリックし、パスワードの暗号化ページを表示します。
クリア・テキストのパスワードを暗号化する文字列テキスト・ボックスに入力します。
「問合せの発行」ボタンをクリックします。
暗号化されたパスワード文字列をコピーして、適切なコンテキスト・ファイルまたはプロパティ・ファイルに貼り付けます。
この項では、次の既知のEnterprise Manager統合ユーティリティの問題について説明します。
不正な暗号化パスワードでem-integration-settings.xml
ファイルを構成した場合、非常に長いスタック・トレースが表示されます。非常に長いスタック・トレースは、次のとおりです。
at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement (Unknown Source) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentConten Dispatcher.dispatch(Unknown Source) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument (Unknown Source) at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) at org.apache.xerces.parsers.DTDConfiguration.parse(Unknown Source) at org.apache.xerces.parsers.XMLParser.parse(Unknown Source) at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source) at javax.xml.parsers.SAXParser.parse(SAXParser.java:395) at org.apache.axis.encoding.DeserializationContext.parse (Deserialization Context.java:227) at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696) at org.apache.axis.Message.getSOAPEnvelope(Message.java:424) at org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnder tandChecker.java:62) at org.apache.axis.client.AxisClient.invoke(AxisClient.java:206) at org.apache.axis.client.Call.invokeEngine(Call.java:2765) at org.apache.axis.client.Call.invoke(Call.java:2748) at org.apache.axis.client.Call.invoke(Call.java:2424) at org.apache.axis.client.Call.invoke(Call.java:2347) at org.apache.axis.client.Call.invoke(Call.java:1804) at com.flashline.registry.openapi.service.v300.FlashlineRegistryTrSoap BindingStub.authTokenCreateWithLicense(FlashlineRegistryTrSoapBindingStub. java:741)at com.oracle.oer.sync.plugin.writer.oer.ALERConnectionCache. getAuthToken(ALERConnectionCache.java:128) at com.oracle.oer.sync.plugin.writer.oer.ALERAssetQueries.getToken (ALERAssetQueries.java:82) at com.oracle.oer.sync.plugin.writer.oer.ALERAssetQueries.assetTypeQuery ByUUID(ALERAssetQueries.java:159) at com.oracle.oer.sync.framework.MetadataManager.putAssetType (MetadataManager.java:204)atcom.oracle.oer.sync.framework.impl. DefaultPluginManager.processIntrospector(DefaultPluginManager.java:104) ... 5 more