zabbix监控JMX
zabbix编译前需要安装JDK,编译时需要添加参数--enable-java
编译完成后在zabbix的sbin目录下会生成zabbix_java目录
如:
cd /opt/zabbix/sbin/zabbix_java [root@test zabbix_java]# ls bin lib settings.sh settings.sh.bak shutdown.sh startup.sh
编辑seeting.sh,该文件默认全部注释,启用以下几项即可:
LISTEN_IP="0.0.0.0" LISTEN_PORT=10052 PID_FILE="/tmp/zabbix_java.pid" START_POLLERS=5
编辑zabbix_server.conf,启用:
JavaGateway=127.0.0.1 JavaGatewayPort=10052 StartJavaPollers=5
启动startup.sh即可
在tomcat端安装catalina-jmx-remote.jar
下载http://archive.apache.org/dist/tomcat/tomcat-8/v8.5.9/bin/extras/catalina-jmx-remote.jar到tomcat的lib目录
在catalina.sh或startup.sh增加以下内容:
CATALINA_OPTS=" -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Djava.rmi.server.hostname=**ip**" #其中ip为tomcat内网ip
重启tomcat服务和zabbix_agentd服务
服务器端测试是否能正常获取信息:
[root@test tmp]# java -jar cmdline-jmxclient-0.10.3.jar - 10.29.200.166:9999 java.lang:type=Memory NonHeapMemoryUsage 03/16/2017 14:30:54 +0800 org.archive.jmx.Client NonHeapMemoryUsage: committed: 102416384 init: 2555904 max: -1 used: 98574136 #能获取数据,表示监控成功
增加JMX的ip与端口,导入zbx_export_templates开始监控。