网上文档没有太好用的,自己总结了一个,已测可用。


#修改JDK中JMX服务的配置文件,以获得相应的权限,查看JAVA_HOME位置

cat /etc/profile

#显示:export JAVA_HOME=/usr/local/jdk1.6.0_18


cd /usr/local/jdk1.6.0_18/jre/lib/management

#将jmxremote.password.template文件复制为jmxremote.password

cp jmxremote.password.template jmxremote.password


#调整jmxremote.access和jmxremote.password的权限为只读写

chmod 600 jmxremote.access jmxremote.password

vim jmxremote.password

#去掉monitorRole  QED和controlRole   R&D前的注释符#


vim /etc/profile

#在相关位置添加:

export CATALINA_OPTS="$CATALINA_OPTS -Djava.rmi.server.hostname=10.1.250.10 -Dcom.sun.management.jmxremote.port=15555 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false"


#这几个配置的说明如下:

#-Dcom.sun.management.jmxremote.port:这个是配置远程connection的端口号的,要确定这个端口没有被占用

#-Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false:这两个是固定配置,是JMX的远程服务权限的

#-Djava.rmi.server.hostname:这个是配置server的IP的,要使用server的IP最好在机器上先用hostname -i看一下IP是不是机器本身的IP,如果是127.0.0.1的话要改一下,否则远程的时候连不上,目前我们的server上我已经都改好了



#备注,为了优化,现在JAVA_OPTS="$JAVA_OPTS -Xms1024M  -Xmx1024M -XX:PermSize=512M -XX:MaxPermSize=512m"

#已经修改为:java -server -Xms6500m -Xmx12288m -Xss1024k -XX:PermSize=256M -XX:MaxPermSize=256M -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=70 -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -Xloggc:../logs/gc.log


vim /usr/local/jdk1.6.0_18/jre/lib/management/management.properties

#添加如下

-Dcom.sun.management.jmxremote.port=15555

-Djava.rmi.server.hostname=10.1.250.10 

-Dcom.sun.management.jmxremote.ssl=false

-Dcom.sun.management.jmxremote.authenticate=false

-Dcom.sun.management.jmxremote=true


vim /usr/local/tomcat_18080/bin/catalina.sh

#添加

JAVA_OPTS="$JAVA_OPTS -Xms1024M  -Xmx1024M -XX:PermSize=512M -XX:MaxPermSize=512m"

CATALINA_OPTS="$CATALINA_OPTS -Dcom.sun.management.jmxremote=true -Djava.rmi.server.hostname=10.1.250.10 -Dcom.sun.management.jmxremote.port=15555 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false"


vim /etc/hosts

#根据自己的IP和机器名添加host




----windows客户端-------


下载jdk,地址:http://www.baidu.com/link?url=70Ugb6nuRh9conazJRfSIq6E_1zfQAsLti0eGSRL5v-SLtK2FPn6QhKBPHQ8177T9YYhbQrU_0VeIWWIWwV3LRWk7-E3cdbeVkb4yNhV1w7

启动自带客户端\bin目录下的jvisualvm.exe


选择 文件 - 添加远程主机,输入IP,然后在高级设置里配置端口(注意这个端口要和server上的端口一致)


右击刚才配置的IP,选择添加JMX连接,再次输入端口,就可以监视到JVM资源了