简介
JMX 全称为 Java Management Extension 。开启JMX后能观察tomcat服务运行时出现的故障,以及监视内存、cpu等使用情况。
JMX配置
搭建好tomcat后,进入tomcat下的bin目录,修改catalina.sh文件
vim catalina.sh
无密码远程监视配置方式
搜索 Execute The Requested Command ,在下方添加以下内容(ip修改成自己的):
CATALINA_OPTS="$CATALINA_OPTS -Dcom.sun.management.jmxremote -Djava.rmi.server.hostname=10.1.1.52 -Dcom.sun.management.jmxremote.port=1099 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false"
配置选项详解
server.hostname:ip
jmxremote.port:开启jmx的端口
jmxremote.ssl:是否开启ssl(false/true)
jmxremote.authenticate:是否开启鉴权功能,账号密码远程监控(false/true)
jmxremote.password.file:密码文件路径
jmxremote.access.file:权限文件路径
有密码远程监视配置方式
需要开启鉴权功能(用户密码登录监视),修改成以下内容:
CATALINA_OPTS="$CATALINA_OPTS -Dcom.sun.management.jmxremote -Djava.rmi.server.hostname=10.1.1.52 -Dcom.sun.management.jmxremote.port=1099 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=true -Dcom.sun.management.jmxremote.password.file=../conf/jmxremote.password -Dcom.sun.management.jmxremote.access.file=../conf/jmxremote.access"
进入tomcat的conf目录
,创建jmx服务的密码文件与权限文件:
#创建文件
touch jmxremote.password jmxremote.access
#赋值权限
chmod 600 jmx*
jmxremote.password文件添加以下内容:
monitorRole QED
controlRole R&D
jmxremote.access文件添加以下内容:
monitorRole readonly
controlRole readwrite
验证JMX是否开启成功
进入tomcat的bin目录下,利用脚本重启tomcat,然后查看1099端口是否开放:
#重启tomcat
./shutdown.sh
./startup.sh
#查看端口状态
netstat -ant
利用工具进行监视
利用jdk自带工具jvisualvm.exe进行连接验证(工具目录:JAVA_HOME/bin),只要你windows机器上安装有JDK,都会有这个exe。
输入ip加端口:
如果有密码输入密码,勾选不要求SSL链接
:
双击打开就能监视主机了