星期一, 11月 19, 2018

如何調整JBoss使用的JVM參數,使它開啟監控模式。

首先,至JBoss的執行目錄,也就是eap6.4/bin/ 找到 standalone.conf 檔案。
使用vim 開啟檔案,並找到以下設定碼:
if [ "x$JAVA_OPTS" = "x" ]; then
#JAVA_OPTS="-Xms1303m -Xmx1303m -XX:MaxPermSize=256m -Djava.net.preferIPv4Stack=true"
若是井號在開頭,表示這行是註解。

JAVA_OPTS="$JAVA_OPTS -Xms2048m -Xmx2048m -Xmn512m -XX:PermSize=1024m -XX:MaxPermSize=2048m -XX:+UseParallelGC -XX:+DisableExplicitGC -XX:ParallelGCThreads=8"
啟動ParallelGC以及設定ParallelGC所使用的CPU線程個數,因為伺服器上的CPU8線程,我們設定它為8

JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.port=1099"
這個地方是要設定使用JMX連線時是否需要使用遠端認證,以及是否使用ssl,開啟的連接埠為何。

JAVA_OPTS="$JAVA_OPTS -Djboss.modules.system.pkgs=$JBOSS_MODULES_SYSTEM_PKGS -Djava.awt.headless=true"
JAVA_OPTS="$JAVA_OPTS -Djava.util.logging.manager=org.jboss.logmanager.LogManager"
JAVA_OPTS="$JAVA_OPTS -Djboss.modules.policy-permissions=true"
JAVA_OPTS="$JAVA_OPTS -Djboss.modules.system.pkgs=org.jboss.byteman,org.jboss.logmanager"
JAVA_OPTS="$JAVA_OPTS -Xbootclasspath/p:/home/tachen/eap6.4/modules/system/layers/base/org/jboss/logmanager/main/jboss-logmanager-1.5.4.Final-redhat-1.jar"
其中有一個以p:開頭的,不要被嚇到了,以為它是用windows的目錄。它只是一個設定檔的寫法,並不會影響。
但要記得logmanager的正確位置。
else
echo "JAVA_OPTS already set in environment; overriding default settings with values: $JAVA_OPTS"
fi
設定完後,啟動JBoss

使用Jconsole,輸入ip以及連接埠之後,即可開始堅控JBoss Container使用的情形。




沒有留言: