前段时间,领导要求用zabbix监控一台机器上的多个tomcat实例。着手开始做时,发现较多的资料都是较少怎么铰孔tomcat,很少有说明怎么监控多个tomcat。千辛万苦,终于搞定,可能还有些不完整的地方,但权当是指引,知道思路,剩下的就靠大家发挥!
有一篇关于zabbix监控tomcat的前前些的很详细,在此推荐一下
http://lovelace.blog.51cto.com/1028430/1424964
这篇文章很好的介绍zabbix通过jxm监控tomcat,不过是单个tomcat的监控,前面的安装配置可以参照这篇进行,下面我们来看一下,要监控多个tomcat,还要做哪些改动:
一台服务器有多个tomcat,要想zabbix分别监控同一台机器上的多个tomcat,只有通过调整每个tomcat配置文件的端口来进行了:
在每个tomcat的serverr.xml文件中修改这样一个参数来调整zabbix对tomcat的监控端口连接:
vi /data/webserver/apache-tomcat1/conf$ vi server.xml
我们再看另外一个本机上的tomcat的server.xml:
vi /data/webserver/apache-tomcat2/conf$ vi server.xml
就是这个地方的端口不一样,调整后,重启你的tomcat服务
在zabbix的页面,点开你的tomcat服务主机:
在这个地方添加你要监控的tomcat的配置好的端口
然后就是添加item了,当然,你可以导入模板,最重的是怎么放看着一样的键值在同一主机上生效:
在添加item时,你会看到你添加的tomcat的端口已经出现在界面下拉框里了,只要选择就行了
线面就是键值,毕竟监控的项目是一样的,不可能键值写的不重复,但键值不能相同,是zabbix的标准,多番查找,发现方法是如此的简单:
jmx["java.lang:type=Threading", "ThreadCount"]
jmx["java.lang:type=Threading","ThreadCount"]
能看出他们的不一样吗?就是这样,只要加一个空格就可以了,而且还能多加,注意位置不要错就行。
其实,最重要的就是一些端口的对应,键值的不同,这里只算是介绍个方法,详细操作的还需要大家仔细研究。