码迷,mamicode.com
首页 > Web开发 > 详细

zabbix监控websphere和weblogic

时间:2017-05-30 16:03:49      阅读:908      评论:0      收藏:0      [点我收藏+]

标签:close   服务器   参数   进程   文件   访问   lap   需要   class   

zabbix java gateway

zabbix通过JMX监控应用服务器。注意如果zabbix需要监控JMX应用的程序,在编译zabbix的时候就需要--enable-java,同时也需要安装配置好JDK。详见我之前的博客《zabbix安装配置》。

JMX(Java Management Extensions,即Java管理扩展)是一个为应用程序、设备、系统等植入管理功能的框架。JMX可以跨越一系列异构操作系统平台、系统体系结构和网络传输协议,灵活的开发无缝集成的系统、网络和服务管理应用。

Zabbix已经集成JMX,可以用Zabbix通过JMX监控JVM,TOMCAT,Weblogic,Jboss等。要使用Zabbix监控Weblogic,我们先要了解Zabbix的JMX监控架构,Weblogic的JMX信息,最后才能去实现怎么去配置监控和报警。

Zabbix是使用了一个叫做Java Gateway的应用去监控JMX的。Java Gateway集成在zabbix官方开发发布的。所以需要在编译安装zabbix server时,需要添加一个选项--enable-java。这样安装zabbix后在/usr/local/zabbix-3.0.1/sbin目录下会有个zabbix_java目录,这个目录里面就是zabbix Java gateway的文件。

技术分享

 

配置和运行java gateway

默认情况下,Java gateway监听10052端口. 如果你计划使用不同的端口来运行Java gateway,你需要通过setting.sh脚本指定下需要的端口。

启动:

./startup.sh

关闭:

./shutdown.sh

 

配置zabbix server使用java gateway

当前Java gateway已经运行,接下来你需要告诉Zabbix server如何找到Zabbix Java gateway. 因此你需要在 server配置文件 中指定JavaGateway及JavaGateway端口. 如果JMX应用采用Zabbix代理进行监控的话,你需要在 代理配置文件 中指定对应的连接参数。

默认情况下,server并不会派生出任何进程去进行JMX监控。如果你想使用完成JMX监控,你需要指定预派生出来的Java pollers进程数,你也可过同类的方式指定常见的pollers和trappers。

技术分享
# vim zabbix_server.conf
JavaGateway=172.16.7.151
JavaGatewayPort=10052
StartJavaPollers=5
zabbix_server.conf添加配置

在完成配置后,要重启server(或代理):

# killall -9 zabbix_server
# ./zabbix_server

 

调整java gateway的日志级别

万一Java gateway出现了若干问题,在前段可以看到的监控项报错信息并不充分,你也可以通过查看Java gateway日志文件获得更多信息。

默认情况下,Java gateway将记录日志到/tmp/zabbix_java.log文件中,log级别为”info”。有时你觉得”info”级别得到的信息并不够,你需要修改级别为”debug”。你可以通过修改lib/logback.xml将<root>标签更改为”debug”以获取日志级别的增加。

<root level="debug">
   <appender-ref ref="FILE" />
</root>

需要注意的是,并不像Zabbix server或proxy那样,修改完logback.xml并不需要重启Zabbix Java gateway. 修改后的配置将会自动被加载。当你完成了debugging,你可以将log级别替换为”info”。

 

监控weblogic

一、weblogic配置

1.如果是监控weblogic 的admin server: 编辑WL_DOMAIN_HOME/bin/setDomainEnv.sh,在文件结尾加入下面几行:

$ cd /opt/Oracle/Middleware/user_projects/domains/ids_domain/bin
$ vim setDomainEnv.sh

添加一句:

JAVA_OPTIONS="$JAVA_OPTIONS -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9997 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false"

然后在去启动weblogic。

 

2.如果是监控受管服务器: 进入weblogic控制台->环境->服务器->”你新增的服务器”->配置->服务器启动。在“参数”的输入框内输入:

-Dcom.sun.management.jmxremote.port=JMX_PORT -Djava.rmi.server.hostname=JMX_HOST -Dcom.sun.management.jmxremote.authenticate=false  -Dcom.sun.management.jmxremote.ssl=false -Djavax.management.builder.initial=weblogic.management.jmx.mbeanserver.WLSMBeanServerBuilder

然后控制台启动受管服务器。

技术分享

 

二、zabbix server添加监控weblogic主机

点击配置—>主机—>创建主机。

技术分享

输入主机信息,主要注意JMX的端口,点击添加。

技术分享

选择JMX模板。

技术分享

 

监控websphere

一、websphere配置

访问websphere控制台,点击 Server Types → WebSphere application servers → WAS_SERVER_NAME → Java and Process Management → Process definition → Java Virtual Machine.

在“Generic JVM arguments”增加下面环境变量:

-Djavax.management.builder.initial=

技术分享

点击 Server Types → WebSphere application servers → WAS_SERVER_NAME → Java and Process Management → Process definition → Java Virtual Machine → Custom properties. 增加下面几个环境变量:

Name: java.rmi.server.hostname
Value: JMX_HOST
Name: com.sun.management.jmxremote
Value: true
Name: com.sun.management.jmxremote.port
Value: JMX_PORT
Name: com.sun.management.jmxremote.ssl
Value: false
Name: com.sun.management.jmxremote.authenticate
Value: false

技术分享

重启server。

 

二、zabbix server添加监控websphere主机

点击配置—>主机—>创建主机。

技术分享

输入主机信息,主要注意JMX的端口,点击添加。

技术分享

zabbix监控websphere和weblogic

标签:close   服务器   参数   进程   文件   访问   lap   需要   class   

原文地址:http://www.cnblogs.com/zhaojiankai/p/6920149.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!