Zabbix JMX
1 2 3 4 5 6
| java \ -Dcom.sun.management.jmxremote \ -Dcom.sun.management.jmxremote.port=12345 \ -Dcom.sun.management.jmxremote.authenticate=false \ -Dcom.sun.management.jmxremote.ssl=false \ -jar application.jar
|
Zabbix Java Gateway Installation
- download rpm
- Install
- Java gateway可以在zabbix server上安装,也可以在被监控节点上安装。不同的安装需要在zabbix server的配置上修改,见本文
Configuration
section。
1 2 3
| yum -y install java-1.8.0-openjdk-headless.x86_64
rpm -ivh zabbix-java-gateway-3.0.11-1.el7.x86_64.rpm
|
Configuration
- Java gateway 配置
- 一般按照如下默认配置, /etc/zabbix/zabbix_java_gateway.conf
1 2 3 4 5 6
| LISTEN_IP="0.0.0.0" LISTEN_PORT=10052 PID_FILE="/var/run/zabbix/zabbix_java.pid" START_POLLERS=5 TIMEOUT=3 ~
|
- Zabbix Server 配置 config /etc/zabbix/zabbix_server.conf
- 如果java gateway安装在zabbix server上的话,默认配置就ok了
- 如果java gateway安装在被监控节点上的话,JavaGateway的IP改成被监控机的外网IP
1 2 3
| JavaGateway=127.0.0.1 JavaGatewayPort=10052 # java gateway listen port StartJavaPollers=5 # java gateway threads, if value=0, means disable monitor java info)
|
配置完后重启一下服务
jmx interface
- 在zabbix的管理页面上添加上被监控节点的jmx interface,比如下图添加cassandra的jmx接口
Template
- 导入监控JMX的模板或自己创建,attach到被监控节点。一般模板对JMX的认证的用户名,密码是做成模板的环境变量,根据情况配置。
监控 Cassandra
- Cassandra 默认打开的是本地的JMX,而
zabbix java gateway
如果远程访问,需要修改cassandra-env.sh文件,打开remote jmx.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| - # JVM_OPTS="$JVM_OPTS -Djava.rmi.server.hostname=<public name>" + JVM_OPTS="$JVM_OPTS -Djava.rmi.server.hostname=<replace this with your hostname>"
- if [ "x$LOCAL_JMX" = "x" ]; then LOCAL_JMX=yes fi + if [ "x$LOCAL_JMX" = "x" ]; then LOCAL_JMX=no fi
- JVM_OPTS="$JVM_OPTS -Dcom.sun.management.jmxremote.authenticate=true" + JVM_OPTS="$JVM_OPTS -Dcom.sun.management.jmxremote.authenticate=false"
- JVM_OPTS="$JVM_OPTS -Dcom.sun.management.jmxremote.password.file=/etc/cassandra/jmxremote.password" + # JVM_OPTS="$JVM_OPTS -Dcom.sun.management.jmxremote.password.file=/etc/cassandra/jmxremote.password"
|
效果
福利