【发布时间】:2023-03-14 18:48:01
【问题描述】:
如何在远程 nagios 服务器中使用 JMX 监控 tomcat 服务器?
【问题讨论】:
如何在远程 nagios 服务器中使用 JMX 监控 tomcat 服务器?
【问题讨论】:
客户端配置:创建setenv.sh文件并在文件上执行chmod 755并将其复制到客户端计算机上的/usr/share/tomcat7/bin/或tomcat安装文件夹中。
现在将这些行复制到其中:
CATALINA_OPTS="-Dcom.sun.management.jmxremote \
-Dcom.sun.management.jmxremote.port=<unusedJmxPort> \
-Dcom.sun.management.jmxremote.ssl=false \
-Dcom.sun.management.jmxremote.authenticate=false \
-Dcom.sun.management.jmxremote.rmi.port=9<same above port> \
-Djava.rmi.server.hostname= <public ip of this host> \
-Djava.awt.headless=true -server"
保存此文件并重新启动tomcat,并确保上面指定的jmx端口向内和向外打开。
Nagios 机器的配置: 转到安装 jmx 插件的目录,即 libexec 并测试以下行:
./check_jmx -U service:jmx:rmi:///jndi/rmi://<public ip of client>:<port specified on client>/jmxrmi -O java.lang:type=Memory -A HeapMemoryUsage -K used -I HeapMemoryUsage -J used -vvvv -w 10737418240 -c 20401094656
我已经用 java 7 检查了这个。
现在您可以在监控机器上的相应配置文件中声明相同的命令和服务器配置。只要确保 checkJmx 插件具有 root 权限即可。
【讨论】: