zabbix监控tomcat

服务端配置修改
  1. 编译zabbix的时候需要添加参数--enable-java

--enable-java

  1. 修改zabbix_java配置文件

vim /usr/local/zabbix-2.4.6/sbin/zabbix_java/settings.sh

LISTEN_IP="0.0.0.0"

LISTEN_PORT=10052

PID_FILE="/tmp/zabbix_java.pid"

START_POLLERS=5

  1. 修改zabbix_server配置文件

vim /usr/local/zabbix-2.4.6/etc/zabbix_server.conf

JavaGateway=127.0.0.1

JavaGatewayPort=10052

StartJavaPollers=5

  1. 启动zabbix_java

/usr/local/zabbix-2.4.6/sbin/zabbix_java/startup.sh

客户端配置修改
  1. 下载catalina-jmx-remote.jar文件放到/usr/local/tomcat-7.0.67/lib/目录下
  2. 修改tomcat server.xml 配置文件,添加如下内容

<Listener className="org.apache.catalina.mbeans.JmxRemoteLifecycleListener" rmiRegistryPortPlatform="12345" rmiServerPortPlatform="12346" />

12345端口可以按需要修改

  1. 修改 tomcat/bin 目录下 catalina.sh,添加如下内容

CATALINA_OPTS="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Djava.rmi.server.hostname=192.168.0.132"

hostname的IP地址为客户端IP地址

  1. 下载cmdline-jmxclient-0.10.3.jar抓取信息

java -jar cmdline-jmxclient-0.10.3.jar - 127.0.0.1:12345 java.lang:type=Memory NonHeapMemoryUsage(本机测试)

java -jar cmdline-jmxclient-0.10.3.jar - 192.168.0.132:12345 java.lang:type=Memory NonHeapMemoryUsage(远程测试)

相关命令
  1. 可查看所有的监控类型

java -jar cmdline-jmxclient-0.10.3.jar - 192.168.0.132:12345 |sort

  1. 查看OperatingSystem(系统信息)类型中的参数

java -jar cmdline-jmxclient-0.10.3.jar - 127.0.0.1:12345 java.lang:type=OperatingSystem

java -jar cmdline-jmxclient-0.10.3.jar - 127.0.0.1:12345 java.lang:type=Memory(内存)

zabbix监控JMX(tomcat)

tomcat安装目录下的bin目录中有一个catalina.sh,修改其java_opts设置

vim /uc/tomcat/bin/catalina.sh

JAVA_OPTS="-Xms8192m -Xmx8192m -Xss1024K -XX:PermSize=256m -XX:MaxPermSize=256m"

#CATALINA_OPTS="$CATALINA_OPTS -Djava.awt.headless=true"

CATALINA_OPTS="$CATALINA_OPTS -Djava.awt.headless=true \

-Djava.rmi.server.hostname=10.0.2.16 \

-Dcom.sun.management.jmxremote \

-Dcom.sun.management.jmxremote.port=12346 \

-Dcom.sun.management.jmxremote.authenticate=true \

-Dcom.sun.management.jmxremote.password.file=/usr/java/jdk1.6.0_45/jre/lib/management/jmxremote.password \

-Dcom.sun.management.jmxremote.access.file=/usr/java/jdk1.6.0_45/jre/lib/management/jmxremote.access \

-Dcom.sun.management.jmxremote.ssl=false "

CATALINA_OPTS="-Dcom.sun.management.jmxremote \

-Dcom.sun.management.jmxremote.port=9999 \

-Dcom.sun.management.jmxremote.authenticate=false \

-Dcom.sun.management.jmxremote.ssl=false \

-Djava.rmi.server.hostname=10.0.1.222 "

zabbix监控JMX(jboss)

在jboss安装目录下的bin目录有一个run.sh文件,更改其JAVA_OPTS设置即可

vim /uc/jboss-5.1.0.GA/bin/run.sh

if [ "$linux" = "true" ]; then

#JAVA_OPTS="$JAVA_OPTS -Djava.net.preferIPv4Stack=true"

JAVA_OPTS="$JAVA_OPTS -Djava.net.preferIPv4Stack=true

-Djava.rmi.server.hostname=10.0.2.17 \

-Dcom.sun.management.jmxremote \

-Dcom.sun.management.jmxremote.port=12345 \

-Dcom.sun.management.jmxremote.authenticate=true \

-Dcom.sun.management.jmxremote.password.file=/usr/java/jdk1.6.0_45/jre/lib/management/jmxremote.password \

-Dcom.sun.management.jmxremote.access.file=/usr/java/jdk1.6.0_45/jre/lib/management/jmxremote.access \

-Dcom.sun.management.jmxremote.ssl=false "

fi

上一篇:学会怎样使用Jsp 内置标签、jstl标签库及自定义标签


下一篇:使用ffmpeg进行视频封面截取