您现在的位置是:首页 >  云笔记 >  开发笔记 >  文章详情

第1.2节、JAVA VisualVM远程连接使用入门

豆豆   2020-01-22 20:16:54   804人已围观


      JAVA VisualVM 是Netbeans的profile子项目,已在JDK6.0 update 7 中自带,VisualVM是JDK自带的一款全能型性能监控和故障分析工具,包括对CPU使用、JVM堆内存消耗、线程、类加载的实时监控,内存dump文件分析,垃圾回收运行情况的可视化分析等,对故障排查和性能调优很有帮助。在windows中安装JDK后,VisualVM位于JDK_HOME/bin目录下面,有一个jvisualvm.exe文件,双击打开,启动起来后和jconsole 一样同样可以选择本地和远程,如果需要监控远程同样需要配置相关参数。
       主界面如下:

启动界面.png

       这里我主要讲怎么链接远程Linux服务器的配置方法,(测试环境为CentOS 6.5,JDK7,Tomcat7)。鼠标选中:远程》右键》添加远程主机(H)》出现界面如下:

       远程右键添加主机.png

        这里的主机名填写主机IP地址,显示名称可以修改。

       VisualVM连接远程服务器有两种方式:JMXjstatd,两种方式都不能完美支持所有功能,例如JMX不支持VisualGC,jstatd不支持CPU监控,实际使用可同时配置上并按需选用。

远程JMX菜单.png

         由于本机监控无需配置所以本文先介绍JMX的远程连接方式,下篇文章再介绍jstatd的方式。我的步骤如下:

JMX配置方式介绍

    第一、配置JMX前检查。

我们需要先检查linux的hostname匹配的IP,执行
hostname -i
查看ip是否为自己的外网IP(如果你仅仅是内网,是内网的IP,但不能是127.0.0.1或者localhost),如果现实的IP和你要使用的外网IP不一致,则需要修改hosts文件,例如:我要使用222.17.110.110 ,主机名是admin,则使用

vi /etc/hosts
添加一行
222.17.110.110   admin 

添加完成后保存,再执行一次hostname -i 看IP是否变成你配置的IP,如果生效了则可以继续。

第二、设置JMX连接的用户名和密码

          这个主要需要修改远程机器JDK配置文件,我这里远程机器是linux:

         a.进入JAVA_HOME\jre\lib\management\目录

         b.拷贝jmxremote.password.template这个文件到当前目录, 并改名为jmxremote.password

jre路径.png

         c.打开jmxremote.password文件,去掉 # monitorRole  QED 和 # controlRole  R&D 这两行前面的注释符号,如果vi修改过程中报错:E45: 'readonly' option is set (add ! to override)强制保存即可。

去掉password上的注释.png

第三、被监控程序的配置

          修改远程机器上需要被监控的程序的配置文件,我这里是监控Tomcat容器内部署的应用

         a.进入TOMCAT_HOME\bin目录

         b.打开catalina.sh文件,加入如下信息:

                        JAVA_OPTS="$JAVA_OPTS -Djava.rmi.server.hostname=192.168.0.237

                                                     -Dcom.sun.management.jmxremote=true

                                                     -Dcom.sun.management.jmxremote.port=18999

                                                     -Dcom.sun.management.jmxremote.ssl=false 

                                                     -Dcom.sun.management.jmxremote.authenticate=false"


         c.重启Tomcat服务.


第四、客户端VisualVM配置

          客户端VisualVM配置 (我客户端用的是Winserver2008).

           a.直接反键点击Remote,选择Add Remote Host...

           b.在弹出的界面中输入远程机器的IP地址(192.168.0.237),这个IP地址会加入到Remote节点下.

           c.反键点击这个IP地址,选择Add JMX Connection, 在弹出的界面中输入刚配置的端口号(18999), 这个连接会加入到该IP节点下.

           d.反键点击这个连接,选择Open.

第五、查看监控


     



分享到:

编辑发布时间:2020-01-22 20:16:54