1.下载安装tomcat ,并配置好JDK环境变量
2.编辑catalina.sh
cd /usr/local/tomcat/apache-tomcat-8.5.9/bin
vi catalina.sh
添加内容如下:
CATALINA_OPTS=”$CATALINA_OPTS -Djava.rmi.server.hostname=192.168.5.105 -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=1090 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=true”
注意hostname是tomcat所在服务器IP,port是监控端口
3.编辑jmxremote.access和jmxremote.password
这两个文件是在JDK里面的,可以通过%JAVA_HOME%/jre/lib/management目录找到。
cd /usr/java/jdk1.8.0_05/jre/lib/management
里面有个jmxremote.password.template文件,将其重命名为jmxremote.password,这就是控制远程连接的用户名密码的。
cp jmxremote.password.template jmxremote.password
然后chmod对这两个文件赋权,chmod 777 文件名
chmod 777 jmxremote.password
chmod 777 jmxremote.password.template
最后vi jmxremote.password,修改下面两行,把注释#去掉:
monitorRole zaq
controlRole zaq123
monitorRole是查看角色,拥有只读权限,zaq是设置的密码。
controlRole是控制用户,拥有读写权限,zaq123是设置的密码。
此时重启tomcat会失败,因为jmxremote.password为只读文件,所以需要修改其权限为只读
chmod 400 jmxremote.password
4 jvisualvm连接linux 下的tomcat
重启tomcat
打开window 下的
C:\Program Files\Java\jdk1.7.0_09\bin\jvisualvm.exe
点击“添加远程主机”主机名为192.168.5.105
然后点击主机,添加JMX连接 输入端口号1090
然后再输入用户名controlRole,密码zaq123
或者 然后再输入用户名monitorRole,密码zaq
连接成功