VisualVM遠程監控JVM

系統環境:Ubuntu 13.04  64-bit

java版本:java version "1.7.0_25"

tomcat版本:tomcat7


首先在客戶端安裝jdk-7windows-x64.zip的安裝包,下載地址可以在官網下載,然後進入安裝目錄下的/bin 下面,可以看見

150749394.jpg

安裝好客戶端之後,開始配置服務端.


1.在服務器上配置jstatdsecurity policy文件

  jstatd是一個監控 JVM 從創建到銷燬過程中資源佔用情況並提供遠程監控接口的 RMI ( Remote Method Invocation ,遠程方法調用)服務器程序,它是一個 Daemon 程序,要保證遠程監控軟件連接到本地的話需要 jstatd 始終保持運行。  

  jstatd運行需要通過 -J-Djava.security.policy=*** 指定安全策略,因此我們需要在服務器上建立一個指定安全策略的文件 jstatd.all.policy,文件內容如下:

grant codebase "file:${java.home}/../lib/tools.jar" {
   permission java.security.AllPermission;
};


查看創建文件的內容:

# cat jstatd.java.policy

grant codebase "file:${java.home}/../lib/tools.jar" {

 permission java.security.AllPermission;

};


2.運行jstatd守護程序


 由於jstatd需要保持一直運行,所以建議使用 screen命令執行 jstatd程序,命令如下:

jstatd -J-Djava.security.policy=/root/jstatd.all.policy -J-Djava.rmi.server.logCalls=true(開啓日誌功能)


3.Tomcat中配置

 下面我們爲51 服務器的 tomcat 配置 jvm 啓動參數。 tomcatcatalina.sh中添加如下參數:


JAVA_OPTS=’-Dcom.sun.management.jmxremote.port=8888 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Djava.rmi.server.hostname=192.168.1.51  其他配置’

或者:

CATALINA_OPTS="$CATALINA_OPTS -Dcom.sun.management.jmxremote -Djava.rmi.server.hostname=192.168.1.51 -Dcom.sun.management.jmxremote.
port=8888 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false"

說明:

1.-Dcom.sun.management.jmxremote.port:這個是配置遠程connection的端口號的,要確定這個端口沒有被佔用

2.-Dcom.sun.management.jmxremote.ssl=false 指定了 JMX 是否啓用 ssl

3.-Dcom.sun.management.jmxremote.authenticate=false指定了JMX 是否啓用鑑權(需要用戶名,密碼鑑權)

  2,3兩個是固定配置,是 JMX的遠程服務權限的

4.-Djava.rmi.server.hostname:這個是配置serverIP

140721489.jpg

然後直接遠程連接ip地址就可以完成了。

在客戶端雙擊VisualVM,然後右擊“遠程”選項,選擇“添加遠程主機” 然後輸入服務器端的ip地址

150921632.jpg

添加完成之後就可以進入遠程主機的監控頁面了.如圖:

150952213.jpg


參考鏈接:http://ihuangweiwei.iteye.com/blog/1219302

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章