配置简介
使用Zabbix监控中间件Weblogic通常有两种途径:JMX和SNMP。
本次使用JMX方式对weblogic进行监控,该种方式需要修改weblogic server的启动配置,启用JMX和MBEAN支持,因此在zabbix中配置的一个主机对应的是weblogic服务器上的一个server,如果该服务器上有多个server需要监控,将在zabbix中体现为多个主机。
同时,对于WEBLOGIC SERVER版本的监控目前使用JMX无法获取,需要使用SNMP方式实现,因此对于一个WEBLOGIC SERVER的监控需要添加JMX和SNMP两种接口。
注:理论上使用SNMP可以获取weblogic的所有信息,也就是理论上jmx监控的部分可以使用snmp实现,但由于weblogic的SNMP OID组织方式问题,实现起来存在很多问题,因此本次大部分监控项采用了zabbix已经集成的JMX来实现。
配置步骤
Weblogic启用SNMP
登录监控目标的weblogic服务器管理控制台web界面,导航到SNMP,点击域范围的SNMP代理,比如此处的cxbjdomain8740,点击该代理进入进行配置:
如上面两图,修改SNMP UDP 端口和主要 AgentX 端口,本次配置在默认161和175前添加了11(需要确认使用的端口当前未被占用,测试过程中使用默认的161和175无法成功,因此修改为大于1024的端,且可以正常配置完成并使用)。其它参数无需修改。
SNMP启用虽然提示无需重启server,但实际配置过程中需要重启admin server才可以生效。
启用JMX支持
为待监控的server添加JMX支持以及启用MBEAN,需要重启对应的server。
修改启动文件,增加启动参数,具体配置方式可以咨询中间件工程师
增加的具体参数如下:
-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=10060 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Djavax.management.builder.initial=weblogic.management.jmx.mbeanserver.WLSMBeanServerBuilder
修改完成配置文件后,重新启动对应的server,此处使用了10060端口用来进行JMX监控。
配置zabbix界面进行weblogic监控
在zabbix server服务器的/tmp目录下已经上传了jmx测试的工具,可以使用命令进行监控,
CD到/tmp目录下,然后使用类似下面的命令进行测试
创建主机
需要为主机添加JMX和SNMP两个接口,且一个主机对应weblogic的一个server,输入ip地址即可。
为主机添加监控模板Template Weblogic JMX:
为主机配置宏变量,server名称:
为主机创建单独的version监控项
由于使用jmx未发现获取version的方法,因此使用snmp获取版本信息,需要为主机单独添加一个ITEM监控项。
首先登录zabbix服务器,使用snmpwalk命令获取版本对应的OID值:
[root@zabbix-server01 ~]# snmpwalk -v2c -c public 10.100.69.10:11161 .1.3.6.1.4.1.140.625.360.1.65.16SNMPv2-SMI::enterprises.140.625.360.1.65.16.162.14.60.50.7.159.36.242.211.12.129.113.40.56.142.227 = STRING: "WebLogic Server Temporary Patch for BUG29694149 Thu Apr 25 12:17:13 PDT 2019WebLogic Server 10.3.6.0.190416 PSU Patch for BUG29204678 Mon Feb 4 02:06:33 PST 2019WebLogic Server 10.3.6.0 Tue Nov 15 08:52:36 PST 2011 1441050"SNMPv2-SMI::enterprises.140.625.360.1.65.16.166.40.105.37.105.31.11.122.53.212.72.192.250.244.160.246 = STRING: "WebLogic Server Temporary Patch for BUG29694149 Thu Apr 25 12:17:13 PDT 2019WebLogic Server 10.3.6.0.190416 PSU Patch for BUG29204678 Mon Feb 4 02:06:33 PST 2019WebLogic Server 10.3.6.0 Tue Nov 15 08:52:36 PST 2011 1441050"
可以看到目前获取到了两条信息,分别对应了admin server和我们要监控的server,命令行中的OID是整个OID前半部分,输出中红色部分的OID是每个SERVER的索引,和起来就是整个OID。因此要获取的OID是两部分组合,通过下图可以看到要监控的8741server对应的索引是162开头的那一个,因此8741这个server版本信息的OID是:.1.3.6.1.4.1.140.625.360.1.65.16.162.14.60.50.7.159.36.242.211.12.129.113.40.56.142.227
然后使用完整的OID再次通过命令测试是否可以获取版本信息:
Web界面为主机创建监控项(由于每个主机不一样,该监控项不存在于模板中)
验证监控结果
过一段时间后在监控----最新数据中查看结果,如下图所示:
性能指标趋势图:
到这里就配置完成了,大家在配置中如有问题可随时在下方评论处留言哦[送心]关注我每天分享更多实用的运维知识[击掌]