在Lunix下配置使用Jmx监控apache-tomcat性能

首先我想说,在tomcat上配置JMX真是一波三折,痛苦啊,根据了官方的文档,还有各种大大的文章,我这个小白配置以后仍然无法使用链接。

百思不得其解,后来在多次谷歌后看了许多文章后才发现我这里的关键问题,hostname! 现在我将整个过程记录下来,

首先上官方的方法:http://tomcat.apache.org/tomcat-7.0-doc/config/listeners.html


以下是我的添加方法:

1.首先修改tomcat/bin目录下的 catalnna.sh,

找到

# ----- Execute The Requested Command -----------------------------------------

在其前面添加如下内容:

JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.password.file=/root/apache-tomcat-7.0.47/conf/jmxremote.password -Dcom.sun.management.jmxremote.access.file=/root/apache-tomcat-7.0.47/conf/jmxremote.access -Dcom.sun.management.jmxremote.ssl=false"

注意修改其中的文件路径要指向正确的目录

2.cd至tomcat/conf目下,修改jmxremote.access、jmxremote.password文件,如果没有新建一下

在jmxremote.access文件内容末尾添加:

admin readwrite

在jmxremote.password文件内容末尾添加:

monitorRole QED
controlRole R&D
admin 111111

说明:admin为账号可以自己设置 readwrite为此账号的权限 111111为登陆密码

另外需要注意文件的授权,我用的时候是400

3.同样在conf目录下,修改server.xml文件

增加以下内容:

<Listener className="org.apache.catalina.mbeans.JmxRemoteLifecycleListener" rmiRegistryPortPlatform="10001" rmiServerPortPlatform="10002" />

4.下载对应的jar包放置于tomcat/lib目录下

下载地址http://www.apache.org/dist/tomcat/ 找到需要的版本,一般均在对应版本的bin/extras/目录下

5.关键的来了,这个问题一直困扰我很久,因为这样的配置方法没有设置hostname所以不修改hosts文件与主机名就一直无法链接成功

可以先尝试修改hosts文件,在文件内容中增加:

XXX.xxx.xxx.xxx(本机的外网地址,就是访问这台机器的IP地址) 主机名

然后尝试使用java安装目录bin文件夹下的jconsole.exe尝试建立链接,如果行你就成功了,如果不行那么在执行下一步。

6.修改etc/sysconfig/network中的hostname后面的值,默认的值应该是localhost,修改为你需要的值

比如我是HOSTNAME=test11

然后保存,在根据第五步修改hosts内容,将外网地址与新该的主机名对应起来。

最后注意!!需要重启机器以后才能生效!

7.如果还是不行,请检查下防火墙吧。

 

 

posted @ 2014-04-21 18:23  KarasJiang  阅读(1220)  评论(0编辑  收藏  举报