Solaris における実行時サーバー・メモリー不足エラーの除去 (非推奨)
Solaris オペレーティング・システム (非推奨) で IBM® Business Monitor サーバーを始動している途中で、メモリー不足エラー (java.lang.OutOfMemoryError: PermGen space) が報告され、サーバーが正常に始動されません。 MaxPermSize Java 仮想マシン (JVM) パラメーターの値を更新する必要があります。
MaxPermSize 値が不十分だと、
次のエラーが SystemOut.log または First Failure Data Capture (FFDC) ログに記録されることがあります。
- java.lang.OutOfMemoryError: PermGen space
サーバーを始動し、モデルをデプロイし、その他の処理 (イベントの送受信など) を実行するための十分なメモリーを
確保するには、サーバー・スクリプトを更新して、MaxPermSize 値を十分に確保しなければならないことがあります。
テストでは、IBM Business Monitor サーバーが正常に始動するための十分な値は
次のとおりであることが示されました。
- スタンドアロン・サーバー実行時: 384M
- デプロイメント・マネージャー・サーバー実行時: 256M
- フェデレーテッド・サーバー実行時 (ND-1 クラスター・トポロジーの下): 384M
プロシージャー
シチュエーションに応じて、以下のいずれかを行ってください。
- 作成されたプロファイルの server.xml ファイルにある MaxPermSize 値を増やす場合は、
以下の手順を実行します。
- profile_root/profile_name/config/cells/cell_name/nodes/node_name/servers/server_name/server.xml にアクセスします。
- このファイルを開いて、genericJvmArguments を探します。 ファイルの終わりに向かって スクロールダウンして、jvmEntries 属性のところで genericJvmArguments プロパティーを見つけます。
- genericJvmArguments パラメーターの最後の値として -XX:MaxPermSize=384m を追加します。
例:
<jvmEntries xmi:id="...genericJvmArguments="${IBMSCMX} ${IBMGCPOLICY_GENCON} -XX:MaxPermSize=384m">
- サーバーを正常に始動できるが、後からサーバーがメモリー不足になる場合は、
管理コンソールを使用して MaxPermSize を増やします。
- 管理コンソールにログインします。
- をクリックします。
- 「サーバー・インフラストラクチャー」の下でをクリックします。
- 「汎用 JVM 引数 (Generic JVM arguments)」フィールドで MaxPermSize 値を -XX:MaxPermSize=numeric value に変更します (numeric value は最大ヒープ・サイズに対して入力された値の 4 分の 1 です)。例えば、最大ヒープ・サイズが 3000 M の場合は、MaxPermSize を 750 M に設定します。
最大ヒープ・サイズが 2048 M 未満の場合は、MaxPermSize を 256 MB に設定します。
重要: 「汎用 JVM 引数 (Generic JVM arguments)」フィールドに MaxPermSize が 存在しない場合は追加してください。 ただし、フィールド内の既存の情報は置き換えないでください。
- 「OK」をクリックして、変更を保存します。
- 「保存」をクリックして、変更内容をマスター構成に保存します。
- 管理コンソールからログアウトします。
- サーバーを再始動します。