在zabbix server上:
zabbix-java-gateway:
安装zabbix-java-gateway:
1
|
yum -y install zabbix-java-gateway |
配置:
1
2
3
4
5
|
vim /etc/zabbix/zabbix_java_gateway .conf LISTEN_IP= "0.0.0.0" #监听本机所有ip LISTEN_PORT=10052 #在10052端口提供服务 PID_FILE= "/var/run/zabbix/zabbix_java.pid" START_POLLERS=5 |
启动zabbix-java-gateway:
1
|
systemctl status zabbix-java-gateway.service |
zabbix-server:
配置zabbix_server服务:
1
2
3
|
JavaGateway=127.0.0.1 #JavaGateway所在服务器的IP JavaGatewayPort=10052 #JavaGateway的默认端口 StartJavaPollers=5 #JVM进行监控轮询实例数,默认是0 |
重启zabbix-server:
1
|
systemctl restart zabbix-server.service |
在被监控的tomcat上
配置tomcat:
配置启动脚本catalina.sh:在脚本的开头加入如下内容
1
2
3
4
5
6
7
|
vim usr /local/tomcat/bin/catalina .sh CATALINA_OPTS="$CATALINA_OPTS -Dfile.encoding=utf-8 -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate= false -Dcom.sun.management.jmxremote.ssl= false -Djava.rmi.server. hostname =192.168.1.157" |
命令注释:
1
2
3
4
5
6
|
CATALINA_OPTS="$CATALINA_OPTS -Dfile.encoding=utf-8 -Dcom.sun.management.jmxremote #开启远程 -Dcom.sun.management.jmxremote.authenticate= false #免密认证 # -Dcom.sun.management.jmxremote.port=12345 #这里不需要这行 -Dcom.sun.management.jmxremote.ssl= false -Djava.rmi.server. hostname =192.168.66.22" #要监控的tomcat主机ip |
下载监控所需的库文件:放入lib文件夹
1
2
|
cd /usr/local/tomcat/lib wget http: //archive .apache.org /dist/tomcat/tomcat-8/v8 .5.37 /bin/extras/catalina-jmx-remote .jar |
配置server.xml文件:
1
2
|
vim /usr/local/tomcat/conf/server .xml <Listener className= "org.apache.catalina.mbeans.JmxRemoteLifecycleListener" rmiRegistryPortPlatform= "12345" rmiServerPortPlatform= "12346" /> |
远程连接端口是12345,获取数据端口是12346
检测配置是否生效:
1
|
java -jar cmdline-jmxclient-0.10.3.jar - 127.0.0.1:12345 java.lang: type =Memory NonHeapMemoryUsage |
cmdline-jmxclient-0.10.3.jar 这个包放在任意位置。
需要的包文件下载地址:http://down.51cto.com/data/2448735
导入监控所需模板:
这个下载的包里面有监控tomcat的模板文件,需要导入到tomcat中:
然后就可以监控tomcat了。