4533 发表于 2015-12-24 09:19:59

zabbix使用JMX监控tomcat性能

测试环境:centos6.4 x64

一、zabbbix服务端配置

1、zabbix服务端安装时需要加上 --enable-java
2、zabbix服务端安装jdk
3、找到zabbix_java,修改以下内容:
   vi /usr/local/zabbix/zabbix_java_gateway/sbin/zabbix_java/settings.sh
   LISTEN_IP="0.0.0.0"
   LISTEN_PORT=10052
   START_POLLERS=5

4、在zabbix_server添加以下文件
   vi /usr/local/zabbix/etc/zabbix_server.conf
   JavaGateway=127.0.0.1
   JavaGatewayPort=10052
   StartJavaPollers=5

5、启动javagateway
   cd/usr/local/zabbix/zabbix_java_gateway/sbin/zabbix_java/
   ./startup.sh


二、Tomcat客户端配置
1. 在 tomcat 下载页面 Extras 类别中下载 JMX Remote jar 二进制包。放在 tomcat项目            的/lib 目录下面.
    #wget–http://mirror.bit.edu.cn/apache/tomcat/tomcat-6/v6.0.39/bin/extras/catalina-jmx-remote.jar
   # mv catalina-jmx-remote.jar到/tomcat项目/lib/目录下


2. 修改conf/server.xml文件,添加以下内容:(此步经测试,可以不写)
<Listener className="org.apache.catalina.mbeans.JmxRemoteLifecycleListener" rmiRegistryPortPlatform="12345" rmiServerPortPlatform="12346" />
    -----这里的Port要和zabbix服务器定义的监听jmx端口保持一致

3. 修改 tomcat/bin 目录下 catalina.sh
   找到# ----- Execute The Requested Command -----------------------------------------
   添加以下内容:
CATALINA_OPTS="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Djava.rmi.server.hostname=客户端ip地址"


4.启动tomcat

# cd /usr/local/tomcat/bin/
# ./startup.sh

5.下载cmdline-jmxclient-0.10.3.jar文件,测试是否能够取得数据
#wget http://repo.typesafe.com/typesafe/repo/cmdline-jmxclient/cmdline-jmxclient/0.10.3/cmdline-jmxclient-0.10.3.jar

6.测试 有数据则表示成功(cmdline-jmxclient-0.10.3.jar前要加此包的完整路径,否则提示找不到程序包)
    # java -jar /data/packages/cmdline-jmxclient-0.10.3.jar - localhost:12345 java.lang:type=Memory NonHeapMemoryUsage
    连接正确的话,输出内容如下(参考值):
    01/26/2014 11:55:55 +0800 org.archive.jmx.Client NonHeapMemoryUsage:
    committed: 52690944
    init: 24313856
    max: 136314880
    used: 52454776

三、ZABBIX模板配置
   zabbix自带的tomcat模板真心不好用,在网上找到一个大神分享的模板
   模板在附件,如不能下载请留邮箱地址。

1. 导入模版zbx_export_templates.xml

2. 导入成功后可以看到模板custometomcat


3.关联模板完成后可见:



4.以获取tomcat使用内存模板为例如下图


5.添加模板,设置jmxip地址及端口


6.完成成功后会显示JMX图标变绿,表示可用



7.出图如下:


页: [1]
查看完整版本: zabbix使用JMX监控tomcat性能