栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

@Zabbix使用JMX监控Tomcat

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

@Zabbix使用JMX监控Tomcat

文章目录
    • 一、zabbix部署安装
      • 二、服务端部署
      • 三、客户端部署
      • 四、监控项测试
        • 1、jmx获取内存

一、zabbix部署安装

【zabbix5.0部署安装】

二、服务端部署

zabix服务端安装Java工具

#下载安装包
 wget http://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-java-gateway-5.0.17-1.el7.x86_64.rpm

#安装zabbix-java-gateway
yum localinstall zabbix-java-gateway-5.0.17-1.el7.x86_64.rpm


#配置文件修改zabbix-server
vim zabbix_server.conf 
JavaGateway=127.0.0.1   #指定java gateway的地,zabbix-java-gateway安装在了zabbix-server上,所以使用本地地址
JavaGatewayPort=10052   #指定java gateway的服务器监听端口,端口号和javagateway要对应
StartJavaPollers=5      #启动多少个进程去轮训 java gateway, 要和java gateway的配置一致
Timeout=30              #启动多少个进程去轮训 java gateway, 要和java gateway的配置一致



#配置文件修改 zabbix_java_gateway
vim zabbix_java_gateway.conf 
LISTEN_IP="0.0.0.0"     #监听的地址默认是0.0.0.0,表示监听本机的所有地址
LISTEN_PORT=10052       #监听的端口
PID_FILE="/var/run/zabbix/zabbix_java.pid"     #指定pid文件
START_POLLERS=5         #启动的工作线程数量,默认是5个。这里配置和serve.conf一样
TIMEOUT=20              #连接超时时长,默认是3秒,因此JAVA程序比较慢,如果超时时间太短,会导致数据获取不到




#启动服务
systemctl restart zabbix-server      #重启zabbix-server

systemctl start zabbix-java-gateway  #启动zabbix-java-gateway
systemctl enable zabbix-server       #加入开机自启




#检查服务
netstat -lntp |grep java
tcp6       0      0 :::10052                :::*                    LISTEN      1413/java    
三、客户端部署

【Tomcatx下载地址】

#查看是否安装
java -version
yum -y remove java-*
#查看库
yum -y list java*
#jdk环境安装
yum -y install java-1.8.0-openjdk*


#Tomcat安装(安装步骤)
1、首先确保已经安装好了jdk,并且jdk版本能够满足当前Tomcat的版本要求
2、解压缩:tar -zxvf apache-tomcat-9.0.7.tar.gz
3、将tomcat移到安装软件位置:mv apache-tomcat-9.0.7 /usr/local/



#环境变量配置
vim /etc/profile
export CATALINA_HOME=/usr/local/apache-tomcat-9.0.7




#重载配置
source /etc/profile


#字符集配置(找到配置8080端口的位置,在节点末尾添加URIEncoding="UTF-8")
vim /usr/local/apache-tomcat-9.0.7/conf/server.xml

#启动及停止tomcat
/usr/local/apache-tomcat-9.0.7/bin/startup.sh       #启动
/usr/local/apache-tomcat-9.0.7/bin/shutdown.sh      #停止




#检查状态
[root@agent ~]# netstat -lntp |grep java
tcp6       0      0 :::40994                :::*                    LISTEN      2414/java           
tcp6       0      0 127.0.0.1:8005          :::*                    LISTEN      2414/java           
tcp6       0      0 :::8009                 :::*                    LISTEN      2414/java           
tcp6       0      0 :::9999                 :::*                    LISTEN      2414/java           
tcp6       0      0 :::8080                 :::*                    LISTEN      2414/java 





#配置JMX( 添加以下,获取tomcat服务器的IP地址)
vim /usr/local/apache-tomcat-9.0.7/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=本机IP地址"    #客户端地址



#端口配置(暴露一个端口给zabbix获取数据)
 vim /usr/local/apache-tomcat-9.0.7/conf/server.xml      
  

#重启tomcat
/usr/local/apache-tomcat-9.0.7/bin/shutdown.sh      #停止
/usr/local/apache-tomcat-9.0.7/bin/startup.sh       #启动





#检查状态jmx状态
netstat -lntp |grep 8888
tcp6       0      0 :::8888                 :::*                    LISTEN      40961/java 
#测试:
#下载catalina-jmx-remote.jar包,到tomcat安装目录下的lib目录
wget -O /usr/local/apache-tomcat-9.0.7/lib/catalina-jmx-remote.jar http://archive.apache.org/dist/tomcat/tomcat-8/v8.0.23/bin/extras/catalina-jmx-remote.jar



#重启tomcat(以防万一)
/usr/local/apache-tomcat-9.0.7/bin/shutdown.sh      #停止
/usr/local/apache-tomcat-9.0.7/bin/startup.sh       #启动




#监控测试
1、下载cmdline-jmxclient-0.10.3.jar文件,下载地址:http://crawler.archive.org/cmdline-jmxclient/downloads.html
2、本地执行如下命令查看tomcat的堆内存信息,如下所示
java -jar cmdline-jmxclient-0.10.3.jar - 127.0.0.1:8888 java.lang:type=Memory HeapMemoryUsage
10/26/2021 10:06:30 +0800 org.archive.jmx.Client HeapMemoryUsage: 
committed: 24461312
init: 16777216
max: 247332864
used: 18623984
四、监控项测试 1、jmx获取内存
#Tomcat本地查看堆内存信息
java -jar cmdline-jmxclient-0.10.3.jar controlRole:tomcat 127.0.0.1:8888 java.lang:type=Memory HeapMemoryUsage
10/26/2021 10:08:09 +0800 org.archive.jmx.Client HeapMemoryUsage: 
committed: 24461312
init: 16777216
max: 247332864
used: 19293056




#zabbix监控堆内存键值
堆内存最大值: jmx["java.lang:type=Memory","HeapMemoryUsage.max"]
已用堆内存:  jmx["java.lang:type=Memory","HeapMemoryUsage.used"]
已提交堆内存: jmx["java.lang:type=Memory","HeapMemoryUsage.committed"]

主机添加

监控项添加

图形添加使用

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/351370.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号