使用Zabbix实现对tomcat的集中监控(一)

当前服务器应用越来越广泛使用tomcat开发,通常针对tomcat的监控主要是使用jconsole进行监控,随着需要监控的tomcat的应用的增多,使用jconsole监控tomcat运行情况会显得越来越复杂,并且jconsole本身并不记录tomcat运行状况的历史数据,这就给运维带来了很多问题。


针对客户的这一情况,提出使用Zabbix监控tomcat应用。zabbix通过java官方接口组件jmxremote能够广泛的监控tomcat的各项运行数据,不仅可以及时发现tomcat运行过程中出现的各种异常,也可以通过分析历史数据,为tomcat程序的优化提供数据支持。

使用zabbix监控tomcat需要配置zabbix-server服务端以及tomcat客户端。

zabbix-server服务端主要通过安装配置zabbix-java-gateway实现,tomcat客户端需要安装配置jmxremote组件。

zabbix-server端配置

1、安装zabbix-jmx接口组件zabbix-java-gateway。推荐使用zabbix官方源yum方式安装。

2、配置zabbix官方源
  1. <div align="left">rpm -ivh</div><div align="left">http://repo.zabbix.com/zabbix/2.4/rhel/6/x86_64/zabbix-release-2.4-1.el6.noarch.rpm</div>
复制代码

3、使用yum方法安装zabbix-java-gateway
  1. yuminstall Zabbix-java-gateway -y
复制代码

4、配置zabbix-java-gateway配置文件

配置文件路径 /etc/Zabbix/Zabbix-java-gateway.conf
修改以下内容

  1. <div align="left">LISTEN_IP="0.0.0.0"#<font face="" "="">监听地址</font></div><div align="left">LISTEN_PORT=10052#<font face="" "="">监听端口</font></div><div align="left">START_POLLERS=5# <font face="" "="">开启的工作线程数(必须大于等于后面</font>zabbix_server.conf<font face="" "="">文件的</font>StartJavaPollers<font face="" "="">参数)</font></div><div align="left"></div>
复制代码


5、设置zabbix-java-gateway开机启动

  1. <div align="left">chkconfig Zabbix-java-gatewayon</div>
  2. <div align="left"><font face="" "="">启动</font>zabbix-javagate-way</div>
  3. <div align="left">service Zabbix-java-gatewaystart</div>
复制代码

注意:

Zabbix2.x版本zabbix-java-gateway是随zabbix-server一同启动,zabbix3.x版本需要单独启动zabbix-java-gateway
检查端口启动情况
  1. <div align="left"># netstat -anp|grep 10052</div><div align="left">tcp     0    0 0.0.0.0:10052      0.0.0.0:*                 </div><div align="left">LISTEN      9613/java</div>
复制代码

6、配置zabbix-server配置文件
  1. <div align="left">JavaGateway=127.0.0.1                    </div><div align="left"># JavaGateway <font face="" "="">服务器地址,</font></div><div align="left">zabbix_server<font face="" "="">与</font>zabbix_java_gateway<font face="" "="">在同一台主机</font></div><div align="left">JavaGatewayPort=10052       #<font face="" "="">端口</font></div><div align="left">StartJavaPollers=5</div>
复制代码

7、重启zabbix-zabbix
  1. # servicezabbix_serverrestart
复制代码

二、tomcat客户端配置

1、修改tomcat启动参数
  1. <div align="left"><font face="" "="">修改</font>tomcat/bin/catalina.sh<font face="" "="">,添加如下内容:</font></div><div align="left">CATALINA_OPTS="-Dcom.sun.management.jmxremote</div><div align="left">-Dcom.sun.management.jmxremote.authenticate=false</div><div align="left">-Dcom.sun.management.jmxremote.ssl=false</div><div align="left">-Dcom.sun.management.jmxremote.port=xxxx  #<font face="" "="">定义</font>jmx<font face="" "="">监听端口</font></div><div align="left">-Djava.rmi.server.hostname=<font face="" "="">本机</font>ip"</div>
复制代码

2、添加jmxremote组件,并重新启动tomcat组件
  1. cpcatalina-jmx-remote.jar~/tomcat/lib/
复制代码

3、使用cmdline测试tomcat-jmx-remote配置情况
  1. <div align="left">java-jarcmdline-jmxclient.jar **ip**:**<font face="" "="">端口</font>**java.lang:type-MemoryNonHeapMemoryUsage</div><div align="left">committed:23000123</div><div align="left">init:24567891</div><div align="left">max:23000000</div><div align="left">used:5858595</div>
复制代码

4、获取jmx-remote监控内容
下载安装java-jdk
JAVA_HOME/jdk/bin/目录下,运行jconsor.exefile:///C:/Users/Tim/AppData/Local/Temp/msohtmlclip1/01/clip_image001.png
qFFKczuz62e33e7030109.png
选择远程进程,jmx链接地址,用户名密码留空。
mbean中查看能够监控的参数file:///C:/Users/Tim/AppData/Local/Temp/msohtmlclip1/01/clip_image002.jpg
6PfB17VJ62e33e7be1cea.jpg
5、编辑tomcat监控模板

根据上述查看的监控参数编辑配置监控项目
类型选择jmxagent代理程序
键值填写jmx[“项目值,请求值]

6、可以根据获取的监控值,编辑需要展示的图片。

0 条评论

请先 登录 后评论
乐维君
乐维君

397 篇文章

作家榜 »

  1. 乐维君 397 文章
  2. YOHOHO 14 文章
  3. 机灵小和尚 13 文章
  4. 我是一只小菜鸡 12 文章
  5. 细雨闲花 11 文章
  6. 。。。 9 文章
  7. 御前侍卫张五哥 9 文章
  8. 小黄人 8 文章