Jvisualvm監控遠程linux下Tomcat
1.編輯tomcat/bin/catalina.sh
加入下面這段代碼,中間無換行:
CATALINA_OPTS="$CATALINA_OPTS -Djava.rmi.server.hostname=192.168.1.11 -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=12345 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=true"
可以用/string命令搜索Execute,加入到Execute The Requested Command這段注釋上面。
注意hostname是tomcat所在服務器IP,port是監控端口。
2.編輯jmxremote.access和jmxremote.password
這兩個文件是在JDK里面的,可以通過%JAVA_HOME%/jre/lib/management目錄找到。
里面有個jmxremote.password.template文件,將其重命名為jmxremote.password,這就是控制遠程連接的用戶名密碼的。
然后chmod對這兩個文件賦權,chmod 777 文件名
最后vi jmxremote.password,修改下面兩行,把注釋#去掉:
# monitorRole XXXXXX
# controlRole XXXXXX
monitorRole是查看角色,擁有只讀權限,XXXXXX是設置的密碼。
controlRole是控制用戶,擁有讀寫權限,XXXXXX是設置的密碼。
最后如果開啟了防火牆,要將端口加入防火牆信任列表
在/etc/sysconfig/iptables中加入如下一行
-A RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 12345 -j ACCEPT
也可以用iptables命令直接加上。
之后啟動tomcat,剛才設置的12345端口就處於偵聽狀態了。
在一台服務器上運行:
win+R,輸入jvisualvm運行,啟動監控界面:
1、遠程->添加遠程主機,輸入主機IP:192.168.1.11
2、主機右鍵->添加JMX連接,輸入端口號:12345
用戶名controlRole,密碼XXXXXX
連接成功!