zabbix 监控服务系列之--------使用JMX监控tomcat

我的环境是centOS6.5.64位、

首先,我的zabbix——server服务器端,之前已经安装了zabbix,所以环境省略。

接下来,开始安装需要用于监控tomcat的一些东西:

1、

rpm -ivh jdk-8u20-linux64-x.rpm or

tar xvf jdk-8u20-linux64-tar.gz

2、

vi /etc/profile

JAVA_HOME=/usr/java/jdk1.8.0_20

PATH=$PATH:$JAVA_HOME

CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

export JAVA_HOME

export PATH

export CLASSPATH

source /etc/profile

java -version

3、重新编译zabbix,所以,先备份之前配置文件。(zabbix_server.conf)

cd /root/zabbix-2.0.6

./configure ./configure --enable-java -prefix=/usr/local/zabbix  --enable-server --enable-agent --with-mysql --with-net-snmp --with-libcurl   --with-net-snmp --with-libcurl

4、找到zabbix_java

vi /usr/local/zabbix/zabbix_java/sbin/zabbix_java/settings.sh

LISTEN_IP="0.0.0.0"

LISTEN_PORT=10052

START_POLLERS=5

5、在zabbix_server添加以下文件

vi /usr/local/zabbix/etc/zabbix_server.conf

JavaGateway=127.0.0.1

JavaGatewayPort=10052

StartJavaPollers=5

6、启动

cd /usr/local/zabbix/zabbix_java/sbin/zabbix_java

./startup.sh

在tomcat端:

1、

cd /usr/apache-tomcat-7.0.53/bin

修改tomcat catalina.sh

添加如下内容:

CATALINA_OPTS="-Dcom.sun.management.jmxremote  -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.port=12345 -Dcom.sun.management.jmxremote.ssh=false -Djava.rmi.server.hostname=192.168.18.19"

-----备注(192.168.18.19是客户端ip地址,即tomcat本身ip)

-----这里的Port要和zabbix服务器定义的监听jmx端口保持一致

2、

cd /usr/apache-tomcat-7.0.53/conf

vim server.xml

<Listener className="org.apache.catalina.mbeans.JmxRemoteLifecycleListener"  rmiRegistryPortPlatform="12345" rmiServerPortPlatform="12346"/>

-----这里的Port要和zabbix服务器定义的监听jmx端口保持一致

3、 暂时不确定是不是需要

修改tomcat服务器的hostname

192.168.18.19 localhost.localdomain localhost

4、

cd /usr/apache-tomcat-7.0.53/lib

cp catalina-jmx-remote.jar /usr/apache-tomcat-7.0.53/lib

5、

重启tomcat

6;

cd /usr/apache-tomcat-7.0.53/bin

./startup.sh

回到 zabbix服务器:

在zabbix服务器端用工具测试

下载cmdline-jmxclient-0.10.3.jar工具

java -jar cmdline-jmxclient-0.10.3.jar -  192.168.1.189:12345 java.lang:type=Memory NonHeapMemoryUsage

11/12/2014 15:39:30 +0800 org.archive.jmx.Client NonHeapMemoryUsage:

committed: 552665088

init: 539426816

max: 587202560

used: 75002232

回到 zabbixserver 端,我发现zabbix自带的tomcat模板,不出图,网上找到模块,直接导入即可使用。

(附件包括 cmdline-jmxclient-0.10.3.jar    catalina-jmx-remote.jar tomcat模板 )

时间: 2024-10-18 20:25:17

zabbix 监控服务系列之--------使用JMX监控tomcat的相关文章

14、Zabbix如何使用JMX监控

JMX(Java Management Extensions,即Java管理扩展)是java平台上为应用程序.设备.系统等植入管理功能的框架. JMX工作原理:  zabbix_server想知道一台主机上的特定的JMX值时,它向Zabbix-Java-gateway询问,而Zabbix-Javagateway使用"JMXmanagementAPI"去查询特定的应用程序,而前提是应用程序这端在开启时需要"-Dcom.sun.management.jmxremote"

Java高级应用(一个)-文件夹监控服务

最近.在研究一些比较成熟的框架.他们还发现,他们中的一些相当不错的文章.现在,对于一些在你们中间一个简单的翻译(版的英文文章,非常有帮助). 译:原文链接 你有没有发现,当你编辑一个文件.同一时候使用还有一个IDE或编辑器进行编辑的时候,会出现一个对话框通知"一个打开的文件的已经改变,是否须要又一次载入?".但像NetBeans IDE等一些应用程序仅仅是静静地更新文件而没有通知你. 要实现这样的"文件监控"功能,程序必须可以检測到在文件系统相关的文件夹中发生了什么

Java高级应用(一)-文件目录监控服务

最近,在研究一些比较成熟的框架,这其中也发现了一些比较不错的文章,现给大家简单翻译其中的一部分(强烈建议大家看一些原版的英文文章,很有帮助). 译:原文链接 你有没有发现,当你编辑一个文件,同时使用另一个IDE或编辑器进行编辑的时候,会出现一个对话框通知"一个打开的文件的已经改变,是否需要重新加载?".但像NetBeans IDE等一些应用程序只是静静地更新文件而没有通知你. 要实现这种"文件监控"功能,程序必须能够检测到在文件系统相关的目录中发生了什么.一种方法是

免费网站监控服务阿里云监控,DNSPod监控,监控宝,360云监控使用对比

网站会因为各种原因而导致宕机,具体表现为服务器没有响应,用户打不开网页,域名解析出错,搜索引擎抓取页面失败,返回各种HTTP错误代码.网站宕机可能带来搜索引擎的惩罚,网站服务器不稳定与百度关系文章中就是一个生动的例子. 为了最大限度地避免损失,我们需要在网站宕机后尽快得到提醒,同时在最短的时间恢复网站的正常运行.这就是作为草根个人站长的悲剧,起早贪黑地更新网站内容,没想到一个十五长假过去了,网站宕机了好几天,回来一看site百度网站消失了. 本篇文章就来分享一下国内四个免费的网站监控服务:阿里云

《转》OpenStack添加监控服务

添加监控服务 监控服务 OpenStack监控服务: 有效的收集有关CPU和网络花费的计量数据 通过由服务或基础设置发送的监控通知收集信息. 配置收集数据的类型,让他适应多种操作需求.通过REST API来接受和插入元数据. 通过额外插件的方法扩展架构来收集自定制使用数据. 产生不能否定的签署计量信息. 该系统包含以下基本组件: 计算代理(ceilometer-agent-compute).在每个计算节点运行并轮询资源的使用率统计信息.未来可能会有更多其他类型的代理,但是目前我们关注于创建计算代

Zabbix 通过 JMX 监控 java 进程

参考: [ JMX monitoring ] [ Zabbix Java gateway ] [ JMX Monitoring (Java Gateway) not Working ] 这里会说明通过 JMX 监控 java 进程的配置过程以及需要注意的问题. 本文在 zabbix 已经安装好的基础之上展开. 如果使用 zabbix_proxy , 配置完全一致, 只需要打开zabbix_proxy 对 java app server 有所有端口的访问权限即可. 环境说明 基本环境 OS: Ce

Zabbix使用jmx监控tomcat

Zabbix自带了一部分对于JMX的监控,如果要想使用此模板对tomcat进行比较简单的监控可以考虑使用此模板. 与其他应用使用zabbix-agent不同,对JMX进行监控需要使用zabbix-java-gateway,来与系统的JMX交互获取数据,zabbix-java-gateway将获取到的数据交给zabbix-agent,然后将zabbix-agent将数据发送给zabbix-server. 这里为了方便理解,使用两台机器,一台作为zabbix-server, 另一台作为tomcat服

zabbix通过JMX监控tomcat状态

因为公司大量使用tomcat作为应用服务,所以,这两天催生了一个想法,通过zabbix监控tomcat的运行状态,从而能够更快的发现tomcat服务出现的问题以及判断问题出现在哪块. 在网上找了一些资料来看,写的都不是很全面(PS:对于我这种菜鸟来说,还有很多东西不知道的,所以需要有解释的详细点的文档来帮助我更好理解原理,于是就有了本篇博文的诞生!) 首先,zabbix监控tomcat等这一类java平台的应用不是直接通过agentd来实现的,而是使用jmx来获取到tomcat这类应用的状态,然

企业——Zabbix使用JMX监控tomcat(JAVA类应用)

一.JMX的简介 JMX(Java Management Extensions,即Java管理扩展)是一个为应用程序.设备.系统等植入管理功能的框架. JMX在Java编程语言中定义了应用程序以及网络管理和监控的体系结构.设计模式.应用程序接口以及服务.通常使用JMX来监控系统的运行状态或管理系统的某些方面,比如清空缓存.重新加载配置文件等.优点是可以非常容易的使应用程序被管理.伸缩性的架构使每个JMX Agent服务可以很容易的放入到Agent中,每个JMX的实现都提供几个核心的Agent服务