设为首页 收藏本站
查看: 2607|回复: 0

[经验分享] Zabbix 监控 Weblogic

[复制链接]

尚未签到

发表于 2019-1-17 12:52:29 | 显示全部楼层 |阅读模式
  概述:
JMX(Java Management Extensions,即Java管理扩展)是一个为应用程序、设备、系统等植入管理功能的框架。JMX可以跨越一系列异构操作系统平台、系统体系结构和网络传输协议,灵活的开发无缝集成的系统、网络和服务管理应用。

使用zabbix监控weblogic是通过JMX agent(zabbix-java-gateway) 获取JVM MBean 信息。
  环境:
Centos7 + Zabbix 3.4 + Weblogic 10.3.6
  一、部署zabbix-server ,zabbix-agent, zabbix-java-gateway

1. 部署LAMP或LNMP 环境
此处略去,网上部署教程很多
2. 安装zabbix server , zabbix agent , zabbix-java-gateway
yum install epel-release
rpm --import http://repo.zabbix.com/RPM-GPG-KEY-ZABBIX
rpm -Uv http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm
yum install zabbix-server zabbix-agent zabbix-java-gateway zabbix-web-mysql
也可以通过源码方式安装参考官方文档
3. 配置zabbix-server 支持JMX
# grep '^[^#]' /etc/zabbix/zabbix_server.conf
LogFile=/var/log/zabbix/zabbix_server.log
LogFileSize=0
PidFile=/var/run/zabbix/zabbix_server.pid
SocketDir=/var/run/zabbix
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
DBPort=3306
JavaGateway=192.168.154.130
JavaGatewayPort=10052
StartJavaPollers=5
SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
Timeout=4
AlertScriptsPath=/usr/lib/zabbix/alertscripts
ExternalScripts=/usr/lib/zabbix/externalscripts
LogSlowQueries=3000
4. 配置zabbix_java_gateway.conf  
# grep '^[^#]' /etc/zabbix/zabbix_java_gateway.conf
LISTEN_IP="0.0.0.0"
LISTEN_PORT=10052
PID_FILE="/var/run/zabbix/zabbix_java.pid"
START_POLLERS=5
TIMEOUT=3
配置完成后就启动zabbix-server 和 zabbix-java-gateway了
# systemctl start zabbix-server.service
# systemctl start zabbix-java-gateway.service
  二、开始JMX
  使用JMX前需要先开启JMX,默认是关闭的,在启动JAVA程序时,如何开始请参考官方文档
https://docs.oracle.com/javase/1.5.0/docs/guide/management/agent.html
  下面介绍几种常用的JAVA容器的JMX开启方式:


  • Tomcat  编辑TOMCAT_HOME/bin/catalina.sh 在开头加入如下几行
  CATALINA_OPTS="${CATALINA_OPTS} -Djava.rmi.server.hostname=JMX_HOST"       # 修改 JMX_HOST
CATALINA_OPTS="${CATALINA_OPTS} -Djavax.management.builder.initial="  
CATALINA_OPTS="${CATALINA_OPTS} -Dcom.sun.management.jmxremote=true"  
CATALINA_OPTS="${CATALINA_OPTS} -Dcom.sun.management.jmxremote.port=JMX_PORT"    # 修改JMS PORT
CATALINA_OPTS="${CATALINA_OPTS} -Dcom.sun.management.jmxremote.ssl=false"  
CATALINA_OPTS="${CATALINA_OPTS} -Dcom.sun.management.jmxremote.authenticate=false"
  重启tomcat 服务就可以了


  • Weblogic 编辑WL_DOMAIN_HOME/bin/setDomainEnv.cmd,在文件结尾加入下面几行
  JAVA_OPTIONS="${JAVA_OPTIONS} -Djava.rmi.server.hostname=JMX_HOST"
JAVA_OPTIONS="${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=JMX_PORT"
JAVA_OPTIONS="${JAVA_OPTIONS} -Dcom.sun.management.jmxremote.ssl=false"
JAVA_OPTIONS="${JAVA_OPTIONS} -Dcom.sun.management.jmxremote.authenticate=false"
  重启weblogic 服务就可以了
  三、测试和查看JMX的配置和状态信息
  JMX开启后,我们就可以通过相关的工具去查看JMX内的状态信息了,通常可以使用JDK的jconsole程序查看,对于weblogic它自带了一些工具也可以查看,可以参考官方文档。
http://docs.huihoo.com/oracle/middleware/fusion/11g/apirefs.1111/e13951/core/index.html
另外还有一个叫cmdline-jmxclient-0.10.3.jar的工具也可以非常方便的查看这些信息
  本文使用cmdline-jmxclient-0.10.3.jar工具查看
  java -jar jmxcmd.jar - JMX_HOST:JMX_PORT | grep JDBC   查看JDBC 有哪些MBean,下面简单列出一些MBean
  com.bea:Name=library,ServerRuntime=paic_App01,Type=JDBCConnectionPoolRuntime
com.bea:Name=paic_App01,ServerRuntime=paic_App01,Type=JDBCServiceRuntime
  java -jar jmxcmd.jar - JMX_HOST:JMX_PORT com.bea:Name=library,ServerRuntime=paic_App01,Type=JDBCConnectionPoolRuntime
查看JDBCConnectionPoolRuntime 下有哪些  Attributes
  四、配置zabbix Item


  •   配置一个 jmx interface


  • 配置一个weblogic iteam

  JMX Iteam 配置格式:jmx[object_name,attribute_name]
这里的object_name 就是java -jar jmxcmd.jar - JMX_HOST:JMX_PORT 查询出来的MBean 如com.bea:Name=library,ServerRuntime=paic_App01,Type=JDBCConnectionPoolRuntime
  attribute_name 就是 java -jar jmxcmd.jar - JMX_HOST:JMX_PORT com.bea:Name=library,ServerRuntime=paic_App01,Type=JDBCConnectionPoolRuntime 查询出来的属性
  完整的例子:jmx["com.bea:Name=ThreadPoolRuntime,ServerRuntime=App01,Type=ThreadPoolRuntime","QueueLength"]
  至此 zabbix 监控 weblogic 配置完成, 此次配置也是参考了很多文档,折腾了一个中午,所以写个博客记录一下配置过程。




运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-664419-1-1.html 上篇帖子: zabbix 图像显示 Grafana 下篇帖子: 升级Zabbix2.4.5到Zabbix3.0.2
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表