JMX连接tomcat(二)Linux篇

JMX:Java Management Extension Java 管理工具扩展

本文主要说明使用jconsole工具连接Linux下的tomcat,步骤如下:

1、设置参数

    编辑tomcat安装目录下的bin目录下的catalina.sh 文件(vi catalina.sh 

    在行 touch "$CATALINA_OUT" 之上,添加参数行

    CATALINA_OPTS="$CATALINA_OPTS -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=8888 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Djava.rmi.server.hostname=192.168.19.23" 

    注意:

    参数行中的com.sun.management.jmxremote.port参数是tomcat JMX监听的端口,可以随意配置,但是不可已经被占用;java.rmi.server.hostname参数的IP地址为远程Linux服务器的IP地址(我一开始没加这个参数,用jconsole连不上tomcat)

2、启动tomcat

    执行tomcat安装目录下的bin目录下的startup.sh脚本(./startup.sh,启动tomcat,startup.sh脚本会调用catalina.sh 脚本

3、查看端口

    在Linux命令行终端执行netstat -an | grep 8888命令,看我们配置的JMX端口是否已经被占用

    如下表示已被占用,若无数据,说明未被占用,则说明配置失败

    [root@localhost bin]# netstat -an | grep 8888
    tcp        0      0 :::8888                     :::*                        LISTEN  

4、使用jconsole连接监控tomcat

   执行 %JAVA_HOME%\bin\jconsole.exe (JAVA_HOME为jdk的安装目录),在启动界面中选择远程进程 ,并在空格处输入  service:jmx:rmi:///jndi/rmi://192.168.19.23:8888/jmxrmi   (ip和端口都是上面配置的)

5、不用输入用户名和口令,直接点击连接进入即可

   连入tomcat后可查看内存和线程数,本例主要查看MBean页签,查看tomcat在MBeanServer中注册的实例

JMX连接tomcat(二)Linux篇_第1张图片




上面的配置方式为不鉴权的配置方式,步骤5中不用输入用户名和口令,直接点击连接进入即可,下面说一下使用鉴权的方式的配置

修正后的步骤1、设置参数  

    编辑tomcat安装目录下的bin目录下的catalina.sh 文件(vi catalina.sh )

    在行 touch "$CATALINA_OUT" 之上,添加参数行

    CATALINA_OPTS="$CATALINA_OPTS -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=8888 -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 -Djava.rmi.server.hostname=192.168.19.23"


    可以与不鉴权的步骤1的参数行比较,参数修改如下:

    将参数Dcom.sun.management.jmxremote.authenticate设置为true

    增加参数Dcom.sun.management.jmxremote.access.file(鉴权用户名及权限配置文件)

    增加参数Dcom.sun.management.jmxremote.password.file(鉴权用户的密码配置文件)

    配置中增加了两个配置文件,因此需要在tomcat安装目录的conf目录下增加两个文件,如下:

    conf/jmxremote.access

monitorRole readonly
controlRole readwrite
      monitoRole和controlRole是用户名,不可更改      


    conf/jmxremote.password

monitorRole pwd1
controlRole pwd2
    monitoRole和controlRole是用户名,和上面的文件对应;pwd1和pwd2是密码,密码可以修改

          增加完这两个文件后,需要修改这两个文件的权限   chmod 600 jmxremote.*  

                               (若权限为777,启动tomcat会报错)

步骤2、步骤3、步骤4均同上不变


修正后的步骤5、输入用户名密码即可登录

                            JMX连接tomcat(二)Linux篇_第2张图片

登录后和上面是一样的

你可能感兴趣的:(tomcat,java,web)