zabbix 监控jvm
Posted 张宏杰
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了zabbix 监控jvm相关的知识,希望对你有一定的参考价值。
Zabbix版本: Zabbix 3.0.2
一、服务端配置 1、安装jdk(版本1.7.0_79) 安装与配置比较简单,过程省略。执行java -version命令,出现类似界面表示成功。 2、安装Zabbix-Java-gateway Zabbix2.0起添加了支持用于监控JMX应用程序的服务进程,称为“Zabbix-Java-gateway”,它是用java写的一个程序。 有两种方法可以安装Zabbix-Java-gateway,第1种是编译安装zabbix时添加--enable java参数。第2种是单独安装,步骤如下:# tar zxvf zabbix-3.0.2.tar.gz # cd zabbix-3.0.2 # ./configure --enable-java --prefix=/data/zabbix/zabbix_java #/data/zabbix是我的zabbix安装目录 # make && make install3、修改Java-gateway的配置文件并启动它 配置文件路径为/data/zabbix/zabbix_java/sbin/zabbix_java/settings.sh 启用以下参数:
LISTEN_IP="0.0.0.0" #监听地址 LISTEN_PORT=10052 #监听端口 START_POLLERS=5 # 开启的工作线程数(必须大于等于后面zabbix_server.conf文件的StartJavaPollers参数)进入/data/zabbix/zabbix_java/sbin/zabbix_java目录,执行 ./startup.sh 检查端口是否监听:
# netstat -anp|grep 10052 tcp 0 0 0.0.0.0:10052 0.0.0.0:* LISTEN 9613/java
4、修改zabbix_server的配置文件并重启
JavaGateway=127.0.0.1 # JavaGateway 服务器地址,zabbix_server与zabbix_java_gateway在同一台主机 JavaGatewayPort=10052 #端口 StartJavaPollers=5
重启zabbix_server
# /etc/init.d/zabbix_server restart二、客户端配置 1、给tomcat启动脚本添加参数,开启JMX 修改tomcat/bin/下的catalina.sh,添加如下内容:
CATALINA_OPTS="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.port=12345 #定义jmx监听端口 -Djava.rmi.server.hostname=客户端IP"2、下载catalina-jmx-remote.jar # wget http://archive.apache.org/dist/tomcat/tomcat-7/v7.0.56/bin/extras/catalina-jmx-remote.jar #我的tomcat版本是7.0.56 将下载后后的jar包放到被监控的tomcat实例的lib目录下。 3、重启tomcat 4、测试是否可以获取数据 命令行下测试需要cmdline-jmxclient-0.10.3.jar这个包,测试结果如下: 三、导入模板,添加监控 从网上下载了一个不错的模板,导入后如下: 添加主机,关联模板,出图,效果如下: 四、如何监控单主机多个tomcat 监控多个tomcat实例,网上的详细的配置文档很少,几乎没有。比较好的办法是使用自动发现,但刚使用zabbix,来不及研究,所以采用笨法,修改模板、监控项、图形来达到最终目的。 关键配置: 1、添加主机时添加多个jmx端口 2、修改监控项、键值 在同一主机上,zabbix不允键值重复,但是监控的项目是一样的,不可能键值写的不重复,经过几番搜索,找到方法如下: 只要在箭头处添加1个空格就可以,也可以是多个。(注意位置不要错,在逗到后面) 剩下的就是体力活了,复制监控项、修改监控项、复制图形、修改图形。。。 以下是两个tomcat实例的监控项: 最后的监控效果如下: 其它图形就不一一展示了。
以上是关于zabbix 监控jvm的主要内容,如果未能解决你的问题,请参考以下文章