windows利用jconsole远程监控linux的tomcat

1、配置tomcat

  ①  编辑tomcat的catelina.sh文件,进入tomcat安装目录,使用命令:sudo vim bin/catalina.sh,如果是普通用户启动的,则修改damen.sh文件:sudo vim bin/daemon.sh

  ②  在catelina.sh文件中的"# ----- Execute The Requested Command -----------------------------------------" 行之前添加配置,内容如下:

  CATALINA_OPTS="$CATALINA_OPTS  \
-Djava.rmi.server.hostname=换成真实的ip(外网) \
-Dcom.sun.management.jmxremote \
-Dcom.sun.management.jmxremote.port=未用端口号 \
-Dcom.sun.management.jmxremote.rmi.port=和前面的那个端口号一样 \
-Dcom.sun.management.jmxremote.ssl=false \
-Dcom.sun.management.jmxremote.authenticate=true \
-Dcom.sun.management.jmxremote.pwd.file=pwd文件目录(选填)"

  说明:

    (1)  -Dcom.sun.management.jmxremote.pwd.file可以直接去掉,没有该属性时,默认为: $JAVA_HOME/jre/lib/management/jmxremote.password文件

    (2)  -Dcom.sun.management.jmxremote.authenticate表示是否需要账号密码登录,为false时,不需要账号密码即可连接

    

  添加后的效果如图:

windows利用jconsole远程监控linux的tomcat

2、配置jdk

  ①  创建访问账号文件

 cd $JAVA_HOME/jre/lib/management   #进入配置目录
sudo mv jmxremote.password.template jmxremote.password # 创建密码文件
sudo chmod 777 jmxremote.access # 不是必须777权限,主要是为了让tomcat执行用户对该文件有读取权限
sudo chmod 600 jmxremote.password # 权限设置为600,其余权限不支持,且tomcat执行用户需要有该文件的读取权限
sudo vi jmxremote.password # 修改访问账号密码

  ②  创建访问账号密码

  将jmxremote.password文件中的最后2行前面的#去掉即可,效果如下:

  windows利用jconsole远程监控linux的tomcat

  其中monitorRole为只拥有只读权限的角色,controlRole有更高权限:读写等等。前面一个参数名为账号,后面一个参数为密码,密码自行进行修改。

  说明:

    • 正式环境最好将密码设置的复杂一些
    • 如果想要设置用户的权限,需要在jmxremote.access中设置
                   

3、配置防火墙

  ①  修改防火墙配置, 输入命令: sudo vim /etc/sysconfig/iptables

  ②  将刚才我们设置的端口号加入到防火墙

    -A INPUT -m state --state NEW -m tcp -p tcp --dport 12345 -j ACCEPT

    效果如下:

    windows利用jconsole远程监控linux的tomcat

  ③  重启防火墙:  sudo service iptables restart

4、配置hosts

  ①  输入命令hostname查看服务器的hostname

    windows利用jconsole远程监控linux的tomcat

  ②  将hostname加入到hosts文件中:sudo vim /etc/hosts

  ③  在hosts中加入ip(外网,和catelina.sh中设置的一致) hostname

5、重启tomcat

  至此,服务器端配置完成。

6、windows连接

  点击java安装目录下的/bin/jconsole.exe:

  windows利用jconsole远程监控linux的tomcat

  选择远程进程,输入hostname:port, 用户名和密码后,点击连接即可。

上一篇:Windows客户端的JProfiler远程监控Linux上的Tomcat


下一篇:转载:JProfiler远程监控LINUX上的Tomcat过程细讲