Sun GlassFish Enterprise Manager Performance Advisor 1.0 インストールおよびクイックスタートガイド

GlassFish Performance Advisor の基礎

GlassFish Enterprise Manager Performance Advisor は、Sun GlassFishTM Enterprise Server version 2.1 のパフォーマンスチューニング支援とパフォーマンス警告機能を提供します。

インストールおよびクイックスタートガイド』では、Performance Advisor の使用方法について、次の節で説明します。

GlassFish Enterprise Manager Performance Advisor の最新の更新は、『Sun GlassFish Enterprise Manager Performance Advisor 1.0 リリースノート』を参照してください。Sun GlassFish Enterprise Server のドキュメントセットも参照してください。

Performance Advisor のダウンロードとインストール

次のいずれかの製品をご契約いただいている Sun のお客様は、Performance Advisor をダウンロードできます。

    このコンポーネントをダウンロードしてインストールするには、次の手順に従います。

  1. SunSolve サイト http://sunsolve.sun.com/ にアクセスします。

  2. 「Accept」ボタンをクリックして、SunSolve のライセンス契約に同意します。

  3. 右側の列の「Login」リンクをクリックし、サポートのユーザー名とパスワードを入力します。

  4. 右側の列の「Patches and Updates」のリンクをクリックします。

  5. 「パッチ検索」フィールドに Performance Advisor のパッチ番号 140751–01 を入力し、「Find Patch」ボタンをクリックします。

  6. 「Download Patch」の横にある「HTTP」のリンクをクリックします。

    140751–01.zip というファイルがマシンにコピーされます。

  7. 140751–01.zip ファイルを解凍します。次に例を示します。


    unzip 140751–01.zip

    解凍した内容は、performance-advisor.jar というアーカイブファイルとその他のファイルで構成されます。

  8. performance-advisor.jar ファイルを as-install/lib ディレクトリに格納します。as-install は、Enterprise Server をインストールしたディレクトリです。


    注 –

    performance-advisor.jar ファイルの名前は変更しないでください。


  9. ドメインを再起動します。次の asadmin コマンドを使用できます。


    asadmin stop-domain domain1
    asadmin start-domain domain1

    asadmin stop-domain および asadmin start-domain コマンドの詳細は、『Sun GlassFish Enterprise Server 2.1 Reference Manual』を参照してください。

正常にインストールが完了したら、管理コンソール の左の区画に「Performance Advisor」ノードが表示されます。このノードには、「管理ルール」と「チューナー」の 2 つのサブノードがあります。

Performance Tuner の使用法

Tuner は、Enterprise Server の配備の必要性に適したサーバー設定を推奨します。推奨される設定は、サーバーの最適な設定に役立ちます。特定の要件がある場合は、より詳しい調整が必要です。Tuner は、Enterprise Server のリソースとスループットの要件に対して、統計分析を実行します。システムの動的な検査は行いません。

Tuner は、同種クラスタと異種クラスタの両方で使用できます。クラスタが同種であるかどうかは、オペレーティングシステム、ハードウェア、物理メモリー、およびコア (論理 CPU) の条件に基づきます。同種クラスタでは、クラスタのコンポーネントインスタンスを実行するすべてのマシンで、すべての条件が一致します。同種でないクラスタでは、これらの値が異なります。同種でないクラスタでは、低い値から始めて、より強力でリソースの多いハードウェアで実行する特定のコンポーネントインスタンスで、これらの値を増加していきます。

システムプロパティーは、クラスタ内にある各サーバーインスタンスの設定を変更します。Tuner は、いくつかのシステムプロパティーを設定します。システムプロパティーの詳細は、次のドキュメントを参照してください。


注 –

クラスタを調整する前に、Tuner が調整可能な設定の計算に使用する重要なデータを収集できるように、すべてのインスタンスが稼働中であることを確認してください。


    Tuner を使用するには、次の手順に従います。

  1. 管理コンソール の左の区画で、「チューナー」ノードを選択します。

  2. 要求された情報を入力します。必要な場合は、システム管理者に問い合わせてください。

    • 「調整する設定」 — ドロップダウンリストからサーバーまたはクラスタの名前を選択します。

    • 「コアの数」 — マシンごとの利用可能な論理 CPU (プロセッサスレッド) の数を指定します。デフォルトは 1 です。

      マシンの CPU の合計数を指定する必要はありません。実行する各 Enterprise Server インスタンスで使用に割り当てる数だけを指定します。

      Sun SPARC Enterprise T5440 (http://www.sun.com/servers/coolthreads/t5440/) では、論理 CPU (プロセッサスレッド) の数は psrinfo などのコマンドで返されます。Sun SPARC Enterprise T5440 は、最大 256 のプロセッサスレッドを使用できます。詳細は、ハードウェアベンダーのデータシートを参照してください。

    • 「使用可能な最大ヒープメモリー」 — Enterprise Server の JVM サーバーインスタンスで使用するヒープメモリーのサイズを指定します。デフォルトは 1024M バイトです。Tuner が最適でないと判断した場合、指定したヒープメモリーの値は適用されません。

    • 「データベースアクセスの割り当て時間」 — 割り当て時間を、「低」 (0 ~ 10%)、「中」 (10 ~ 20%)、または「高」 ( 20% 以上) のいずれかに指定します。デフォルトは「中」です。

      これは、調整中のインスタンスまたはクラスタに配備されたプライマリアプリケーションで消費したデータベース層の時間です。クラスタに複数のアプリケーションを配備している場合は、すべてのアプリケーションがデータベース層で消費した時間の合計になります。Web または EJB 要求ごとの消費時間も考慮してください。

    • 「ガベージコレクションの方針」 — 「最大ピークスループット (高 GC 停止時間)」または「低 GC 停止時間 (低ピークスループット)」のいずれかを指定します。デフォルトは、「最大ピークスループット」です。

      この方針は、JVM のガベージコレクションの実行方法を決定します。明らかに、ガベージコレクションは最小限の時間で実行するべきですが、必ずしもそれが可能であるとは限りません。Enterprise Server の JVM は、多数の短い GC 停止を実行するように設定したり、少数の比較的長い GC 停止を実行するように設定することができます。少数の GC 停止を実行する方針では、スループットは一般的に大きくなり、要求の 1 ~ 2% で遅延が感じられます。

    • 「セキュリティーマネージャーを無効にしますか ?」 - Java Platform セキュリティーマネージャーを無効にするかどうかを指定します。セキュリティーマネージャーを無効にすると、パフォーマンスが向上する場合がありますが、システムのセキュリティーが低下する可能性があります。デフォルトは「はい」です。

    • 「アクセスロガーを無効にしますか ?」 - アクセスログの記録を無効にするかどうかを指定します。アクセスログの記録を無効にすると、パフォーマンスが向上する場合があります。ただし、一部のシステム情報が削除されます。デフォルトは「はい」です。

    • 「Sun の CoolThreads (Niagara) サーバーで実行していますか ?」— サーバーインスタンスが CoolThreads TM テクノロジを備えた Sun サーバー上で動作している場合は、このボックスにチェックマークを付けます。デフォルトは「いいえ」です。詳細は、http://www.sun.com/servers/index.jsp?cat=SunCoolThreadsServers&tab=3 を参照してください。

  3. 「次へ」ボタンを選択します。

  4. 提案された変更内容を確認します。

  5. 一部の変更のみを適用する場合は、適用する変更の「現在の設定」、「提案された設定」、および「手動で適用」列のテキストを確認します。

    たとえば、変更により JVM オプションが追加または削除される場合は、「現在の設定」または「提案された設定」列に変更されるオプションが表示され、「手動で適用」列に次のテキストが表示されます。


    Go to the JVM Settings page for the configuration, select the JVM Options tab, 
    select the Add JVM Option button, and enter the JVM option. Or use one of these 
    commands: asadmin create-jvm-options or asadmin delete-jvm-options

    「手動で適用」列に表示される asadmin コマンドの詳細は、『Sun GlassFish Enterprise Server 2.1 Reference Manual』を参照してください。

  6. 次のいずれかのボタンを選択して、変更を確認するか取り消します。

    • すべての変更を受け入れる場合は、「確認」を選択します。

    • すべての変更を拒否する場合は、「取消し」を選択します。

  7. 手順 6 で「取消し」を選択した場合は、手順 5 で確認した変更を手動で適用します。

    たとえば、-Xmx512m オプションを削除するには、次の asadmin コマンドを使用します。ハイフンをバックスラッシュでエスケープし、オプションを引用符で囲む必要があります。


    asadmin delete-jvm-options "\-Xmx512m"
  8. 調整した設定を使用する各サーバーインスタンスまたはクラスタを再起動します。


注 –

クラスタにサーバーインスタンスを追加する場合は、クラスタの設定を再調整してください。


JavaMail リソースの設定

Enterprise Server で JavaMailTM リソースを設定して、管理ルールの通知に使用することができます。これは省略可能な手順です。JavaMail リソースを指定せずに、メールサーバーを指定することもできます。

    管理コンソール を使用するには、次の手順に従います。

  1. 左の区画で「リソース」ノードを開きます。

  2. 「JavaMail セッション」を選択します。

  3. 「新規」ボタンを選択します。

  4. 必要な情報を入力します。

    • 「JNDI 名」 — JavaMail リソースの一意の名前を指定します。

    • 「メールホスト」 — メールサーバーのホスト名を指定します。

    • 「デフォルトユーザー」 - メールサーバーの管理者のユーザー名を指定します。

    • 「デフォルトの返信用アドレス」 - 返信のデフォルトの送信先となる電子メールアドレスを指定します。

  5. メールサーバーを使用するターゲットのサーバーインスタンスまたはクラスタを指定します。ターゲットを指定するには、「利用可能なターゲット」リストでターゲットを選択し、「追加」ボタンを選択して「選択したターゲット」リストに移動します。

    JavaMail リソースには、少なくともリソースを使用する管理ルールと同じターゲットが必要です。

  6. 「了解」ボタンを選択します。

asadmin create-javamail-resource および asadmin create-resource-ref コマンドを使用することもできます。次に例を示します。


asadmin create-javamail-resource --mailhost localhost --mailuser admin 
--fromaddress admin\@company22\.com mail/MyMailSession
asadmin create-resource-ref --target Cluster1 mail/MyMailSession

asadmin create-javamail-resource および asadmin create-resource-ref コマンドの詳細は、『Sun GlassFish Enterprise Server 2.1 Reference Manual』を参照してください。

管理ルールの使用法

    管理ルールは、システムの使用状況に関する問題を警告します。この機能は、ログファイルおよび JDBC 接続プールの管理に役立ちます。管理ルールを設定する一般的な手順は、次のとおりです。

  1. 管理コンソール の左の区画で、「Management Rules」ノードを選択します。

  2. 設定するルールをテーブルから選択します。

  3. 「追加」ボタンを選択して、ルールの「編集」ページを表示します。

  4. 「電子メールによる通知」チェックボックスが表示される場合は、これにチェックマークを付けます。

    このボックスにチェックマークを付けなければ、警告はサーバーログにだけ記録されます。「ログローテーションマネージャー」と「JDBC プールマネージャー」を除くすべてのルールに、このチェックボックスが表示されます。

  5. 次の電子メール通知に関する情報を入力します。

    • 「宛先」 — 警告の受信者の電子メールアドレスを、コンマで区切って指定します。

    • 「Java メールリソースの使用」 - 使用している場合は、JavaMail リソースを指定します。JavaMail リソースの設定方法については、「JavaMail リソースの設定」を参照してください。

    • 「電子メールの送信者」 - JavaMail リソースを使用していない場合は、警告の送信者の電子メールアドレスを指定します。

    • 「メールホスト名」 — JavaMail リソースを使用していない場合は、同じメールサーバーホスト名を指定します。

    • 「ユーザー名」 - JavaMail リソースを使用していない場合は、警告の送信者のユーザー名を指定します。

    • 「送信者パスワード」 — JavaMail リソースを使用していない場合は、警告の送信者のパスワードまたはパスワードのエイリアスを指定します。

      パスワードのエイリアスを作成するには、asadmin create-password-alias コマンドを使用します。詳細は、『Sun GlassFish Enterprise Server 2.1 Reference Manual』を参照してください。

  6. ルールに必要な固有情報を指定します。

    各ルールで必要な固有情報については、次の節で簡単に説明します。

  7. ルールを適用するターゲットのサーバーインスタンスまたはクラスタを指定します。ターゲットを指定するには、「利用可能なターゲット」リストでターゲットを選択し、「追加」ボタンを選択して「選択したターゲット」リストに移動します。

    JavaMail リソースには、少なくともリソースを使用する管理ルールと同じターゲットが必要です。

  8. 「保存」ボタンを選択します。

  9. ターゲットの各サーバーインスタンスまたはクラスタを再起動します。

物理メモリーに関する警告

「物理メモリーに関する警告」ルールは、物理メモリーの空き領域の割合がユーザー定義のしきい値を下回ったときに警告を送信します。

「物理メモリーに関する警告」ルールには、次のルール固有の設定があります。

ルールを設定する一般的な手順については、「管理ルールの使用法」を参照してください。

メモリーリークに関する警告

「メモリーリークに関する警告」ルールは、メモリーリークの可能性が検出されたときに警告を送信します。検出は、ガベージコレクション (GC) 後のメモリー使用状況の傾向分析を通して実行されます。GC 後のメモリー使用状況がユーザー定義のしきい値を超えている場合、警告が送信されます。

「メモリーリークに関する警告」ルールには、次のルール固有の設定があります。

ルールを設定する一般的な手順については、「管理ルールの使用法」を参照してください。

CPU 使用量の傾向に関する警告

「CPU 使用量の傾向に関する警告」ルールは、CPU 使用状況の傾向分析がユーザー定義のしきい値を超える増加を示したときに、警告を送信します。

「CPU 使用量の傾向に関する警告」ルールには、次のルール固有の設定があります。

ルールを設定する一般的な手順については、「管理ルールの使用法」を参照してください。

スループットに関する警告

「スループットに関する警告」ルールは、仮想マシン (VM) の稼働時間 (時間平均による GC 経過時間) の割合が、ユーザー定義のしきい値を超えたときに警告を送信します。

「スループットに関する警告」ルールには、次のルール固有の設定があります。

ルールを設定する一般的な手順については、「管理ルールの使用法」を参照してください。

GC 停止時間に関する警告

「GC 停止時間に関する警告」ルールは、前回のガベージコレクション (GC) 停止時間が、ユーザー指定の最大 GC 停止時間に対してユーザーが定義した割合を超えたときに、警告を送信します。

「GC 停止時間に関する警告」ルールには、次のルール固有の設定があります。

ルールを設定する一般的な手順については、「管理ルールの使用法」を参照してください。

ログエントリに関する警告

「ログエントリに関する警告」ルールは、ユーザーが指定したロガーに対して、ユーザーが指定したログレベル以上でログファイルに新しいエントリが作成されたときに、警告を送信します。

「ログエントリに関する警告」には、次のルール固有の設定があります。

ルールを設定する一般的な手順については、「管理ルールの使用法」を参照してください。

ログローテーションマネージャー

「ログローテーションマネージャー」ルールは、ローテーションされたログファイルを移動または削除します。

「ログローテーションマネージャー」ルールには、次のルール固有の設定があります。

ルールを設定する一般的な手順については、「管理ルールの使用法」を参照してください。

JDBC プールマネージャー

「JDBC プールマネージャー」ルールは、JDBC 接続プールの最大プールサイズ (max-pool-size) と初期および最小プールサイズ (steady-pool-size) の値を調整します。これらの再計算は実行時にのみ発生し、再計算された絶対値はどこにも反映されません。本稼働環境では、再計算は初期および最小プールサイズではクライアント要求の数だけに基づき、最大プールサイズではサーバーインスタンスの追加または削除だけに基づきます。

「JDBC プールマネージャー」ルールには、次のルール固有の設定があります。


注 –

「* (「現在および将来の全 JDBC 接続プール数」に適用されます)」と各接続プールの両方を、同時に選択しないでください。「* (「現在および将来の全 JDBC 接続プール数」に適用されます)」の「最大接続数」設定は、各接続プールの「最大接続数」の設定を上書きします。



注 –

このルールのすべての「最大接続数」設定 (各プールの「デフォルト最大接続数」と「最大接続数」の設定を含む) は、JDBC 接続プールの最大プールサイズの設定を上書きします。


ルールを設定する一般的な手順については、「管理ルールの使用法」を参照してください。