概要
このドキュメントでは、CloudCenter Manager(CCM)のJAVA_OPTSにJava Virtual Machine(JVM)フラグを追加する方法について説明します。
前提条件
要件
次の項目に関する知識があることが推奨されます。
- Linux インターフェイス
- 仮想マシン環境
- CCMコンポーネント
使用するコンポーネント
このドキュメントの情報は、次のソフトウェアのバージョンに基づいています。
- CloudCenter バージョン 4.x
- CCMアプライアンス
背景説明
TOMCATプロセスが応答しなくなり、正常に機能しなくなることがありますが、TOMCATが応答しなかった理由を示す情報はありません。
問題
ユーザはCloudCenterにログインできず、CloudCenterにログインしているユーザは、CCMユーザインターフェイス(UI)が応答しないことがわかります。この問題は、TOMCATサービスが実行されず、動作が停止したために発生する可能性があります。その後、CCMのデフォルトログには、TOMCATサービスが停止して動作した理由についての詳細や理由は表示されません。
解決方法
TOMCATサービスの実行が停止する前に追加情報を収集するには、JVMフラグを/usr/local/tomcat/bin/setenv.shにあるJAVA_OPTSに追加する必要があります。これらのパラメータは、JAVAプロセスのヒープおよびJAVAプロセスのガベージコレクション統計情報を収集するのに役立します。次に、TOMCATプロセスが応答しなくなると、/usr/local/tomcat/logs/ccm.binと/usr/local/tomcat/logs/ccm-gc.logが生成されます。
ステップ1:これらのパラメータを/usr/local/tomcat/bin/setenv.shに追加します。
-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/usr/local/tomcat/logs/ccm.bin -verbose:gc -XX:+PrintGCDetails
-XX:+PrintGCDateStamps -Xloggc:/usr/local/tomcat/logs/ccm-gc.log
ステップ2:[CCM] > [/usr/local/tomcat/bin/setenv.sh]に移動します
[root@ccm bin]# cat /usr/local/tomcat/bin/setenv.sh
export LD_LIBRARY_PATH=/usr/local/apr/lib
export CATALINA_PID=$CATALINA_HOME/catalina.pid
export JPDA_ADDRESS=8000
export JAVA_OPTS="-Djava.awt.headless=true -Dfile.encoding=UTF-8 -server -Xms1024m -Xmx2048m -XX:NewSize=512m
-XX:MaxNewSize=512m -XX:PermSize=512m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError
-XX:HeapDumpPath=/usr/local/tomcat/logs/ccm.bin -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCDateStamps
-Xloggc:/usr/local/tomcat/logs/ccm-gc.log -Dhttp.proxyHost=rcdn-calo-proxy.cisco.com -Dhttp.proxyPort=3128
-Dhttp.nonProxyHosts=10.201.210.1"
export CLASSPATH=/usr/local/osmosix/etc
export CATALINA_OUT=/dev/null
ステップ3:CCM TOMCATプロセスを再起動します。
/etc/init.d/tomcat restart
ステップ4:再起動後、コマンドps -efを実行します | grep tomcatを使用して、TOMCATプロセスが/usr/local/tomcat/bin/setenv.shに追加された新しいパラメータを使用していることを確認します。
[root@ ccm ~]# ps -ef | grep tomcat
cliqrus+ 18683 1 99 16:46 ? 00:00:27 /usr/lib/jvm/java-8-sun/bin/java
-Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties
-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.awt.headless=true -Dfile.encoding=UTF-8
-server -Xms1024m -Xmx2048m -XX:NewSize=512m -XX:MaxNewSize=512m -XX:PermSize=512m -XX:MaxPermSize=512m
-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/usr/local/tomcat/logs/ccm.bin -verbose:gc -XX:+PrintGCDetails
-XX:+PrintGCDateStamps -Xloggc:/usr/local/tomcat/logs/ccm-gc.log -Dhttp.proxyHost=rcdn-calo-proxy.cisco.com
-Dhttp.proxyPort=3128 -Dhttp.nonProxyHosts=10.201.210.1 -Djava.endorsed.dirs=/usr/local/tomcat/endorsed
-classpath /usr/local/osmosix/etc:/usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
-Dcatalina.base=/usr/local/tomcat -Dcatalina.home=/usr/local/tomcat -Djava.io.tmpdir=/usr/local/tomcat/temp
org.apache.catalina.startup.Bootstrap start
root 18765 17947 0 16:47 pts/1 00:00:00 grep --color=auto tomcat
次の新しいパラメータを使用すると、TOMCATプロセスが再び応答しなくなったときに収集できる追加のファイルを作成できます。
- JAVAプロセスのヒープダンプ – /usr/local/tomcat/logs/ccm.bin
- JAVAプロセスのガベージコレクション統計 – /usr/local/tomcat/logs/ccm-gc.log