企业——Zabbix使用JMX监控tomcat(JAVA类应用)

一.JMX的简介

  JMX(Java Management Extensions,即Java管理扩展)是一个为应用程序、设备、系统等植入管理功能的框架。

  JMX在Java编程语言中定义了应用程序以及网络管理和监控的体系结构、设计模式、应用程序接口以及服务。通常使用JMX来监控系统的运行状态或管理系统的某些方面,比如清空缓存、重新加载配置文件等。优点是可以非常容易的使应用程序被管理。伸缩性的架构使每个JMX Agent服务可以很容易的放入到Agent中,每个JMX的实现都提供几个核心的Agent服务,你也可以自己编写服务,服务可以很容易的部署,取消部署。主要作用是提供接口,允许有不同的实现

二.JMX的安装

1.在server3(agent客户端)上安装tomcat和jdk,并打开tomcat

  rpm -ivh jdk-8u121-linux-x64.rpm
  tar zxf apache-tomcat-8.5.24.tar.gz -C /usr/local    ##解压到特定的目录下
  cd /usr/local/
  ln -s apache-tomcat-8.5.24/ tomcat # 做软连接,方便更新
  cd tomcat/
  cd bin/
  vim catalina.sh      ##在 tomcat 的配置文件中添加JMX的参数
    110 CATALINA_OPTS='-Dcom.sun.management.jmxremote
    111 -Dcom.sun.management.jmxremote.port=8888      ##监听端口号,方便远程访问
    112 -Dcom.sun.management.jmxremote.ssl=false     ##是否对连接开启SSL加密,默认开启
    113 -Dcom.sun.management.jmxremote.authenticate=false'      ##是否需要开启用户认证,默认开启
  ./startup.sh     ##启动tomcat
  netstat -antlp     ##查看端口(8888和8080)

      

      

2. server1(server端)安装zabbix-java-gateway,并做相应配置

  yum install -y zabbix-java-gateway-4.0.5-1.el7.x86_64.rpm

  cd /etc/zabbix/

  vim  zabbix-java-gateway.conf    ##只是查看了一下相应的信息

  systemctl start zabbix-java-gateway

  netstat -antlp | grep :10052
    tcp6 0 0 :::10052 :::* LISTEN 31199/java

  pwd
    /etc/zabbix


  vim zabbix_server.conf
    288 JavaGateway=172.25.254.1
    296 JavaGatewayPort=10052
    304 StartJavaPollers=5

  zabbix_server -R config_cache_reload    ## -R:执行管理能力     config_cache_reload:reload配置缓存  
    zabbix_server [365]: command sent successfully
  systemctl restart zabbix-server

3.zabbix监控界面进行相应设置

      

      

      

      

      

  

  如果一直是JMX没有变绿, 可以再次在server端(server1)重新加载配置,然后重启两边服务

  zabbix_server -R config_cache_reload
    zabbix_server [365]: command sent successfully

  systemctl restart zabbix-server
  systemctl restart zabbix-agent

原文地址:https://www.cnblogs.com/wf-aiyouwei/p/10737180.html