版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Zabbix通过JMX方式监控java中间件Zabbix2.0添加了支持用于监控JMX应用程序的服务进程,称为“Zabbix-Java-gateway”;它是用java写的一个程序。工作原理:zabbix_server想知道一台主机上的特定的JMX值时,它向Zabbix-Java-gateway询问,而Zabbix-Javagateway使用“JMXmanagementAPI”去查询特定的应用程序,而前提是应用程序这端在开启时需要“-Dcom.sun.management.jmxremote”参数来开启JMX查询就行了。Zabbixserver有一个特殊的进程用来连接Java-gateway叫
2、StartJavaPollers;Java-gateway通过配置文件中START_POLLERS参数设置启动多个线程,在zabbix服务器这边如果一个连接所用时间超过Timeout,将会被中断,但是Java-gateway将继续从JMXcounter取数据。所以StartJavaPollers设置的值要小于等于START_POLLERS设置的值。Zabbix-Java-gateway就相当于一个代理。一、 zabbix的JMX架构二、 服务端配置(zabbix_java_gateway)2.1. 确认已安装jdk# java -versionjava version "1.6.0_
3、22"Java(TM) SE Runtime Environment (build 1.6.0_22-b06)Java HotSpot(TM) 64-Bit Server VM (build 20.12-b01, mixed mode)出现此界面,说面jdk安装成功2.2. 安装zabbix-Java-gateway软件包在zabbix自带的有,目前暂时只支持从zabbix软件包中获得。安装Javagateway如果原来已经安装zabbix,只需要再添加以下zabbix-java# tar zxvf zabbix-2.2.0.tar.gz# cd zabbix-2.2.0# ./co
4、nfigure -enable-java -prefix=/opt/zabbix_java# make && make install2.3. 修改Java-gateway的配置文件在配置文件 settings.sh 中,可以配置以下参数:LISTEN_IP="" #监听地址LISTEN_PORT=10052 #监听端口START_POLLERS=5 # 开启的工作线程数(必须大于等于后面zabbix_server.conf文件的StartJavaPollers参数)2.4. 修改zabbix_server的配置文件为了支持java-gatew
5、ay, zabbix_server 或 zabbix_proxy 的配置文件中有以下内容需要配置:JavaGateway= # JavaGateway 服务器地址,zabbix_server与zabbix_java_gateway在同一台主机JavaGatewayPort=10052 #端口StartJavaPollers=5 # 从javaGateway采集数据的进程数 2.5. 启动java-gateway#cd /opt/zabbix_java_gateway/sbin/zabbix_java#./startup.sh#netstat tulnp |grep
6、 10052tcp 0 0 *:10052 *:* LISTEN 5011/java2.6. 重启zabbix_server#service zabbix_server restartzabbix_java_gatew
7、ay就配置好了。三、 客户端配置3.1. 添加参数开启JMX使用JMX前需要先开启JMX,默认是关闭的,在启动JAVA程序时,加入下面的参数,就可以开启JMX:想更多的了解这些参数,可以参考下面这个链接:3.2. 开启JMX,监控tomcat在 tomcat 下载页面 Extras 类别中下载 JMX-Remote.jar二进制包。放在 tomcat/lib 下面。# mv catalina-jmx-remote.jar /webapp/tomcat6/lib/3.2.1. 添加参数,开启JMX修改 tomcat/bin 目录下 catalina.sh ,添加以下内容:CATALI
8、NA_OPTS="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=fa lse-Djava.rmi.server.hostname=客户端ip地址"3.2.2. 启动tomcat # cd /usr/local/tomcat/bin/# ./startup.sh下载cmdline-jmxclient-0.10.3.jar文件测试是否能够取得数据#java -jar cmdline-j
9、mxclient-0.10.3.jar -localhost:12345 java.lang:type=Memory NonHeapMemoryUsage01/26/2014 11:55:55 +0800 org.archive.jmx.Client NonHeapMemoryUsage:committed: 52690944init: 24313856max: 136314880 used: 524547763.2.3. 导入模板成功后可以看到模板custom Tomcat(有朋友提供了一个更好的tomcat模板)以获取tomcat使用内存模板为例如下图关联模板完成后可见:3.2.
10、4. 添加端口设置jmx ip地址及端口成功后会显示JMX图标变绿,表示可用3.2.5. 出图3.3. 开启JMX,监控weblogic 3.3.1. 添加参数,开启JMX编辑WL_DOMAIN_HOME/bin/setDomainEnv.sh,在文件结尾加入下面几行:# vi /root/Oracle/Middleware/user_projects/domains/base_domain/bin/ setDomainEnv.shJAVA_OPTIONS="$JAVA_OPTIONS -Djava.rmi.server.hostname=客户端ip地址" JAVA_OPT
11、IONS="$JAVA_OPTIONS -Djavax.management.builder.initial=weblogic.management.jmx.mbeanserver.WLSMBeanServerBuilder"JAVA_OPTIONS="$JAVA_OPTIONS -Dcom.sun.management.jmxremote=true"JAVA_OPTIONS="$JAVA_OPTIONS -Dcom.sun.management.jmxremote.port=端口" #默认12345JAVA_OPTIONS=&quo
12、t;$JAVA_OPTIONS -Dcom.sun.management.jmxremote.ssl=false"JAVA_OPTIONS="$JAVA_OPTIONS -Dcom.sun.management.jmxremote.authenticate=false"export JAVA_OPTIONS3.3.2. 启动weblogic#./ stopWebLogic.sh#./ startWebLogic.sh# ps -ef | grep AdminServer | grep -v greproot 29552 29505 0 19:45 ? 00:00:
13、22 /usr/java/jdk1.6.0_30/bin/java -client -Xms256m -Xmx512m -XX:CompileThreshold=8000 -XX:PermSize=128m -XX:MaxPermSize=256m -Dweblogic.Name=AdminServer -Djava.security.policy=/root/Oracle/Middleware/wlserver_10.3/server/lib/weblogic.policy -Xverify:none -da -Dplatform.home=/root/Oracle/Middleware/w
14、lserver_10.3 -Dwls.home=/root/Oracle/Middleware/wlserver_10.3/server -Dweblogic.home=/root/Oracle/Middleware/wlserver_10.3/server -Dweblogic.management.discover=true -Dwlw.iterativeDev= -Dwlw.testConsole= -Dwlw.logErrorsToConsole= -Dweblogic.ext.dirs=/root/Oracle/Middleware/patch_wls1036/profiles/de
15、fault/sysext_manifest_classpath:/root/Oracle/Middleware/patch_ocp371/profiles/default/sysext_manifest_classpath -Djava.rmi.server.hostname=46 -Djavax.management.builder.initial=weblogic.management.jmx.mbeanserver.WLSMBeanServerBuilder -Dcom.sun.management.jmxremote=true -Dcom.sun.managemen
16、t.jmxremote.port=12345 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false weblogic.Server3.3.3. 添加模板关联自带模板TemplateJMXGeneric设置jmx ip地址及端口完成成功后会显示JMX图标变绿,表示可用3.3.4. 出图四、 几种常用的JAVA容器的JMX开启方式4.1. Apache Tomcat如果是windows版本,编辑TOMCAT_HOME/bin/catalina.bat,在开头加入下面几行:
17、set CATALINA_OPTS=%CATALINA_OPTS% -Djava.rmi.server.hostname=JMX_HOSTset CATALINA_OPTS=%CATALINA_OPTS% -Djavax.management.builder.initial=set CATALINA_OPTS=%CATALINA_OPTS% -Dcom.sun.management.jmxremote=trueset CATALINA_OPTS=%CATALINA_OPTS% -Dcom.sun.management.jmxremote.port=JMX_PORTset CATALINA_OP
18、TS=%CATALINA_OPTS% -Dcom.sun.management.jmxremote.ssl=falseset CATALINA_OPTS=%CATALINA_OPTS% -Dcom.sun.management.jmxremote.authenticate=false如果是linux版本,编辑TOMCAT_HOME/bin/catalina.sh,在开头加入下面几行:CATALINA_OPTS=$CATALINA_OPTS -Djava.rmi.server.hostname=JMX_HOST CATALINA_OPTS=$CATALINA_OPTS -Djavax.manag
19、ement.builder.initial= CATALINA_OPTS=$CATALINA_OPTS -Dcom.sun.management.jmxremote=true CATALINA_OPTS=$CATALINA_OPTS -Dcom.sun.management.jmxremote.port=JMX_PORT CATALINA_OPTS=$CATALINA_OPTS -Dcom.sun.management.jmxremote.ssl=false CATALINA_OPTS=%CATALINA_OPTS -Dcom.sun.management.jmxremote.authenti
20、cate=false注意JMX_HOST为tomcat的主机名或IP地址,JMX_PORT为JMX端口,通常使用12345,然后重启tomcat,JMX就开启了。4.2. IBM WebSphere AS进入WebSphere Administrative Console open Servers Server Types WebSphere application servers WAS_SERVER_NAME Java and Process Management Process definition Java Virtual Machine.在“Generic JVM arguments
21、”增加下面环境变量:-Djavax.management.builder.initial=然后再进入 WebSphere Administrative Console, open Servers Server Types WebSphere application servers WAS_SERVER_NAME Java and Process Management Process definition Java Virtual Machine Custom properties.增加下面几个环境变量:Name: java.rmi.server.hostnameValue: JMX_HOSTN
22、ame: javax.management.builder.initialValue: noneName: com.sun.management.jmxremoteValue: trueName: com.sun.management.jmxremote.portValue: JMX_PORTName: com.sun.management.jmxremote.sslValue: falseName: com.sun.management.jmxremote.authenticateValue: false应用更改,重启应用就开启了。4.3. Oracle GlassFish AS进入Glas
23、sFish Console, open GAS_CONFIG JVM Settings JVM Options.加入下面的环境变量到“JVM options”:Value: -Djava.rmi.server.hostname=JMX_HOSTValue: -Dcom.sun.management.jmxremote=trueValue: -Dcom.sun.management.jmxremote.port=JMX_PORTValue: -Dcom.sun.management.jmxremote.ssl=falseValue: -Dcom.sun.management.jmxremote.
24、authenticate=false重启就开启了。4.4. Oracle WebLogic 11g (10.23.x) and 12c (12.1.x)对于windows的版本,编辑WL_DOMAIN_HOME/bin/setDomainEnv.cmd,在文件结尾加入下面几行:set JAVA_OPTIONS=%JAVA_OPTIONS% -Djava.rmi.server.hostname=JMX_HOSTset JAVA_OPTIONS=%JAVA_OPTIONS% -Djavax.management.builder.initial=weblogic.management.jmx.mbe
25、anserver.WLSMBeanServerBuilder set JAVA_OPTIONS=%JAVA_OPTIONS% -Dcom.sun.management.jmxremote=trueset JAVA_OPTIONS=%JAVA_OPTIONS% -Dcom.sun.management.jmxremote.port=JMX_PORTset JAVA_OPTIONS=%JAVA_OPTIONS% -Dcom.sun.management.jmxremote.ssl=falseset JAVA_OPTIONS=%JAVA_OPTIONS% -Dcom.sun.management.j
26、mxremote.authenticate=false对于Linux的版本,编辑WL_DOMAIN_HOME/bin/setDomainEnv.sh,在文件结尾加入下面几行:JAVA_OPTIONS="$JAVA_OPTIONS -Djava.rmi.server.hostname=客户端ip地址" JAVA_OPTIONS="$JAVA_OPTIONS -Djavax.management.builder.initial=weblogic.management.jmx.mbeanserver.WLSMBeanServerBuilder"JAVA_OPT
27、IONS="$JAVA_OPTIONS -Dcom.sun.management.jmxremote=true"JAVA_OPTIONS="$JAVA_OPTIONS -Dcom.sun.management.jmxremote.port=JMX_PORT" JAVA_OPTIONS="$JAVA_OPTIONS -Dcom.sun.management.jmxremote.ssl=false"JAVA_OPTIONS="$JAVA_OPTIONS -Dcom.sun.management.jmxremote.authent
28、icate=false"export JAVA_OPTIONS注意JMX_HOST为weblogic的主机名或IP地址,JMX_PORT为JMX端口,通常使用12345,然后重启weblogic,JMX就开启了。如果你的应用不是布署在默认的应用服务器上,而是新增了一个应用服务器布署的话,应该使用下面这个方法:进入weblogic控制台->环境->服务器->”你新增的服务器”->配置->服务器启动。在“参数”的输入框内输入:-Dcom.sun.management.jmxremote.port=JMX_PORT -Djava.rmi.server.host
29、name=JMX_HOST -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Djavax.management.builder.initial=weblogic.management.jmx.mbeanserver.WLSMBeanServerBuilder然后保存,激活更改,再重启这个应用服务器就开启JMX了。五、 测试和查看JMX的配置和状态信息JMX开启后,我们就可以通过相关的工具去查看JMX内的状态信息了,通常可以使用JDK的jconsol
30、e程序查看,对于weblogic,它自带了一些工具也可以查看,可以参考官方文档(5.1. 使用JDK的jconsole程序查看jconsole在JDK_HOME/bin下面,打开它,输入服务器的IP和端口就可以连接了:com.bea下面都是Weblogic相关的信息,其它为JVM级别的信息。应用服务器下的ServerRuntime这个Mbeans就是WEBLOGIC这个应用服务器的实时状态息。5.2. 使用cmdline-jmxclient-0.10.3.jar工具查看cmdline-jmxclient-0.10.3.jar是一个非常方便的查看程序,它的下载地址为:http:/crawler.
31、/cmdline-jmxclient/使用方法:Usage: java -jar cmdline-jmxclient.jar USER:PASS HOST:PORT BEAN COMMAND如查看服务器所有Mbeans的信息:java -jar cmdline-jmxclient-0.10.3.jar :12345这个命令会输出所有的Mbeans,它能方便我们查找需要的Mbeans,如我们相查找和JDBC相关的Mbens,可以使用命令:java -jar cmdline-jmxclient-0.10.3.jar :12345 | gre
32、p JDBC如查看JDBCConnectionPoolRuntime的信息:java -jar cmdline-jmxclient-0.10.3.jar - :12345 com.bea:Name=fftdb,ServerRuntime=shfft,Type=JDBCConnectionPoolRuntimejava -jar cmdline-jmxclient-0.10.3.jar :12345 com.bea:Name=fftdb,ServerRuntime=shfft,Type=JDBCConnectionPoolRuntime ActiveConnectionsCurrentCount其中com.bea:Name=fftdb,ServerRuntime=shfft,Type=JDBCConnectionPoolRuntime是Mbeans名,ActiveConnectionsCurrentCount为这个Mbeans下的一个属性。六、 Weblogic的常用性能指标JMSRuntimeJMSServersC
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 工业制造物流智能化改造方案
- 食品安全追溯系统建设及运营合同
- 智能智能旅游服务预订系统开发合同
- 石油化工项目管理合同
- 专业发型师课程学习风险告知
- 上市公司股东协议书常见问题
- 餐饮股份的协议书2025年
- 双方租赁合同
- 农业生产融合发展模式作业指导书
- 车辆销售与售后服务协议
- GB/T 42449-2023系统与软件工程功能规模测量IFPUG方法
- 酒店装修工程预算表EXCEL模板(推荐)
- NY 5052-2001无公害食品海水养殖用水水质
- 【讲座】2020年福建省高职分类考试招生指导讲座
- 性格决定命运课件
- 学习会计基础工作规范课件
- 双面埋弧焊螺旋钢管公称外公壁厚和每米理论重量
- 富士施乐VC2265打印机使用说明SPO
- 服务态度决定客户满意度试题含答案
- 教科版四年级科学上册全册复习教学设计及知识点整理
- 重庆万科渠道制度管理办法2022
评论
0/150
提交评论