Einführung
In diesem Dokument wird beschrieben, wie Sie Java Virtual Machine (JVM)-Flags zu JAVA_OPTS im CloudCenter Manager (CCM) hinzufügen.
Voraussetzungen
Anforderungen
Cisco empfiehlt, über Kenntnisse in folgenden Bereichen zu verfügen:
- Linux-Schnittstelle
- Umgebung virtueller Systeme
- CCM-Komponente
Verwendete Komponenten
Die Informationen in diesem Dokument basieren auf den folgenden Softwareversionen:
- CloudCenter Version 4.x
- CCM-Einheit
Hintergrundinformationen
Manchmal reagiert der TOMCAT-Prozess nicht mehr und hört auf ordnungsgemäß zu funktionieren, aber es gibt keine Informationen, die den Grund dafür angeben, warum die TOMCAT nicht reagierte.
Problem
Benutzer können sich nicht beim CloudCenter anmelden, und Benutzer, die beim CloudCenter angemeldet sind, sehen die CCM-Benutzeroberfläche als nicht reaktionsfähig. Dieses Problem kann ausgelöst werden, weil der TOMCAT-Dienst nicht ausgeführt wird und nicht mehr funktioniert. Dann werden in den CCM-Standardprotokollen weder Details noch der Grund angezeigt, warum der TOMCAT-Dienst nicht mehr funktioniert.
Lösung
Um zusätzliche Informationen zu erfassen, bevor der TOMCAT-Dienst beendet wird, müssen der JAVA_OPTS, die sich im /usr/local/tomcat/bin/setenv.sh befindet, JVM-Flags hinzugefügt werden. Mit diesem Parameter können Sie den Heap Dumb des JAVA-Prozesses und die Garbage Collection-Statistiken des JAVA-Prozesses erfassen. Wenn der TOMCAT-Prozess dann nicht mehr reagiert, generiert er /usr/local/tomcat/logs/ccm.bin und /usr/local/tomcat/logs/ccm-gc.log.
Schritt 1: Fügen Sie diese Parameter unter /usr/local/tomcat/bin/setenv.sh hinzu.
-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/usr/local/tomcat/logs/ccm.bin -verbose:gc -XX:+PrintGCDetails
-XX:+PrintGCDateStamps -Xloggc:/usr/local/tomcat/logs/ccm-gc.log
Schritt 2: Navigieren Sie zu 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
Schritt 3: Starten Sie den CCM-TOMCAT-Prozess neu.
/etc/init.d/tomcat restart
Schritt 4: Führen Sie nach dem Neustart den Befehl ps -ef aus | grep tomcat, um zu bestätigen, dass der TOMCAT-Prozess die neuen Parameter verwendet, die dem /usr/local/tomcat/bin/setenv.sh hinzugefügt wurden.
[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
Diese neuen Parameter helfen Ihnen, zusätzliche Dateien zu erstellen, die gesammelt werden können, sobald der TOMCAT-Prozess wieder nicht mehr reagiert:
- Heap dump of the JAVA process - /usr/local/tomcat/logs/ccm.bin
- Garbage Collection-Statistiken des JAVA-Prozesses: /usr/local/tomcat/logs/ccm-gc.log