5.7.2.1. Windows 下 Tomcat JMX 配置
- 按照下面方法编辑
bin/setenv.bat
:
set CATALINA_OPTS=%CATALINA_OPTS% ^
-Dcom.sun.management.jmxremote ^
-Djava.rmi.server.hostname=192.168.10.10 ^
-Dcom.sun.management.jmxremote.ssl=false ^
-Dcom.sun.management.jmxremote.port=7777 ^
-Dcom.sun.management.jmxremote.authenticate=true ^
-Dcom.sun.management.jmxremote.password.file=../conf/jmxremote.password ^
-Dcom.sun.management.jmxremote.access.file=../conf/jmxremote.access
这里,java.rmi.server.hostname
参数需要包含服务运行的机器的实际 IP 地址或者 DNS 名称;com.sun.management.jmxremote.port
用来设置 JMX 工具连接的端口号。
- 编辑
conf/jmxremote.access
文件,需要包含连接 JMX 的用户名以及他们的访问级别,示例:
admin readwrite
- 编辑
conf/jmxremote.password
文件,需要包含 JMX 用户的密码,示例:
admin admin
- 对于运行 Tomcat 服务的用户,他们应当只有密码文件的只读权限。可以通过以下方式配置权限:
打开命令行窗口,切换到 conf 目录
执行命令:
cacls jmxremote.password /P "domain_name\user_name":R
这里 domain_name\user_name
是用户所在的域和用户名称。
- 这个命令执行之后,这个文件在 Explorer 会显示锁住状态(有个锁的图标)。
- 如果 Tomcat 是按照 Windows 服务的方式安装的,那么服务需要以具有能访问 jmxremote.password 权限的用户身份启动。需要注意的是,这种情况下会忽略
bin/setenv.bat
文件,相应的 JVM 启动参数应该通过配置 Tomcat 服务的应用程序来设置。