啥也没写
分类: 架构设计与优化
2013-03-22 14:32:30
在jdk1.6.0_12\jre\lib\management目录中找到management.properties文件(如果没有可以创建一
个)如果目录中有这个文件一般情况下里面都是帮助文档,英文好的直接看里面说明。可以掠过我的文章。英文不好的,按部就班的跟我来。
1、删除所有内容留下两句话:
com.sun.management.snmp.interface=0.0.0.0
com.sun.management.snmp.acl.file=jdk1.6.0_12/jre/lib/management/snmp.acl
这两行的意思是,允许jvm的snmp agent监听所有网卡,并且指定acl文件的位置。
2、按照prperties文件指定的位置,新建一个snmp.acl文件。
内容如下:
#The communities public and private are allowed access from the local host.
acl = {
{
communities = public, private
access = read-only
managers = cactihostip
}
}
# Traps are sent to localhost only
trap = {
{
trap-community = public
hosts = cactihostip
}
}
作用,是对获取snmp信息的机器IP进行限制。只有managers一行指定的IP才能够获取snmp信息
3、启动JVM时候加上-Dcom.sun.management.snmp.port=1161这个参数。指定jvm的snmp agent工作在1161端口上。(当然端口号可以根据自己的情况修改,不要端口冲突哦)
4、修改management.properties和snmp.acl两个文件的权限,都修改成600,并将文件的属主修改成运行jvm的用户。(NTFS盘的话,需要把这两个文件只读,并把其他权限去除,否则会无法访问。)
这时,再启动jvm,并且用netstat查看,如果正常的话,就会发现已经有程序监听在1161端口上。
这个方法WINDOWS和LINUX通用,注意路径即可。
附上JVM信息