阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Zabbix通过JMX监控Tomcat——防火墙策略问题分析

198次阅读
没有评论

共计 3654 个字符,预计需要花费 10 分钟才能阅读完成。

一、现 状

对于 Zabbix 通过 JMX 来监控 Tomcat,网络上有很多文章,但大都是相同或类似的,且都是没有设置防火墙的,所以就安装而言百度就行。现在为了服务的安全,是必须开启防火墙的。于是出现了一系列的问题。

二、当前环境

1、Zabbix_server 的 Zabbix 版本是 3.0.4,系统是 CentOS 7.0,使用 YUM 安装。

Centos7.0 YUM 安装地址:http://www.linuxidc.com/Linux/2016-11/137638.htm

2、Zabbix-server 的 zabbix_server.conf 配置文件

LogFile=/var/log/zabbix/zabbix_server.log
LogFileSize=0
PidFile=/var/run/zabbix/zabbix_server.pid
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
JavaGateway=127.0.0.1    # gateway 地址
JavaGatewayPort=10052    # 监听端口
StartJavaPollers=5
SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
Timeout=30
AlertScriptsPath=/etc/zabbix/alertscripts
ExternalScripts=/usr/lib/zabbix/externalscripts
LogSlowQueries=3000

3、zabbix_java_gateway.conf 配置文件

LISTEN_IP=”0.0.0.0″
LISTEN_PORT=10052
PID_FILE=”/var/run/zabbix/zabbix_java.pid”
START_POLLERS=5
TIMEOUT=3

4、zabbix 被监控端 catalina.sh 添加的内容

CATALINA_OPTS=”$CATALINA_OPTS -Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.port=12345
-Dcom.sun.management.jmxremote.authenticate=false
-Djava.rmi.server.hostname=192.168.1.13″  # tomcat 服务器 IP

5、防火墙策略添加

Zabbix_server 端 firewall-cmd –zone=public –add-port=10052/tcp –permanent
被监控端 iptables -I INPUT 4 -m state –state NEW -m tcp -p tcp –dport 12345 -j ACCEPT

注:Zabbix_server 和 Zabbix_java_gateway 可在不同服务器安装。

三、分析问题

1、当所有配置完成,Zabbix 显示不通,如下图

Zabbix 通过 JMX 监控 Tomcat——防火墙策略问题分析

Zabbix_server 日志显示

Zabbix 通过 JMX 监控 Tomcat——防火墙策略问题分析

2、我以为配置有问题,于是就修改配置,修改了几次还是不行,让我意识到可能不是配置的问题,既然不是配置问题,那最大的可能就是防火墙,关闭防火墙进行测试。让我惊喜的是居然真的通了。被监控端的防火墙端口开了,为什么不通呢,难道还有一个端口没有开吗?于是重新开启防火墙,查看端口,如下

Zabbix 通过 JMX 监控 Tomcat——防火墙策略问题分析

3、真的有端口被调用了,而且是动态的,当重启 tomcat 后端口又被改变,所以说,开启端口这种方法是行不通的,还有就是开放多端口,将一系列端口开放,但端口多了,容易出现问题,和开不开防火墙差不多。那么到底如何呢,只能是将另一端口固定调用。怎么做呢,方法如下:

4、修改 tomcat/bin/catalina.sh 添加的内容

CATALINA_OPTS=”$CATALINA_OPTS -Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.port=12345  #将端口这条去掉,
-Dcom.sun.management.jmxremote.authenticate=false
-Djava.rmi.server.hostname=192.168.1.13″  # tomcat 服务器 IP

注:必须去的,如果不去掉,将会导致不成功!

5、在 tomcat/conf/server.xml 添加以下内容

<Server port=”9005″ shutdown=”SHUTDOWN”>
  <Listener className=”org.apache.catalina.startup.VersionLoggerListener” />
  <!– Security listener. Documentation at /docs/config/listeners.html
  <Listener className=”org.apache.catalina.security.SecurityListener” />
  –>
  <!–APR library loader. Documentation at /docs/apr.html –>
  <Listener className=”org.apache.catalina.core.AprLifecycleListener” SSLEngine=”on” />
  <!– Prevent memory leaks due to use of particular java/javax APIs–>
  <Listener className=”org.apache.catalina.core.JreMemoryLeakPreventionListener” />
  <Listener className=”org.apache.catalina.mbeans.GlobalResourcesLifecycleListener” />
  <Listener className=”org.apache.catalina.core.ThreadLocalLeakPreventionListener” />
  <Listener className=”org.apache.catalina.mbeans.JmxRemoteLifecycleListener” 
          rmiRegistryPortPlatform=”12345″ rmiServerPortPlatform=”12346″ />
          # 添加最后一条

6、添加被监控端防火墙策略

iptables -I INPUT 4 -m state –state NEW -m tcp -p tcp –dport 12346 -j ACCEPT

7、下载 catalina-jmx-remote.jar 将此文件放到 tomcat/lib 目录下

http://mirror.bit.edu.cn/apache/tomcat/tomcat-8/v8.0.37/bin/extras/catalina-jmx-remote.jar

8、成功,重启服务

一些 Zabbix 相关教程集合

Ubuntu 14.04 下 Zabbix2.4.5 源码编译安装  http://www.linuxidc.com/Linux/2015-05/117657.htm

CentOS 7 LNMP 环境搭建 Zabbix3.0  http://www.linuxidc.com/Linux/2017-02/140134.htm

Ubuntu 16.04 安装部署监控系统 Zabbix2.4  http://www.linuxidc.com/Linux/2017-03/141436.htm

Zabbix 监控安装部署及警报配置  http://www.linuxidc.com/Linux/2017-03/141611.htm

Ubuntu 16.04 下安装部署 Zabbix3.0  http://www.linuxidc.com/Linux/2017-02/140395.htm

CentOS 6.3 下 Zabbix 监控 apache server-status http://www.linuxidc.com/Linux/2013-05/84740.htm

CentOS 7 下 Zabbix 3.0 安装详解 http://www.linuxidc.com/Linux/2017-03/141716.htm

64 位 CentOS 6.2 下安装 Zabbix 2.0.6   http://www.linuxidc.com/Linux/2014-11/109541.htm

ZABBIX 的详细介绍:请点这里
ZABBIX 的下载地址:请点这里

本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-03/141774.htm

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计3654字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中