zoukankan      html  css  js  c++  java
  • zabbix通过jmx监控tomcat

    Zabbix版本: Zabbix 3.0.2

    一、服务端配置
    1、安装jdk(版本1.7.0_79)
    安装与配置比较简单,过程省略。执行java -version命令,出现类似界面表示成功。
     
    2、安装Zabbix-Java-gateway
    Zabbix2.0起添加了支持用于监控JMX应用程序的服务进程,称为“Zabbix-Java-gateway”,它是用java写的一个程序。
    有两种方法可以安装Zabbix-Java-gateway,第1种是编译安装zabbix时添加--enable java参数。第2种是单独安装,步骤如下:
    # tar zxvf zabbix-3.0.2.tar.gz
    # cd zabbix-3.0.2
    # ./configure  --enable-java  --prefix=/data/zabbix/zabbix_java  #/data/zabbix是我的zabbix安装目录
    # make && make install
    3、修改Java-gateway的配置文件并启动它
    配置文件路径为/data/zabbix/zabbix_java/sbin/zabbix_java/settings.sh
    启用以下参数:
    LISTEN_IP="0.0.0.0"       #监听地址
    LISTEN_PORT=10052      #监听端口
    START_POLLERS=5        # 开启的工作线程数(必须大于等于后面zabbix_server.conf文件的StartJavaPollers参数)
    进入/data/zabbix/zabbix_java/sbin/zabbix_java目录,执行
    ./startup.sh
    检查端口是否监听:
    # netstat -anp|grep 10052
    tcp        0      0 0.0.0.0:10052               0.0.0.0:*                   LISTEN      9613/java

    4、修改zabbix_server的配置文件并重启

    JavaGateway=127.0.0.1                     # JavaGateway 服务器地址,zabbix_server与zabbix_java_gateway在同一台主机
    JavaGatewayPort=10052                    #端口
    StartJavaPollers=5

    重启zabbix_server

    # /etc/init.d/zabbix_server restart
    二、客户端配置
    1、给tomcat启动脚本添加参数,开启JMX
    修改tomcat/bin/下的catalina.sh,添加如下内容:
    CATALINA_OPTS="-Dcom.sun.management.jmxremote
    -Dcom.sun.management.jmxremote.authenticate=false
    -Dcom.sun.management.jmxremote.ssl=false
    -Dcom.sun.management.jmxremote.port=12345  #定义jmx监听端口
    -Djava.rmi.server.hostname=客户端IP"
    2、下载catalina-jmx-remote.jar
    将下载后后的jar包放到被监控的tomcat实例的lib目录下。
    3、重启tomcat
    4、测试是否可以获取数据
    命令行下测试需要cmdline-jmxclient-0.10.3.jar这个包,测试结果如下:
     
    三、导入模板,添加监控
    从网上下载了一个不错的模板,导入后如下:
    添加主机,关联模板,出图,效果如下:
     
    四、如何监控单主机多个tomcat
    监控多个tomcat实例,网上的详细的配置文档很少,几乎没有。比较好的办法是使用自动发现,但刚使用zabbix,来不及研究,所以采用笨法,修改模板、监控项、图形来达到最终目的。
    关键配置:
    1、添加主机时添加多个jmx端口
    2、修改监控项、键值
    在同一主机上,zabbix不允键值重复,但是监控的项目是一样的,不可能键值写的不重复,经过几番搜索,找到方法如下:
    只要在箭头处添加1个空格就可以,也可以是多个。(注意位置不要错,在逗到后面)
    剩下的就是体力活了,复制监控项、修改监控项、复制图形、修改图形。。。
    以下是两个tomcat实例的监控项:
     
    最后的监控效果如下:
     
     
    其它图形就不一一展示了。
     
  • 相关阅读:
    Serverless 架构到底要不要服务器?
    Serverless 在 SaaS 领域的最佳实践
    20 行代码:Serverless 架构下用 Python 轻松搞定图像分类和预测
    创业公司用 Serverless,到底香不香?
    如何通过 Serverless 轻松识别验证码?
    Serverless 是一种思想状态
    都 2021 年了,Serverless 能取代微服务吗?
    从零入门 Serverless | 架构的演进
    Serverless 的价值
    实验楼前后端代码
  • 原文地址:https://www.cnblogs.com/Eivll0m/p/5446311.html
Copyright © 2011-2022 走看看