zabbix-基于Java Gateway监控Tomcat
环境准备
zabbix server:192.168.61.111 配置文件指定java gateway地址和端口连接gateway 10052端口获取数据
java gateway:192.168.64.111 创建主机代理JMX,指定IP+端口收集被监控主机数据
tomcat:192.168.64.112 监听12345端口发送数据给java gateway,同时主动发送其他数据给proxy
zabbix proxy: 192.168.64.112 主动模式下从server获取监控项,同时等待agent获取监控项并收集agent发送数据,存储到本地MySQL,定期发送给server;
同时proxy获取到java监控项,由gateway定期从后端获取监控数据后,发送给proxy,proxy定期发送给server。
server配置文件
[root@zabbix-server ~]# grep "^[a-Z]" /etc/zabbix/zabbix_server.conf LogFile=/var/log/zabbix/zabbix_server.log LogFileSize=512 PidFile=/var/run/zabbix/zabbix_server.pid SocketDir=/var/run/zabbix DBName=zabbix DBUser=zabbix DBPassword=xxxxxxxx DBPort=3306 JavaGateway=192.168.64.111 # 连接java gateway JavaGatewayPort=10052 # 端口 StartJavaPollers=20 SNMPTrapperFile=/var/log/snmptrap/snmptrap.log Timeout=4 AlertScriptsPath=/usr/lib/zabbix/alertscripts ExternalScripts=/usr/lib/zabbix/externalscripts LogSlowQueries=3000 StatsAllowedIP=127.0.0.1
安装
[root@zabbix-server ~]# yum -y install zabbix-java-gateway.x86_64
修改javagateway配置文件
[root@zabbix-server alertscripts]# grep "^[a-Z]" /etc/zabbix/zabbix_java_gateway.conf LISTEN_IP="0.0.0.0" LISTEN_PORT=10052 # 监听端口 PID_FILE="/var/run/zabbix/zabbix_java.pid" START_POLLERS=20 # 启动进程数量 TIMEOUT=30 # 超时时间
启动
[root@zabbix-server alertscripts]# systemctl start zabbix-java-gateway.service
[root@zabbix-server alertscripts]# systemctl enable zabbix-java-gateway.service
tomcat开启JMX监控,端口为12345
vim catalina.sh
CATALINA_OPTS="$CATALINA_OPTS -Dcom.sun.management.jmxremote -Djava.rmi.server.hostname=192.168.64.112 -Dcom.sun.management.jmxremote.port=12345 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false"
启动
[root@master-3 bin]# ./catalina.sh start Using CATALINA_BASE: /usr/local/apache-tomcat-8.5.61 Using CATALINA_HOME: /usr/local/apache-tomcat-8.5.61 Using CATALINA_TMPDIR: /usr/local/apache-tomcat-8.5.61/temp Using JRE_HOME: /usr Using CLASSPATH: /usr/local/apache-tomcat-8.5.61/bin/bootstrap.jar:/usr/local/apache-tomcat-8.5.61/bin/tomcat-juli.jar Using CATALINA_OPTS: -Dcom.sun.management.jmxremote -Djava.rmi.server.hostname=192.168.64.112 -Dcom.sun.management.jmxremote.port=12345 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false Tomcat started.
[root@master-3 bin]# ps -ef |grep tomcat root 30997 1 69 21:47 pts/0 00:00:03 /usr/bin/java -Djava.util.logging.config.file=/usr/local/apache-tomcat-8.5.61/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -Dcom.sun.management.jmxremote -Djava.rmi.server.hostname=192.168.64.112 -Dcom.sun.management.jmxremote.port=12345 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Dignore.endorsed.dirs= -classpath /usr/local/apache-tomcat-8.5.61/bin/bootstrap.jar:/usr/local/apache-tomcat-8.5.61/bin/tomcat-juli.jar -Dcatalina.base=/usr/local/apache-tomcat-8.5.61 -Dcatalina.home=/usr/local/apache-tomcat-8.5.61 -Djava.io.tmpdir=/usr/local/apache-tomcat-8.5.61/temp org.apache.catalina.startup.Bootstrap start root 31033 30398 0 21:47 pts/0 00:00:00 grep --color=auto tomcat
[root@master-3 bin]# netstat -ntpl Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 127.0.0.1:41071 0.0.0.0:* LISTEN 1100/containerd tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 681/rpcbind tcp 0 0 192.168.122.1:53 0.0.0.0:* LISTEN 1311/dnsmasq tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1079/sshd tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 1088/cupsd tcp6 0 0 127.0.0.1:8005 :::* LISTEN 30997/java tcp6 0 0 :::35110 :::* LISTEN 30997/java tcp6 0 0 :::35853 :::* LISTEN 30997/java tcp6 0 0 :::111 :::* LISTEN 681/rpcbind tcp6 0 0 :::8080 :::* LISTEN 30997/java tcp6 0 0 :::22 :::* LISTEN 1079/sshd tcp6 0 0 :::12345 :::* LISTEN 30997/java
proxy配置
[root@master-3 ~]# grep "^[a-Z]" /etc/zabbix/zabbix_proxy.conf ProxyMode=0 # 主动模式 Server=192.168.64.111 # server地址 ServerPort=10051 Hostname=zabbix-proxy-active # proxy name ListenPort=10051 LogType=file LogFile=/var/log/zabbix/zabbix_proxy.log LogFileSize=512 DebugLevel=3 PidFile=/var/run/zabbix/zabbix_proxy.pid SocketDir=/var/run/zabbix DBHost=localhost DBName=zabbix_proxy_active DBUser=proxy DBPassword=xxxxxxxx DBPort=3306 ProxyLocalBuffer=168 ProxyOfflineBuffer=168 HeartbeatFrequency=120 ConfigFrequency=300 DataSenderFrequency=30 StartPollers=5 JavaGateway=192.168.64.111 # java gateway地址 JavaGatewayPort=10052 # 端口 StartJavaPollers=3 # 进程数量 SNMPTrapperFile=/var/log/snmptrap/snmptrap.log CacheSize=256M HistoryCacheSize=128M HistoryIndexCacheSize=128M Timeout=30 ExternalScripts=/usr/lib/zabbix/externalscripts LogSlowQueries=3000 StatsAllowedIP=127.0.0.1
agent配置
[root@master-3 ~]# grep "^[a-Z]" /etc/zabbix/zabbix_agent2.conf PidFile=/var/run/zabbix/zabbix_agent2.pid LogFile=/var/log/zabbix/zabbix_agent2.log LogFileSize=512 Server=192.168.64.111,192.168.64.112 # 允许获取数据的远端地址,基于被动模式 ServerActive=192.168.64.112 # proxy 地址,主动模式 Hostname=192.168.64.112 Include=/etc/zabbix/zabbix_agent2.d/*.conf ControlSocket=/tmp/agent.sock
添加主机

添加模板

本文来自博客园,作者:不会跳舞的胖子,转载请注明原文链接:https://www.cnblogs.com/rtnb/p/16325100.html

浙公网安备 33010602011771号