Windows负载机JVM 远程监控Linux服务器下tomcat

基本是跟着网上的操作进行的,除了遇到一个Local host name unknown的问题:

一、Linux服务器操作部分

服务器地址:10.64.111.68

首先配置JMX:

1.找到jdk目录

[root@C68 demo]# echo $JAVA_HOME

/root/demo/jdk1.8.0_60

2. cd 到/root/demo下的tomcat的bin目录下

[root@C68 bin]# vi catalina.sh

添加如下参数:

JAVA_OPTS='-Dcom.sun.management.jmxremote.port=9988 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Djava.rmi.server.hostname=10.64.111.67'

如图:

 

其中

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

 上面指定了 JMX 启动的代理端口;这个端口就是 windows中的JVM工具要连接的端口

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

上面指定了 JMX 是否启用ssl

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

上面指定了 JMX 是否启用鉴权(需要用户名,密码鉴权),启用的话,windows负载机JVM工具中就要进行设置,我这里不用鉴权

-Djava.rmi.server.hostname=10.64.111.67'

上面指定了主机名,ip是linux服务器的

3.重启tomcat

在tomcat的bin目录下,

[root@C68 bin]# ./shutdown.sh

Using CATALINA_BASE:   /root/demo/apache-tomcat-8.0.33

Using CATALINA_HOME:   /root/demo/apache-tomcat-8.0.33

Using CATALINA_TMPDIR: /root/demo/apache-tomcat-8.0.33/temp

Using JRE_HOME:        /root/demo/jdk1.8.0_60

Using CLASSPATH:       /root/demo/apache-tomcat-8.0.33/bin/bootstrap.jar:/root/demo/apache-tomcat-8.0.33/bin/tomcat-juli.jar

Error: Exception thrown by the agent : java.net.MalformedURLException: Local host name unknown: java.net.UnknownHostException: C68: C68: unknown error

[root@C68 etc]# hostname -i

hostname: Host name lookup failure

 遇到了这个找不到主机名的问题,

解决办法:

首先看一下主机名是什么

cat /etc/sysconfig/network

该文件中内容如下,如果没有的话,就自己vi写出来,然后重启机器。

我这里直接自己已经有了,但是我对这个hostname是有疑问的,因为并没有见过这个主机名,我的是C68,不知道这个主机名从哪里出来的,但是我也没管。

NETWORKING=yes

HOSTNAME=SSCVL0263

然后在hosts文件中,将主机名和ip在hosts文件中映射出来,如下,我还是写的C68,按理说应该写上边的那个SSCVL0263,奇怪的是我写C68也解决了问题,就这样吧:

 

再次重启tomcat

在tomcat的bin目录下,

.shutdown.sh

.startup.sh

二、Windows负载机部分

1.在Java-jdk-bin中双击JVisualVM,选中左边的Remote节点,右键点击Add Remote Host弹出对话框 填写远程的Tomcat的主机IP,点击OK

2.选中远程Tomcat主机IP这个节点,右键弹出菜单选择“Add JMX Connetcion..”在弹出的对话框的填写要连接的Tomcat所在的主机端口,端口是在catalina.sh设置的端口9988,点击OK。

遇到的问题是:Cannot connect to ,using service:jmx:rmi:///jndi/rmi:// /jmxrmi

 

解决方案,就是因为上面的找不到主机名的问题,上面已经成功的解决。

3.在左侧树节点添加了JMX节点,双击这个节点或者右键弹出菜单,点击“Open”可以远程监控Tomcat的使用情况了。

 

posted @ 2017-09-05 10:13  Elsa-软件测试工程师  阅读(313)  评论(0编辑  收藏  举报