ヘッダーをスキップ
Oracle® Enterprise Manager Oracle Fusion Middleware Managementスタート・ガイド
11g リリース1(11.1.0.1)
B61025-01
  目次
目次
索引
索引

戻る
戻る
 
次へ
次へ
 

6 JVM Diagnosticsの構成

この章では、JVM Diagnostics機能の構成および有効化のプロセスについて説明します。この章の内容は次のとおりです。

6.1 JVM Diagnosticsアーキテクチャ

次の図はJVM Diagnosticsアーキテクチャを示しています。

図6-1 JVM Diagnosticsアーキテクチャ

JVM Diagnosticsアーキテクチャ

JVM DiagnosticsマネージャはWebLogicサーバーでEJBとして実行されます。JVM Diagnosticsエージェントは、ターゲットとされたJVMにデプロイされます(例: 本稼働WebLogicサーバーを実行しているJVM)。エージェントはリアルタイムのデータを収集して、それをJVM Diagnosticsマネージャに送信します。JVM DiagnosticsマネージャとJVM Diagnosticsエージェント間の通信は、セキュア(SSL)または非セキュアな接続が可能です。


注意:

この図は単一のJVM Diagnosticsマネージャのデプロイを示しています。6.4項「複数のJVM Diagnosticsマネージャのデプロイによるスケール拡大」に説明されているように複数のマネージャをデプロイしている場合、これは対象外です。

6.2 前提条件

6.3 JVM Diagnosticsマネージャのデプロイ

JVM DiagnosticsマネージャのデプロイにはDeployAD4Jmanager.shスクリプトが使用されます。このスクリプトは次の処理を実行します。

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

6.3.1 DeployAD4Jmanager.shスクリプトの実行

JVM Diagnosticsマネージャをインストールするには、次の手順を実行します。

  1. コマンド・プロンプトからDeployAD4Jmanager.shスクリプトを実行します。

    $ ./DeployAD4JManager.sh

    次の出力が表示されます。

    Welcome to AD4J Manager Installation script
    Please follow the guided instructions to install AD4J manager
    Setting up environment variables
    Environment variable used in the script:
    ORACLE_HOME=/u01/atejaswy/Oracle/Middleware/oms11g
    MW_HOME=/u01/atejaswy/Oracle/Middleware
    WL_HOME=/u01/atejaswy/Oracle/Middleware/wlserver_10.3
    MODULES_DIR=/u01/atejaswy/Oracle/Middleware/modules
    Delete previous existing ad4j directory..
    Done
    Unzipping ad4j.zip.....
    Archive:  ad4j.zip
    creating: ad4j/
    inflating: ad4j/ad4jjobtype.xml
    inflating: ad4j/jamagent.war
    inflating: ad4j/jamagent.ear
    
  2. 次に、WebLogicサーバーのホスト名を求められます。[Enter]を押すとデフォルト値が選択されます。次のプロンプトが表示されます。

    Enter weblogic host name:
    

    WebLogicサーバーが稼働しているマシンのホスト名またはIPアドレスを入力します。

    Is secured connection (uses https)? [Default:[y]es]
    

    [Enter]を押して安全な接続であることを示します。

    Enter weblogic ssl port number
    

    httpsを選択している場合はssl(https)ポート番号、選択していない場合はhttpポート番号を入力します。

    Enter weblogic admin username
    
    
    

    管理ユーザーの名前を入力します。

    Enter weblogic admin password
    

    管理ユーザーのパスワードを入力します。

  3. 選択したWebLogicサーバーの詳細が表示されます。次に、新規の管理対象サーバーの詳細を求められます。[Enter]を押すとデフォルト値が使用されます。次のプロンプトが表示されます。

    Enter managed server name:
    

    新規の管理対象サーバーの名前を入力します。デフォルト名はEMAD4JMANAGERです。

    Enter managed server machine name:
    

    管理対象サーバーが作成される先のマシンの名前を入力します。デフォルトはEMGC_MACHINE1です。

    Enter managed server listen address
    

    管理対象サーバーのリスニング・アドレスを入力します。デフォルトは現行マシンの名前です。

    Enter managed server listen port
    
    
    

    管理対象サーバーについてユーザーが構成したポート番号を入力します。デフォルト値は3800です。

    Enter managed server SSL listen port
    

    管理対象サーバーについてユーザーが構成したsslポート番号を入力します。デフォルト値は3801です。

    Enter existing OMS server name
    

    OMSサーバーの名前を入力します。

    Enter existing EMGC_DOMAIN path
    

    EMドメインの場所を入力します。

    Enter existing INSTANCE_HOME path
    

    OMSサーバーがインストールされているディレクトリを入力します。

    Do you want secure communication between AD4J Agent and AD4J Manager (y/n) [Default:n]
    

    セキュアな通信をサポートする場合は「Y」を入力します。

  4. 「Y」を入力すると、次のプロンプトが表示されます。

    Enter the absolute location of the wallet
    

    ウォレット名を含む、ウォレットの完全パスを入力します。

    Enter wallet password
    

    ウォレットのパスワードを入力します。これによって、AD4JマネージャとAD4Jエージェント間にセキュアな通信が存在することになります。

  5. インストールの続行を次のように求められます。

    Do you wish to continue with the installation of AD4J Manager (y/n) [Default:y]
    

    [Enter]を押して続行します。次の詳細が表示されます。

    Initializing WebLogic Scripting Tool (WLST) ... 
    
    Welcome to WebLogic Server Administration Scripting Shell
    
    Type help() for help on available commands
    
    Deployment Summary:
     WEBLOGICHOSTNAME dadvmi0105
     WEBLOGICPORTNUMBER: 7101
     USERNAME: weblogic
     MACHINENAME: EMGC_MACHINE1
     ORACLEHOME: /u01/atejaswy/Oracle/Middleware/oms11g
     WLHOME: /u01/atejaswy/Oracle/Middleware/wlserver_10.3
     MODULEHOME: /u01/atejaswy/Oracle/Middleware/modules
     SERVERNAME ad4jmanager
     LISTENADDRESS dadvmi0105
     LISTENPORT 3800
     SSL LISTENPORT 3801
     Connecting to t3s://dadvmi0105:7101 with userid weblogic ...
     Successfully connected to Admin Server 'EMGC_ADMINSERVER' that belongs to
     domain 'EMGC_DOMAIN'.
     Location changed to edit tree. This is a writable tree with
     DomainMBean as the root. To make changes you will need to start
     an edit session via startEdit ().
     For more help, use help(edit)
     You already have an edit session in progress and hence WLST will
     continue with your edit session.
     
     Started edit session, please be sure to save and activate your
     changes once you are done.
     Saving all your changes ...
     Saved all your changes successfully.
     Activating all your changes, this may take a while ...
     The edit lock associated with this edit session is released
     once the activation is completed
     Activation completed
     Starting server ad4jmanager
     ................................................................
    ......................................
    Server with name ad4jmanager started successfully
    Deploying application from
    /u01/atejaswy/Oracle/Middleware/oms11g/ad4j/./ad4j/jammanager.ear to targets
    ad4jmanager (upload=false) ...
    <Jan 8, 2010 6:33:16 AM PST> <Info> <J2EE Deployment SPI> <BEA-260121>
    <Initiating deploy operation for application, ad4jmanagerapp [archive:
    /u01/atejaswy/Oracle/Middleware/oms11g/ad4j/./ad4j/jammanager.ear], to
    ad4jmanager .>
    .......................Completed the deployment of Application with status
    completed
    Current Status of your Deployment:
    Deployment command type: deploy
    Deployment State       : completed
    Deployment Message     : no message
    Exiting WebLogic Scripting Tool.
    

以上で、JVM Diagnosticsマネージャがインストールされました。この機能の使用を開始するには、次の手順を実行します。

  1. Enterprise Manager Grid Controlにログインします。

  2. 「ターゲット」、続いて「ミドルウェア」タブをクリックして、「ミドルウェア」ページに移動します。

  3. リストの「WebLogicドメイン」ターゲットをクリックします。次の画面が表示されます。

    図6-2 「WebLogicドメイン」-「JVM診断」ページ

    WebLogic Server - JVM診断
  4. JVM Diagnosticsの使用を開始するには、「WebLogicドメイン」ドロップダウン・メニューから「JVM診断」オプションを選択し、適切なオプションを選択します。

6.3.2 64ビットのJVMでのJVM Diagnosticsエージェントのデプロイ

JVM Diagnosticsマネージャは32ビットのJVMにデプロイできます。JVM Diagnosticsマネージャを64ビットのJVMにデプロイしようとすると、jammanager.earが失敗して次のエラーが表示されます。

JAM Console: Only 32 bit JAM Console: Only 32 bit JVM is supported. The shared lib
might not be loaded on this platform
>>java.library.path: /scratch/skbalakr/Oracle/Middleware/oms11g/lib
JAM Console: loadNative Exception loading [/tmp/libJamConsole.so.1]
/tmp/libJamConsole.so.1: ld.so.1: java: fatal: 
/tmp/libJamConsole.so.1: wrong ELF class: ELFCLASS32 (Possible cause: architecture
word width mismatch)
java.lang.UnsatisfiedLinkError: /tmp/libJamConsole.so.1: ld.so.1: java: fatal:
/tmp/libJamConsole.so.1: wrong ELF class: 
ELFCLASS32 (Possible cause: architecture word width mismatch)
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(ClassLoader? .java:1778)
at java.lang.ClassLoader.loadLibrary(ClassLoader? .java:1674)
at java.lang.Runtime.load0(Runtime.java:770)
at java.lang.System.load(System.java:1003)
at oracle.sysman.e2e.model.ad4j.remote.Jam.init(Jam.java:597)
at
oracle.sysman.e2e.model.ad4j.remote.servlet.AD4JManagerServlet.init(AD4JManagerSe
rvlet? .java:38)

この問題を解決するには、JAVA_VM変数の値を次のように変更します。

  1. <DOMAIN_HOME>/bin/startWeblogic.shファイルを開きます。

  2. JAVA_VM環境変数の値を-d32に変更します。

  3. jammanager.earファイルを再度実行すると、JVM Diagnosticsマネージャがデプロイされます。

6.4 複数のJVM Diagnosticsマネージャのデプロイによるスケール拡大

複数のJVM Diagnosticsマネージャをデプロイし、これらのマネージャに対して1つ以上のエージェントを接続できるようになりました。新規のJVM Diagnosticsマネージャは、UNIXではDeployAD4JManager.shスクリプト、WindowsではDeployAD4Manager.cmdを実行すると追加できます。DeployAD4JManager.shスクリプトを実行すると、6.3.1項「DeployAD4Jmanager.shスクリプトの実行」で説明されている手順1から3が実行されます。管理対象サーバーのSSLリスニング・ポートを入力すると、次のプロンプトが表示されます。

Enter an available port at which jammanager should listen [JamConsPort]:[3600]

JVM Diagnosticsマネージャのリスニング・ポート番号を指定します。これはデフォルトでは3600ですが、変更できます。ポート番号を入力したら、6.3.1項「DeployAD4Jmanager.shスクリプトの実行」で説明されている残りの手順に従って、JVM Diagnosticsマネージャをデプロイします。デプロイした後は、「設定」 > 「JVMとマネージャ」をクリックするとステータスをチェックできます。図6-3「「Registered Managers」ページ」が表示されます。

図6-3 「Registered Managers」ページ

「Registered Managers」ページ

このページでは、すべてのJVM Diagnosticsマネージャおよびその現在のステータスのリストを参照できます。各マネージャに接続されたJVMのリストも表示できます。各マネージャの監視ステータスを表示するには、「設定」 > 「監視中」をクリックします。図6-4「監視ページ」が表示されます。

図6-4 監視ページ

監視ページ

アクティブなマネージャのリストがその監視ステータスとともに表示されます。すべてのマネージャのステータスが同じ(オンまたはオフ)である必要があります。

6.5 JVM Diagnosticsエージェントのデプロイ

JVM Diagnosticsエージェントは手動で、または自動デプロイメント・プロシージャを使用してデプロイできます。

6.5.1 自動デプロイメント・プロシージャ

JVM Diagnosticsエージェントをデプロイするには、次の手順を実行します。

  1. 「ミドルウェア」ページで「WebLogicドメイン」ターゲットを選択します。

  2. 図6-5「「エージェントのデプロイ」選択ページに示されているように、ドロップダウン・リストで「JVM診断」オプションを選択し、「エージェントのデプロイ」をクリックします。

    図6-5 「エージェントのデプロイ」選択ページ

    「エージェントのデプロイ」選択ページ
  3. 次の画面が表示されます。

    図6-6 「エージェントのデプロイ」ページ

    「エージェントのデプロイ」ページ
  4. 管理サーバーのユーザー名およびパスワードを入力します。

  5. 「デプロイ」チェックボックスの選択によってデプロイするエージェントを選択し、「AD4Jエージェントのデプロイ」をクリックしてそのエージェントをデプロイします。

6.5.2 手動デプロイメント・プロシージャ

JVM Diagnosticsエージェントを手動でデプロイするには、次の手順を実行します。

  1. 「設定」>「ダウンロード」>「Javaエージェント」ページに移動します。

  2. JVM Diagnosticsエージェントをダウンロードし、そのエージェントを手動でターゲットのJVMまたはアプリケーション・サーバーにデプロイします。

6.6 JVM Diagnosticsエージェントのデプロイ解除

JVM Diagnosticsエージェントをデプロイ解除するには、次の手順を実行します。

  1. JVM Diagnosticsエージェントをデプロイ解除するドメインのWebLogic管理コンソールにログインします。

  2. 「デプロイメント」ページに移動して、jamagent_の文字列が先頭にあるWARデプロイメントを検索します。

  3. 非アクティブ化するデプロイメントを停止します。これらのデプロイメントに対するJVM Diagnosticsエージェントは永続的に削除されます。

6.7 データベース・エージェントのデプロイ

データベース・エージェントをデプロイするには、次の手順を実行します。

  1. 「ミドルウェア」ページで「WebLogicドメイン」ターゲットを選択します。

  2. 図6-7「「設定」選択ページ」に示されているように、ドロップダウン・リストで「JVM診断」オプションを選択し、「設定」をクリックします。

    図6-7 「設定」選択ページ

    「設定」選択ページ
  3. 「設定」ページで「ダウンロード」タブをクリックします。図6-8「「ダウンロード」ページ」が表示されます。

    図6-8 「ダウンロード」ページ

    「ダウンロード」ページ
  4. 「すべてのプラットフォームのデータベース・エージェント」のダウンロード・リンクをクリックして、データベース・エージェントをダウンロードします。

  5. データベース・エージェントをダウンロードしたら、「設定」ページに戻って「データベース」をクリックします。

  6. Oracleデータベースを稼働しているOSユーザーと同様に、データベースが稼働しているマシンでデータベース・エージェントを実行します。


    注意:

    データベース・エージェントをAIXマシンで実行するには、次の作業が必要です。
    • rootユーザーとしてログインして、データベース・エージェントを実行します。

    • データベース・エージェントのsetuidビットが、rootユーザーとして実行するように設定されていることを確認します。


  7. 「データベース」ページで「新規データベースの登録」をクリックします。図6-9「「データベース情報の追加」ページ」が表示されます。

    図6-9 「データベース情報の追加」ページ

    「データベース情報の追加」ページ
  8. データベースの登録に必要な情報を指定します。

    • ここで指定するOSユーザーは、データベース・エージェントを実行しているOSユーザーと同じである必要があります。

    • OSユーザーには完全なデータベース権限と、SIDおよびパスのバイナリを含む適切な環境設定が必要です。

    • DBユーザーは、監視中のアプリケーションを実行しているユーザーと同じである必要があります。


      注意:

      異なるデータベース・ユーザーが複数のアプリケーションを実行している場合、単一のデータベース・エージェントに複数の登録が必要になる場合があります。

  9. データベース・エージェントの登録が終了すると、特定のJVMに対して監視中のアプリケーションと基礎となるデータベースの間の、階層をまたがるJVMコールの監視をJVM Diagnosticsマネージャが開始します。

6.8 JVM Diagnosticsヒープをロードするための特別リポジトリ・ユーザーの作成

JVM Diagnosticsヒープをリポジトリにロードできる、Enterprise Managerの特別リポジトリ・ユーザーを作成するには、次の手順を実行します。


注意:

この手順はオプションであり、loadheapスクリプトを使用してヒープをロードできる権限の低いユーザーの作成に使用できます。

  1. コマンド・プロンプトからcreate_jvm_diagnostic_db_user.shスクリプトを実行します。

    $ ./create_jvm_diagnostic_db_user.sh
    
  2. ユーザー作成の続行を求めるメッセージが表示されます。[Y]を入力して続行します。次のプロンプトが表示されます。

    Enter Database Host Machine Name or IP address:[localhost]:
    

    データベースがインストールされているマシンのホスト名またはIPアドレスを入力します。

    Enter Database Port on "localhost":[1521]
    

    データベースのポート番号を25062と入力します。

    Enter ORACLE_SID for database on "localhost":[s0222]
    
    
    

    データベースのOracleシステム識別子を入力します。

    Enter database admin user name:[SYSTEM]
    

    データベース管理ユーザーの名前を入力します。

    Enter "SYSTEM" user password:
    

    データベース管理者のパスワードを入力します。

    Enter JVM Diagnostics database username:[JVMDIAG] 
    

    作成中のJVM Diagnostics管理者のユーザー名を入力します。

    Enter "JVMDIAG" user password: 
    

    JVM Diagnostics管理者のパスワードを入力します。パスワードの再入力を求められます。パスワードを再入力すると、次のように表示されます。

    Creating Database user "JVMDIAG" ....
    Database user "JVMDIAG" created
    Public synonyms would be created for following database objects:
    Tables
    1) JAM_HEAPREL
    2) JAM_HEAPOBJ
    3) JAM_HEAPUSAGE
    4) JAM_HEAPROOTS
    5) JAM_HEAPROOTREL
    6) JAM_HEAPOBJSUM
    7) JAM_HEAPSNAP
    
  3. 設定を続行するように求められます。[Enter]を押して続行します。次の出力が表示されます。

    Required privileges granted
    JVM Diagnostics Database User "JVMDIAG" created
    Now onwards, to load heap, use "JVMDIAG" user