1、在tomcat启动过程中,开启相应的参数配置 $Tomcat_home/bin/catalina.sh:
1
2
3
4
|
-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port= 9999 -Dcom.sun.management.jmxremote.ssl= false -Dcom.sun.management.jmxremote.authenticate= false |
#change by tester at 20151104 JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.port=9999 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false"
其中: com.sun.management.jmxremote.port 是jmx端口 这个很重要 在使用jconsole连接tomcat jmx时候使用。
进阶篇
配置jmx访问密码 1. 修改上文中的catalina脚本中的JAVA_OPT参数,将 -Dcom.sun.management.jmxremote.authenticate="false" 修改为: -Dcom.sun.management.jmxremote.authenticate="true" 2. 将$JRE/lib/management/jmxremote.password.template文件在同目录下复制一份,重命名为$JRE/lib /management/jmxremote.password,编辑jmxremote.password,添加允许访问的用户名及密码,比如添加用户 zxwh,密码为zxme,则在文件尾添加一行: zxwh zxme 注意用户密码不能包含空格,tab等字符 3. 编辑$JRE_HOME/lib/management/jmxremote.access文件,对刚才添加的用户赋予一定的权限: zxwh readonly (或者readwrite) 4. 确认jmxremote.password和jmxremote.access两个文件中的用户是相同的。注意如果jmxremote.access中没有对应用户的话,配置是无效的。 注:以上配置文件的位置都是可以更改的,具体配置方法在此不再赘述。 5. 由于jmxremote.password中的密码都是明文保存的,所以jmxremote.password、jmxremote.access文件的权限要注意,应该设置为只有owner才可读,当然这个用户也必须是启动tomcat的用户。
(chmod 600 jmxremote.access, chmod 600 jmxremote.password)
6. 启动jconsole进行连接,在用户名和口令处输入设定的用户和密码。 7. 使用密码认证方式进行连接,不但可以提高安全性,而且可以对用户的权限进行设置。如果不使用密码认证的方式,则无法对用户的权限进行限制。 配置使用ssl进行加密连接 1. 在服务器上使用keytool创建密钥对 keytool是java平台自带的一个密钥和证书管理工具,使用keytool创建密钥对: keytool -genkey -alias tomcat -keystore /somepath/tomcatKeyStore 按照提示输入相关信息(包括设定密码、姓、组织名等),这些信息是可以随便输入的,但从产品角度讲应该统一设定。输入的密码在今后操作中均需要使用。 2. 导出公钥 keytool -export -alias tomcat -keystore /somepath/tomcatKeyStore -file /somepath/jconsole.cert 3. 将公钥导入至需要运行jconsole的机器。 keytool –import –alias jconsole –keystore /somepath/jconsoleKeyStore -file /somepath/jconsole.cert 4. 修改tomcat的catalina脚本 将-Dcom.sun.management.jmxremote.ssl="false"修改为: -Dcom.sun.management.jmxremote.ssl="true",并在 JAVA_OPTS变量行添加: -Djavax.net.ssl.keyStore=/somepath/jconsoleKeyStore -Djavax.net.ssl.keyStorePassword=设定的密码 5. 使用如下参数启动jconsole : jconsole -J-Djavax.net.ssl.trustStore=/somepath/jconsoleKeyStore 6. 填入主机名、用户、口令连接服务器。
2、启动tomcat并使用jconsole来连接tomcat jmx接口
连接界面如下:
连接进去以后,在MBean一栏便是jmx接口。
关于jmx相关接口信息如下(主要包括java jmx接口和tomcat jmx接口两个部分)
tomcat Jmx配置 http://www.cnblogs.com/zhengah/p/4898444.html