Oracle® Enterprise Manager Cloud Controlアドバンスト・インストレーションおよび構成ガイド 12cリリース3 (12.1.0.3) B65085-09 |
|
前 |
次 |
この章では、Enterprise Manager Cloud Control環境でJVM診断(JVMD)をインストールする方法について説明します。
この章の具体的な内容は次のとおりです。
JVM診断は、Oracle Enterprise Manager Cloud Controlに統合されています。これにより、管理者は本番環境でのJavaアプリケーションのパフォーマンスの問題を診断できます。問題を再現する必要性がなくなることにより、こうした問題解決に必要な時間が短縮されるため、アプリケーションの可用性とパフォーマンスが向上されます。JVMDを使用すると、管理者は、パフォーマンスの問題をテスト環境または開発環境で再現することなく、本番環境で問題の根本原因を特定できます。
次の図に、JVMDのアーキテクチャを示します。
JVMDエンジンは、JVMD監視システムのコア分析エンジンです。JVMDエンジンは、OMSからの要求に応じてJVMDエージェントからランタイム・データを収集し、そのデータをリポジトリに保存します。複数のJVMDエンジンを構成できます。
JVMDエージェントは、ターゲットJVMのデータ・コレクタです。JVMDエージェントは管理アプリケーション・サーバーにデプロイされ、JVMスレッド、スタック、ヒープおよびCPU使用率などに関するJVM監視データを最小限のオーバーヘッドでリアルタイムに収集します。
JVMDエンジンは、WebLogic ServerのEnterprise JavaBeans (EJB)テクノロジとして実行されます。JVMDエージェントは、ターゲットJVM (本番環境のWebLogic Serverを実行するJVM)にデプロイされます。リアルタイムのデータを収集し、JVM診断エンジンに転送します。このデータは管理リポジトリに保存され、収集された情報はEnterprise Manager Cloud Controlコンソールに監視情報として表示されます。JVMDエンジンとJVMDエージェント間の通信は、セキュア(SSL)または非セキュアのどちらかになります。
JVMDエンジンまたはJVMDエージェントをインストールする前に、『Oracle Enterprise Manager Cloud Control基本インストレーション・ガイド』の概要説明を確認してください。
JVMDエンジンまたはJVMDエージェントをインストールする前に、『Oracle Enterprise Manager Cloud Control基本インストレーション・ガイド』で説明されている前提条件を満たしていることを確認してください。
この項では、JVMDエンジンおよびJVMDエージェントをデプロイする方法を説明します。内容は次のとおりです。
この項では、管理対象サーバーにJVMDエンジンをデプロイする方法を説明します。内容は次のとおりです。
リモート・ホスト(Oracle Management Serviceがインストールされていないホスト)にJVMDエンジンをデプロイするには、次の手順を実行します。
注意: この項では、次の表記規則を使用します。
|
管理エージェントをhost-b
(リモート・ホスト)にインストールし、Enterprise Manager Cloud Controlドメイン(EMGC_DOMAIN
)内に存在する管理対象サーバーで稼働中のOMSを指すようにします。
管理エージェントのインストールの詳細は、Oracle Enterprise Manager Cloud Control基本インストレーション・ガイドを参照してください。
Enterprise Managerの「ソフトウェアのみのインストール」オプションを使用して、host-b
にWebLogic Serverをインストールします。
リモート・ホストにJVMDエンジンを正常にインストールするには、リモートのWeblogicサーバーのバージョンおよびパッチ・レベルが、Enterprise Manager Cloud Controlドメイン(EMGC_DOMAIN
)の管理対象サーバーのものと一致している必要があります。バージョンおよびパッチ・レベルが確実に一致するように、Enterprise ManagerのOUIインストールで、「ソフトウェアのみのインストール」オプションを選択してWeblogic Serverをインストールすることをお薦めします。
ソフトウェアのみのインストールを実行する方法の詳細は、Oracle Enterprise Manager Cloud Control基本インストレーション・ガイドを参照してください。
これらのWebLogic Serverビットは、すべての管理対象サーバーが同じWebLogicドメインに表示されるように、host-a
で実行されているEnterprise Managerドメインに登録する必要があります。
次のように、WebLogic Server管理コンソールを使用して新しい管理対象サーバーを構成します。
host-a
のEnterprise Manager WebLogicドメイン・コンソール(EMGC_DOMAIN
)にログインします。
WebLogic Server管理コンソール・ホームページが表示されます。
WebLogic Server管理コンソールのドメイン構造セクションから「環境」を選択して、「サーバー」をクリックします。
新しいサーバーの作成ページで、「サーバー名」、「サーバー・リスニング・アドレス」および「サーバー・リスニング・ポート」を入力します。
注意: サーバーのリスニング・アドレスがリモート・ホストのリスニング・アドレスに対応し、サーバーのリスニング・ポートがリモート・ホストで空いていることを確認します。 |
次の手順に従い、WebLogic Server管理コンソールを使用して新しいマシンを構成します。
host-a
のEnterprise Manager WebLogicドメイン・コンソール(EMGC_DOMAIN
)にログインします。
WebLogic Server管理コンソール・ホームページが表示されます。
Weblogic Server管理コンソールで、ドメイン構造セクションから「環境」を選択し、「マシン」をクリックします。
新しいマシンの作成ページで、host-b
で実行されているノード・マネージャにマシンを関連付けるために、リモート・ホストのリスニング・アドレスと、(デフォルトで5556の)ノード・マネージャのポート番号を入力します。
このノード・マネージャでは、主にリモート・ホストの起動と停止を制御します。
「終了」をクリックして、マシンを作成します。
新しく作成したマシンを選択して「サーバー」をクリックし、作成した管理対象サーバーをこのマシンに追加します。この手順により、host-b
で実行中のノード・マネージャにマシンが関連付けられます。
WebLogicドメインを拡張するには、次のコマンドを使用し、host-a
で実行中のEnterprise Manager Cloud Controlドメインのテンプレートを作成します。
./pack.sh -domain = $DOMAIN_HOME -template = <absolute_path_to_the_new_weblogic_template> - template_name="My WebLogic Domain" -managed={true} Where: $DOMAIN_HOME is the location of EMGC domain on host-a. <absolute_path_to_the_new_weblogic_template> is the location where you want to create the template.
(OMSが実行されている) host-a
からhost-b
(リモート・ホスト)にemgcdomain.jar
をコピーします。
次のコマンドを実行し、emgcdomain.jar
テンプレートをhost-bに解凍します。
./unpack.sh -domain = $DOMAIN_HOME -template= <absolute_path_to_domain_template_created>
Where:
$DOMAIN_HOME is the domain location of EMGC on host-b (remote host)
<absolute_path_to_domain_template_created> is the location of the template on host-b where emgcdomain.jar
template is present.
WebLogicドメインをノード・マネージャに登録するには、host-b
で次の手順を実行します。
次のコマンドを実行して、ノード・マネージャのプロパティ・ファイルを更新し、リモート・ホストの監視を開始できるようにします。
$WEBLOGIC_HOME/common/bin/wlst.sh
nmEnroll($DOMAIN_HOME)
次のようにノード・マネージャを起動します。
<$WEBLOGIC_HOME>server/bin/startNodeManager.sh
次の手順を実行して、startWebLogic.sh
を変更します。
次の場所に移動します。
- UNIXの場合: $DOMAIN_HOME/bin/startWebLogic.sh
- Windowsの場合: $DOMAIN_HOME/bin/startWebLogic.cmd
次のように、最大ヒープ・サイズ(-Xmx
)を1GBに設定し(64ビット・システムの場合)、最大永続生成(-XX:MaxPermSize
)を768M (64ビット・システムの場合)に設定します。
USER_MEM_ARGS="-Xms256m -Xmx1024m -XX:MaxPermSize=768m"
注意: リモート管理対象サーバーがSun JVMを使用して起動されている場合、USER_MEM_ARGS
にメモリー・オプションのXX:+UnlockDiagnosticVMOptions
およびXX:+UnsyncloadClass
を追加する必要があります。
次のように、最大ヒープ・サイズを1GBに設定し(32ビット・システムの場合)、最大永続生成を512Mに設定します(32ビット・システムの場合)。
USER_MEM_ARGS="-Xms256m -Xmx1024m -XX:MaxPermSize=512m"
host-a
で次の手順を実行し、新しく作成した管理対象サーバーを起動します。
$OMS_HOME/sysman/jlib
にあるemreposauthbean.jar
を<middleware_home>/wlserver_10.3/server/lib/mbeantypes
にコピーします。ここで、$OMS_HOME
はhost-a
上のOMSサーバーの場所であり、<middleware_home>
はhost-b
上にあります。
host-a
上の$WEBLOGIC_HOME/sysman/jlib
からhost-b
上の$WEBLOGIC_HOME/server/lib
にemCoreCommon.jar
をコピーします。
SSL証明書を、管理対象サーバーが実行されているホスト上に存在するEnterprise Managerエージェントのトラスト・ストアにインポートします。
WebLogic Server管理コンソールから管理対象サーバーを起動して、WebLogic Serverの設定を完了します。
次の手順を実行して、host-b
で実行されている新しい管理対象サーバーを検出します。
Cloud Controlで、「ターゲット」メニューから「ミドルウェア」を選択します。
ミドルウェア・ページで、実行中のWebLogic Serverのリストから、新しい管理対象サーバーがデプロイされているWebLogicドメイン(EMGC_DOMAIN
)を選択します。
Cloud Controlの「ドメイン」ページで、「Oracle WebLogicドメイン」メニューから「WebLogicドメインのリフレッシュ」を選択します。
これで、新しい管理対象サーバーは、Enterprise Manager Cloud Controlドメインに登録されました。
管理対象サーバーを再起動してすべての変更を有効にします。
リモート・ホスト(Oracle Management Serviceがインストールされていないホスト)にJVMDエンジンをデプロイするには、次の手順を実行します。
「設定」メニューから、ミドルウェア管理、「アプリケーション・パフォーマンス管理」の順に選択します。
「アプリケーション・パフォーマンス管理」ページで、「追加」メニューから、「JVM診断エンジン」を選択します。
JVM診断エンジンのデプロイ・ページで、「既存の管理対象サーバーにデプロイします」を選択します。
「管理対象サーバー」で、JVMDエンジンをデプロイするリモート・ホストで実行されている管理対象サーバーを選択します。ドロップダウン・リストに、Enterprise Manager WebLogicドメインに存在するすべての管理対象サーバーが表示されます。
「Oracle WebLogic管理サーバー・ホストの資格証明」、「Oracle WebLogic Serverドメインの資格証明」および「Oracle WebLogic管理対象サーバー・ホストの資格証明」の値を指定します。
Oracle WebLogic管理サーバー・ホストの資格証明は、(Enterprise Manager WebLogicドメインの) WebLogic管理サーバーがデプロイされているホストのホスト資格証明です。Oracle WebLogicドメインの資格証明は、Enterprise Manager WebLogicドメインの管理サーバーの資格証明です。Oracle WebLogic管理対象サーバー・ホストの資格証明は、WebLogic管理対象サーバーがデプロイされているホストのホスト資格証明です(つまり、リモート・ホストのホスト資格証明です)。
「デプロイ」をクリックしてEnterprise Managerジョブ・システムにデプロイメント・ジョブを発行します。
注意: 「デプロイ」をクリックすると、WebLogicドメインがすでに編集モードであり、変更内容が保存されておらず、有効な変更内容がないことを示す警告が表示されます。保存されていない変更または無効な変更がない場合、または変更がJVMDエンジンのデプロイメントに影響しないことが判明している場合、この警告を無視して続行します。 |
JVMDエンジンのデプロイメント・ステータス・ページがジョブ・ステータスへのリンク付きで表示されます。リンクをクリックすると、発行したジョブのステータスが表示されます。
デプロイメント中にエラーが発生した場合は、第I.2項を参照してください。
ApmEngineSetup.pl
スクリプトを使用して、JVMDエンジンを手動でデプロイできます。このスクリプトは次の方法で実行できます。
対話型モード: 対話形式で詳細を入力するようにプロンプト表示されます。
サイレント・モード: プロパティ・ファイルを使用してすべての入力の詳細を指定します。
重要: ApmEngineSetup.pl スクリプトを使用して、リモート・ホストではなく、OMSを実行しているホストにのみJVMDエンジンをデプロイできます。 |
ApmEngineSetup.pl
スクリプトを使用してJVMDエンジンを手動でデプロイするには、次の手順に従います。
OMSホスト上の次の場所に移動します。
$<MIDDLEWARE_HOME>/plugins/oracle.sysman.emas.oms.plugin_12.1.0.5.0/archives/jvmd/deployment_Scripts/engine/
README.txt
ファイルでApmEngineSetup.pl
スクリプトの使用についての情報を確認します。
ApmEngineSetup.pl
スクリプトを実行します。
ApmEngineSetup.pl
スクリプトを対話型モードで、プロンプト表示に従って詳細を入力するには、次のコマンドを使用します。
perl ApmEngineSetup.pl
必ず、操作をdeploy
とし、エンジン・タイプをJVMD
として指定します。
ApmEngineSetup.pl
スクリプトをサイレント・モードで実行するには、プロパティ・ファイルにすべての入力の詳細を指定し、次のコマンドを使用します。
perl ApmEngineSetup.pl -silent -file <properties_file_name> -password <password>
<properties_file_name>
は、JVMDエンジンおよび操作の詳細が記載されるプロパティ・ファイルの名前です。<password>
は、WebLogicコンソールのパスワードです。
入力の詳細をプロパティ・ファイルに指定する方法は、サンプルのプロパティ・ファイルSAMPLE_engine.properties
をご覧ください。
この項は次のトピックで構成されています。
JVMDエージェントを手動でデプロイするには、次の手順を実行します。
注意: Oracle WebLogic ServerにJVMDエージェントをデプロイするには、javadiagnosticagent.ear を使用することをお薦めします。Oracle WebLogic Server以外のアプリケーション・サーバーにJVMDエージェントをデプロイするには、jamagent.war を使用してください。 |
この項では、javadiagnosticagent.ear
ファイルまたはjamagent.war
ファイルをダウンロードする方法を説明します。内容は次のとおりです。
Cloud Controlを使用したjavadiagnosticagent.earまたはjamagent.warのダウンロード
Cloud Controlを使用してjavadiagnosticagent.ear
またはjamagent.war
をダウンロードするには、次の手順に従います。
Cloud Controlの「設定」メニューから、ミドルウェア管理、「アプリケーション・パフォーマンス管理」の順に選択します。
「アプリケーション・パフォーマンス管理」ページで「JVM診断エンジン」を選択します。
「構成」をクリックします。「JVM診断の設定」ページが表示されます。
「JVM診断の設定」ページで「JVMおよびプール」をクリックし、「ダウンロード」をクリックします。「JVM診断コンポーネントのダウンロード」ダイアログ・ボックスが表示されます。
「JVMDコンポーネント」メニューから、javadiagnosticagent.ear
をダウンロードするために、「MDAを備えたJVMDエージェント(Weblogicのみ)」を選択し、「OK」をクリックします。jamagent.war
をダウンロードするには、「JVMDコンポーネント」メニューから「JVMDエージェント」を選択し、「OK」をクリックします。「JVM診断エージェントWeb xml
パラメータ」ダイアログ・ボックスが表示されます。
「使用可能なエンジン」メニューで、リストからオプションを選択し、「ダウンロード」をクリックします。
セキュアではない接続を使用して、JVMDエージェントがJVMDエンジンに接続するようにするには、HTTP URLを選択します。
セキュアな接続を使用して、JVMDエージェントがJVMDエンジンに接続するようにするには、HTTPS URLを選択します。
ロード・バランサを介して、JVMDエージェントがJVMDエンジンに接続するようにするには、「カスタム」を選択します。JVMDエージェントを接続する必要のあるホスト名およびポートを指定します。
次に例を示します。
HTTP: http://slc01.us.example.com:3800
HTTPS: https://slc01.us.example.com:3801 (セキュアな接続)
「ダウンロード」をクリックして、javadiagnosticagent.ear
またはjamagent.war
をダウンロードします。
javadiagnosticagent.earを使用したjamagent.warのダウンロード
javadiagnosticagent.ear
を使用してjamagent.war
をダウンロードするには、次の手順に従います。
次の場所にjavadiagnosticagent.ear
ファイルをダウンロードします。
<middleware_home>/oms/jvmd
javadiagnosticagent.ear
ファイルは次の場所からダウンロードできます。
<MIDDLEWARE_HOME>/plugins/oracle.sysman.emas.oms.plugin_12.1.0.5.0/archives/javadiagnosticagent.ear
次のコマンドを実行して、javadiagnosticagent.ear
にあるJVMDエージェントのスクリプトを抽出します。
jar -xvf javadiagnosticagent.ear
WEB-INF/web.xml
に移動します。
jamconshost
およびjamconsport
パラメータの値を更新するようにweb.xml
ファイルを編集します。jamconshost
はJVMDエンジンがデプロイされるホストのIPで、jamconsport
は同じホストのポートを示しています。
注意: 選択されたJVMDエンジンに対するセキュアな通信をできるようにするには、web.xml ファイルに次の変更を行います。
|
次に例を示します。
<init-param> <param-name>jamconshost</param-name> <param-value>slc01axn</param-value> <description>Jam console host - demolnx.auptyma.com</description> </init-param> <init-param> <param-name>jamconsport</param-name> <param-value>3800</param-value> <description>Jam console port</description> </init-param>
注意: JVMDエンジンがデプロイされると、IPとポートがJVMDデプロイメント・ページに<Machine Name:Port Number> のように表示されます。 |
次のコマンドを実行してjamagent.war
ファイルを再アセンブルします。
jar -cMvf jamagent.war META-INF WEB-INF jamagent oracle
これで、更新されたjamagent.war
ファイルのデプロイメントの準備ができました。
デプロイメント中にエラーが発生した場合は、第I.2項を参照してください。
この項では、様々なアプリケーション・サーバーにJVMDエージェントをデプロイする方法を説明します。内容は次のとおりです。
WebLogic ServerへのJVMDエージェントのデプロイ
JVMDエージェントをWeblogic管理対象サーバーに手動でデプロイするには、次の手順を実行します。
jvmd.zip
ファイルにあるデプロイメント・プロファイルsample_jvmdagent_deploy.properties
のコピーを作成します。javadiagnosticagent.ear
ファイルの場所、WebLogicドメイン名およびサーバー情報を更新します。プロファイルをjvmdagent_deploy.properties
として保存します。
パラメータの詳細は、jvmd.zip
ファイルのcustomprov
フォルダにあるREADME.txt
ファイルを参照してください。
jvmd.zip
ファイルのcustomprov
フォルダにあるperlのスクリプトを実行して、指定されたすべてのサーバーにJVMDエージェントをデプロイします。
perl deploy_jvmdagent.pl
注意: デプロイメント・プロファイルjvmdagent_deploy.properties とperlスクリプトが同じフォルダにあることを確認します。 |
GlassfishへのJVMDエージェントのデプロイ
JVMDエージェントをGlassfishに手動でデプロイするには、次の手順を実行します。
GlassFish管理コンソールにログインします。
「共通タスク」セクションで、「アプリケーション」をクリックします。
「デプロイ済みアプリケーション」セクションで、「デプロイ」をクリックします。
「場所」には、「サーバーにアップロードされるパッケージ・ファイル」を選択し、jamagent.war
のあるローカル・ホスト上の場所を指定します。
「選択したターゲット」に、jamagent.war
をデプロイするサーバーを追加します。
「OK」をクリックします。
JBossへのJVMDエージェントのデプロイ
JVMDエージェントをJBossに手動でデプロイするには、次の手順を実行します。
JBoss管理コンソールにログインします。
「アプリケーション」で「Webアプリケーション(WAR)」をクリックします。
「新しいリソースを追加」をクリックします。
ローカル・ホストにあるjamagent.war
への絶対パスを入力します。
「展開済をデプロイ」および「ファーム済をデプロイ」の両方に対して「いいえ」を選択します。
「続行」をクリックします。
JVMDエージェントをJBossに手動でデプロイするには、次の手順も可能です。
次の場所にjamagent.war
を転送します。
<JBOSS_HOME>/server/all/deploy
アプリケーション・サーバーを再起動します。
TomcatへのJVMDエージェントのデプロイ
JVMDエージェントをTomcatに手動でデプロイするには、次の手順を実行します。
次の場所にjamagent.war
を転送します。
$CATALINA_BASE/webapps
アプリケーション・サーバーを再起動します。
Tomcatの最新版では、$CATALINA_BASE/conf/server.xml
においてautoDeploy
フラグがtrue
に設定されている場合、アプリケーション・サーバーを再起動する必要はありません。Tomcatは実行時にjamagent.war
を選択します。
WebsphereへのJVMDエージェントのデプロイ
JVMDエージェントをWebsphereに手動でデプロイするには、次の手順を実行します。
WebSphere管理コンソールにログインします。
「アプリケーション」を展開し、「新規アプリケーション」をクリックします。
新規エンタープライズ・アプリケーションをクリックします。
「新規アプリケーションへのパス」で「ローカル・ファイル・システム」を選択し、jamagent.war
があるローカル・ホスト上の場所を指定します。
jamagent.war
のコンテキスト・ルートを指定します。
構成を保存します。
アプリケーションを起動します。
OC4JへのJVMDエージェントのデプロイ
JVMDエージェントをOC4Jに手動でデプロイするには、次の手順を実行します。
OC4J管理コンソールにログインします。
「アプリケーション」をクリックします。
「デプロイ」をクリックします。
「アーカイブはローカル・ホストに存在します」を選択します。「アーカイブの場所」で、jamagent.war
があるローカル・ホスト上の場所を指定します。「次へ」をクリックします。
「アプリケーション名」にjamagent
と入力します。「コンテキスト・ルート」には/jamagent
と入力します。
「デプロイ」をクリックします。
スタンドアロンJVMへのJVMDエージェントのデプロイ
JVMDエージェントは、web.xml
から入力を読み取るか、コマンドラインから入力を指定することによって、スタンドアロンJVMにデプロイできます。
すべての入力がweb.xml
から読み取られるようにして、JVMDエージェントをスタンドアロンJVMにデプロイするには、コマンドラインから次のコマンドを実行します。
java -cp <absolute_path_to_jamagent.war> jamagent.jamrun <java_class_with_a_main_method>
すべての入力をコマンドラインで指定することによって、JVMDエージェントをスタンドアロンJVMにデプロイするには、コマンドラインから次のコマンドを実行します。
java -cp <absolute_path_to_jamagent.war> jamagent.jamrun <java_class_with_a_main_method> jamconshost=<jvmd_engine_host> jamconsport=<jvmd_engine_listen_port> jamjvmid=<unique_jvmd_identifier> jamtimeout=<timeout_period_in_seconds> jamloglevel=<jvmd_agent_log_level>
注意: jamagent.war がIBM Java Development Kit (JDK)を使用して実行する場合、ログに次の警告が表示されることがあります。
******can_tag_objects capability is not set.Copy library libjamcapability to another directory and restart Java with argument "-agentpath:<absolute_path_to_libjamcapability.so>" ****** この警告を解決するには、
|
deploy_jvmdagent.pl
スクリプトを使用して、JVMDエージェントを手動でデプロイできます。このスクリプトはサイレント・モードでのみ実行できます。つまり、プロパティ・ファイルを使用してすべての入力の詳細を指定する必要があります。
deploy_jvmdagent.pl
を使用してJVMDエージェントを手動でデプロイするには、次の手順を実行します。
OMSホスト上の次の場所に移動します。
$<MIDDLEWARE_HOME>/plugins/oracle.sysman.emas.oms.plugin_12.1.0.5.0/archives/jvmd/deployment_Scripts/agent/jvmd/
README.txt
ファイルでdeploy_jvmdagent.pl
スクリプトの使用についての情報を確認します。
すべての入力をプロパティ・ファイルに指定し、次のコマンドを使用します。
perl deploy_jvmdagent.pl [-appserver <server_type>] [-file <name_of_properties_file>]
例: perl deploy_jvmdagent.pl -appserver WLS -file wls_deploy.properties
-appserver
パラメータは、deploy_jvmdagent.pl
スクリプトを使用してJVMDエージェントをデプロイするアプリケーション・サーバー・ソフトウェアを指定します。このパラメータを指定しない場合、WebLogic Serverを示すデフォルト値のWLS
が割り当てられます。現在、deploy_jvmdagent.pl
を使用するJVMDエージェントは、WebLogic Serverのみでサポートされており、他のアプリケーション・サーバーではサポートされていません。
-file
パラメータは、デプロイメント入力を含むプロパティ・ファイルの名前を指定します。このパラメータを指定しない場合、deploy_jvmdagent.pl
は同じフォルダ内のjvmdagent_deploy.properties
という名前のプロパティ・ファイルを検索します。入力の詳細をプロパティ・ファイルに指定する方法は、サンプルのプロパティ・ファイルsample_jvmdagent_deploy.properties
をご覧ください。
セットアップで複数のJVMDエンジンをデプロイし、それらに対してロード・バランサを構成している場合、JVMDエージェントを個々のJVMDエンジンのいずれかではなくロード・バランサに接続するようにしてデプロイできます。こうすることでJVMDエージェントの可用性を高め、フェイルオーバー・メカニズムが作成されます。つまり、特定のJVMDエンジンがダウンしても、JVMDエージェントはアクティブを保持できます。
次の方法で、高可用性を実現するJVMDエージェントをデプロイできます。
アプリケーション・パフォーマンス管理ページを使用して高可用性を実現するJVMDエージェントをデプロイするには、次の手順を実行します。
『Oracle Enterprise Manager Cloud Control基本インストレーション・ガイド』に記載の手順に従って、JVMDエージェントをデプロイします。
JVMDエージェント構成ページの「使用可能なJVMDエンジン」で、「その他」を選択します。ロード・バランサのホスト名とポートを指定します。
「次へ」をクリックします。
確認ページですべての情報を確認し、「デプロイ」をクリックします。
注意: デフォルトでは、JVMDエージェントはHTTPを使用してロード・バランサに接続します。HTTPSを使用してJVMDエージェントをロード・バランサに接続するには、第14.4.2.3.2項で説明するとおり、JVMDエージェントを手動でデプロイする必要があります。 |
高可用性を実現するJVMDエージェントを手動でデプロイするには、次の手順を実行します。
「Cloud Controlを使用したjavadiagnosticagent.earまたはjamagent.warのダウンロード」に記載の手順に従って、javadiagnosticagent.ear
またはjamagent.war
をダウンロードします。
JVM診断エージェントのweb.xml
パラメータ・ダイアログ・ボックスが表示された場合、「使用可能なエンジン」メニューから「カスタム」を選択します。ロード・バランサのホスト名とポートを指定します。
「ダウンロード」をクリックします。
第14.4.2.1.2項で説明したとおりJVMDエージェントをデプロイします。
注意: デフォルトでは、JVMDエージェントはHTTPを使用してロード・バランサに接続します。HTTPSを使用してJVMDエージェントをロード・バランサに接続するには、第14.4.2.5項で説明するとおり、証明書を使用する必要があります。使用する証明書の共通名は、ロード・バランサのホスト名と一致するようにしてください。 |
JVMDデータベース・エージェントをデプロイするには、Cloud ControlからJVMDエージェントをダウンロードします。JVMDエージェントはJVMDデータベース・エージェントとしても機能します。JVMDエージェントがダウンロードされ、Oracle Databaseと同じホストにデプロイされた場合、JVMDデータベース・エージェントは別途必要ありません。JVMDエージェント自体がデータベースとJVMDエンジンとを統合します。ただし、JVMDエージェントとデータベースが別のホストにある場合、データベース固有の情報を収集してJVMDエンジンに収集したデータを送信するJVMDデータベース・エージェントが必要です。
注意: JVMDデータベース・エージェントは、JVMDエージェントがサポートされるプラットフォーム(Windows以外)でサポートされます。JVMDデータベース・エージェントの実行には、Java 1.4.X以上が必要です。 |
JVMDデータベース・エージェントをダウンロードおよびデプロイするには、次の手順を実行します。
「Cloud Controlを使用したjavadiagnosticagent.earまたはjamagent.warのダウンロード」に示された手順に従い、Cloud Controlを使用してjamagent.war
ファイルをダウンロードします。
JVMDデータベース・エージェントを起動するには、次のコマンドを実行します。
$JAVA_HOME/bin/java -Xms126M -Xmx512M -cp ./jamagent.war jamagent.Dbagent jamconshost=<Host on which engine is running> jamconsport=<Port of the server on which JVMD Engine is installed> For Example: /usr/local/packages/jdk14/bin/java -Xms126M -Xmx512M -cp ./jamagent.war jamagent.Dbagent jamconshost=adc2190661.us.example.com jamconsport=3900
注意: エラー・メッセージ「TIMEOUT from console JAM Agent: Error receiving data from console 」が表示される場合、オプションjamconsretr = 5 を使用してJVMDデータベース・エージェントを再起動します。 |
JVMDエンジンとのセキュアな通信を保証するためには、JVMDエージェントは、JVMDエンジンのデプロイ先の管理対象サーバーの証明書が追加されるキーストアにアクセスできる必要があります。Enterprise Manager Cloud Controlドメイン(JVMDエンジン管理対象サーバーが作成されるEMGCのドメイン)のキーストアは、同じように使用できます。
JVMDエンジンおよびJVMDエージェントを同じホストで実行している場合、JVMDエージェントはEMGCドメインおよびデフォルトのキーストアにアクセスできます。この場合、セキュアな通信を確実にするために次の手順に従ってください。
キーストアの場所を特定します。通常は、次の場所から入手できます。
<WEBLOGIC_HOME>/server/lib/DemoTrust.jks
WEBLOGIC_HOME
はWebLogic Serverソフトウェアのインストール・ディレクトリを参照しています。
WebLogicサーバーの管理コンソールにログインします。
「環境」メニューから、「サーバー」を選択します。
JVMDエージェントをデプロイする管理対象サーバーを選択して、「サーバーの起動」タブを選択します。
「引数」に次の引数を指定します。
-Djavax.net.debug=ssl -Djavax.net.ssl.trustStore=<location_of_DemoTrust.jks>
-Djavax.net.ssl.trustStorePassword=<DemoTrust.jks_KeyStore_password>
注意: DemoTrust.jksキーストアのデフォルトのパスワードは、DemoTrustKeyStorePassPhrase です。 |
管理対象サーバーを再起動します。
JVMDエンジンおよびJVMDエージェントを異なるホストで実行している場合(ほとんどの環境の場合)、SSL証明書をJVMDエンジン管理対象サーバーからダウンロードして、JVMDエージェントをデプロイするターゲットの管理対象サーバーの新規または既存のキーストアに追加する必要があります。これにより、JVMDエージェントは証明書にアクセスして、JVMDエンジンのセキュアなポートと通信できます。これを実行するには、次の手順に従います。
次の手順に従って、JVMDエンジンの管理対象サーバーの証明書をダウンロードします。
ブラウザを使用して、次のURLにアクセスします。
https://<jamconshost>:<jamconsport(secure)>
「ツール」メニューから、「オプション」を選択します。
「拡張」タブを選択して、「暗号化」タブを選択します。
「証明書の表示」をクリックします。
「サーバー」タブを選択して、<jamconshost>:<jamconsport(secure)>
証明書を検索し選択します。「エクスポート」をクリックします。
証明書をJVMDCert.crt
として保存します。
既存のキーストアに証明書を追加するか(例: DemoTrust.jk
)、新しいキーストアを作成して(例: keystore.jks
)証明書に追加します。これを行うには、次のコマンドを実行します。
keytool -import -trustcacerts -alias root -file JVMDCert.crt -keystore <name_of_existing_or_new_KeyStore>
-keystore
パラメータに既存のキーストア名を指定する場合、キーストアのパスワードの入力を求められます。-keystore
パラメータに新しいキーストアの名前を指定する場合、新しいキーストアが作成されデフォルトのパスワードはchangeit
になります。
WebLogicサーバーの管理コンソールにログインします。
「環境」メニューから、「サーバー」を選択します。
JVMDエージェントをデプロイする管理対象サーバーを選択して、「サーバーの起動」タブを選択します。
「引数」に次の引数を指定します。
-Djavax.net.debug=ssl -Djavax.net.ssl.trustStore=<location_of_KeyStore>
-Djavax.net.ssl.trustStorePassword=<KeyStore_password>
注意: DemoTrust.jksキーストアのデフォルトのパスワードは、DemoTrustKeyStorePassPhrase です。 |
管理対象サーバーを再起動します。
注意: SunまたはJRockit Java仮想マシン(JVM)で実行されているWebLogic管理対象サーバーがHTTPSを使用して外部リソースに接続しようとすると、次の例外が発生する場合があります。
HTTP APIではSun実装を使用するかわりに基礎となるWebLogic実装を使用するため、この例外が発生します。この例外を回避するには、ランタイム引数を使用して次のフラグを設定します。
|