首页 > 监控和安全 > linux工匠之java的zabbix监控
2016
09-08

linux工匠之java的zabbix监控

老生常谈一个问题,zabbix对java程序的监控,下面以新版的zookeeper和kafka举例

使用VisualVM可以直接看到性能的图形变化,java自带的jconsole可以显示项目运行状态的数值,从而提供给zabbix得以出图

一,开启zabbix_java服务

zabbix的其他配置略,安装见 http://bbotte.blog.51cto.com/6205307/1612664

二,首先开启jmxremote,一般会在java程序启动前添加

比如zookeeper的zabbix监控,zookeeper-3.4.8要开启jmxremote的话,需要在bin/zkEnv.sh里面或者bin/zkServer.sh里面添加如下一行即可

网上搜索到的都是像下面一样,在bin/zkServer.sh里面修改ZOOMAIN,可是新版本的需要添加一个JMXPORT=’9999’的变量就可以的,而不是修改ZOOMAIN

另外zookeeper四字监控请看官方文档, echo conf|nc 127.0.0.1 2181 查看结果

再说到kafka的zabbix监控,kafka_2.10-0.10.0.0的java选项监控,需要在bin/kafka-server-start.sh添加export JMX_PORT=’9999′

之所以kafka像zk一样这么简单是因为kafka-run-class.sh里面定义了jmxremote

我们可以看到,要么是自己定义java启动的jmxremote,要么是程序里面已经设置好开关了,只需要打开

如果是添加jmx密码

三,在jconsole里面查看参数和属性

打开java自带的jconsole,查看MBean下的选项

linux工匠之java的zabbix监控 - 第1张  | linux工匠|关注运维自动化|Python开发|linux高可用集群|数据库维护|性能提优|系统架构

linux工匠之java的zabbix监控 - 第2张  | linux工匠|关注运维自动化|Python开发|linux高可用集群|数据库维护|性能提优|系统架构

每一个ObjectName下面都有“属性”,点击查看属性对应的名称和值,我们需要的就是这些   bbotte.com

linux工匠之java的zabbix监控 - 第3张  | linux工匠|关注运维自动化|Python开发|linux高可用集群|数据库维护|性能提优|系统架构

四,在zabbix里面添加监控项,配置JMX interfaces选项

linux工匠之java的zabbix监控 - 第4张  | linux工匠|关注运维自动化|Python开发|linux高可用集群|数据库维护|性能提优|系统架构

添加item,type为JMX agent,Key的格式为jmx[<object name>,<attribute name>]

linux工匠之java的zabbix监控 - 第5张  | linux工匠|关注运维自动化|Python开发|linux高可用集群|数据库维护|性能提优|系统架构

以此,把相应的item添加入zabbix,如果只是需要截取数据:

最后编辑:
作者:bbotte
这个作者貌似有点懒,什么都没有留下。

linux工匠之java的zabbix监控》有 3 条评论

  1. Pingback 引用通告: 小议java监控Java VisualVM | linux工匠 关注运维自动化|Python开发|linux高可用集群|数据库维护|性能提优

  2. blog.lssin.com 说:

    # java -jar cmdline-jmxclient-0.10.3.jar – 172.16.1.6:17982 java.lang:type=Threading TotalStartedThreadCount # 无法直接过滤输出的内容,你是怎么做的?

    • 说:

      [root@vm01 ~]# /usr/local/zookeeper/bin/zkServer.sh
      startZooKeeper JMX enabled by default
      ZooKeeper remote JMX Port set to 9999
      ZooKeeper remote JMX authenticate set to false
      ZooKeeper remote JMX ssl set to false
      ZooKeeper remote JMX log4j set to true
      Using config: /usr/local/zookeeper/bin/../conf/zoo.cfg
      Starting zookeeper … STARTED
      [root@vm01 ~]# netstat -tnlp|grep 9999
      tcp 0 0 :::9999 :::* LISTEN 24755/java
      [root@vm01 ~]# java -jar /root/cmdline-jmxclient-0.10.3.jar – 10.211.55.4:9999 java.lang:type=Threading TotalStartedThreadCount
      10/21/2016 15:05:02 +0800 org.archive.jmx.Client TotalStartedThreadCount: 16

留下一个回复

你的email不会被公开。