zabbix配置jmx监控
官方文档:
https://www.zabbix.com/documentation/5.0/zh/manual/concepts/java
https://www.zabbix.com/documentation/5.0/zh/manual/appendix/config/zabbix_java
https://www.zabbix.com/documentation/4.0/zh/manual/config/items/itemtypes/jmx_monitoring
安装zabbix Java gateway
配置java环境变量
]# vim /etc/profile JAVA_HOME=/zabbix/jdk PATH=$JAVA_HOME/bin:$PATH ]# source /etc/profile
编译安装zabbix java gateway
]# ./configure --prefix=/zabbix/zabbix --enable-server --enable-java --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2 ]# make && make install
安装成功
zabbix java gateway安装的位置为指定安装路径下的sbin/zabbix_java
zabbix java gateway目录结构
/zabbix/zabbix/sbin/zabbix_java/
├── bin
│ └── zabbix-java-gateway-5.0.19.jar
├── lib
│ ├── android-json-4.3_r3.1.jar
│ ├── logback-classic-1.2.9.jar
│ ├── logback-console.xml
│ ├── logback-core-1.2.9.jar
│ ├── logback.xml
│ └── slf4j-api-1.7.32.jar
├── settings.sh
├── shutdown.sh
└── startup.sh
配置zabbix java gateway相关参数
设置监听端口及pid文件位置
zabbix_java/settings.sh
]# vim /zabbix/zabbix/sbin/zabbix_java/settings.sh LISTEN_PORT=10152 ##监听端口 PID_FILE="/zabbix/zabbix/zabbix_java.pid" ##zabbix java pid文件
设置日志路径
zabbix_java/lib/logback.xml
]# vim /zabbix/zabbix/sbin/zabbix_java/lib/logback.xml <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender"> <file>/zabbix/zabbix/logs/zabbix_java.log</file> ##日志路径 <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy"> <fileNamePattern>/zabbix/zabbix/logs/zabbix_java.log.%i</fileNamePattern> ##日志路径
启动zabbix java gateway
]# sh /zabbix/zabbix/sbin/zabbix_java/startup.sh
zabbix java gateway脚本
settings.sh zabbix java gateway配置脚本
shutdown.sh zabbix java gateway停止脚本
startup.sh zabbix java gateway启动脚本
可以根据需要,在settings.sh和startup.sh脚本中添加或删除相关的启动参数
配置zabbix server
##配置zabbix server相关参数 ]# vim /zabbix/zabbix/etc/zabbix_server.conf JavaGateway=172.25.230.51 ##zabbix java gateway地址 JavaGatewayPort=10152 ##zabbix java gateway端口 StartJavaPollers=5 ##连接zabbix java gateway的初始线程数 ##重启zabbix server ]# pkill -f zabbix_server ]# /zabbix/zabbix/sbin/zabbix_server
连接zabbix java gateway成功
添加监控项
配置jmx接口
在主机页面添加
ip为被监控主机的ip,端口为开启的jmx监控的端口,即-Dcom.sun.management.jmxremote.port设置的值
配置jmx监控项
在监控项页面添加
选择JMX_agent代理程序,键值填写jmx["java.lang:type=Memory","HeapMemoryUsage.used"],如果jmx监控设置了账号和密码的话,需分别填写在用户名称和密码处
查看jmx监控是否开启
测试能否取到值
对于同一台主机有多个java实例,可以设置多个jmx主机