20.zabbix监控jvm

zabbix监控jvm原理

zabbix-server 用C语言开发的,不能直接监控java服务

监控java服务则需要安装一个插件zabbix-java-gateway

监控流程:zabbix-server =》zabbix-java-gateway=》java

在zabbix-server上安装zabbix-java-gateway即可(java-gateway可以是独立安装)。

安装tomcat

安装jdk插件

powershell 复制代码
rpm -ivh jdk-8u321-linux-x64.rpm

安装tomcat,上传安装包,解压,启动即可。

powershell 复制代码
mkdir /app
tar xf apache-tomcat-8.0.27.tar.gz -C /app
/app/apache-tomcat-8.0.27/bin/startup.sh

浏览器访问192.168.111.13:8080

在zabbix-server机器下载安装zabbix-java-gateway

清华源下载链接即可

powershell 复制代码
https://mirrors.tuna.tsinghua.edu.cn/zabbix/zabbix/3.0/rhel/7/x86_64/
wget https://mirrors.tuna.tsinghua.edu.cn/zabbix/zabbix/3.0/rhel/7/x86_64/zabbix-java-gateway-3.0.32-1.el7.x86_64.rpm
yum localinstall zabbix-java-gateway-3.0.32-1.el7.x86_64.rpm -y

修改zabbix_java_gateway.conf配置文件里面启动采集器的进程,我这里设置2(注意要和zabbix-server配置文件保持一致)

powershell 复制代码
vim /etc/zabbix/zabbix_java_gateway.conf

重启zabbix_java_gateway服务

powershell 复制代码
systemctl restart zabbix-java-gateway.service
systemctl enable zabbix-java-gateway.service

修改server配置文件两个参数,1是javagateway安装在哪个机器的IP地址。2配置采集进程与上面的保持一致。

vim /etc/zabbix/zabbix_server.conf

重启zabbix_server服务

powershell 复制代码
systemctl restart zabbix-server.service

tomcat开启jmx监控

关闭tomcat

powershell 复制代码
/app/apache-tomcat-8.0.27/bin/shutdown.sh

进入Tomcat/bin目录,修改catalina.sh,找到如下内容"#-----Execute The Requested Command",在其上添加以下配置,此配置不需要用户名、密码

powershell 复制代码
CATALINA_OPTS="$CATALINA_OPTS
-Dcom.sun.management.jmxremote
-Djava.rmi.server.hostname=192.168.111.13
-Dcom.sun.management.jmxremote.port=12345
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.authenticate=false"
#解释:
#ip是你要监控的tomcat所在服务器的ip地址
#端口号,是你要开启的监控端口号。
#ssl,false表示不使用ssl链接
#authenticate,false表示不使用监控,即不需要用户名和密码
修改配置文件添加信息,/app/apache-tomcat-8.0.27/bin/catalina.sh

启动tomcat

powershell 复制代码
/app/apache-tomcat-8.0.27/bin/startup.sh

查看状态

zabbix-server界面创建监控主机

给监控主机添加模板,添加即可

在(zabbix-server)安装java-gateway的机器命令行测试检测tomcat

注意:需要下载jmxcmd.jar包

powershell 复制代码
java -jar jmxcmd.jar - 192.168.111.13:12345 java.lang:type=Memory NonHeapMemoryUsage

测试取值成功

待完结,由于zabbix4.0自带的jmx模板无法监控tomcat

相关推荐
仙柒41521 分钟前
Docker原理
运维·docker·容器
Dicky-_-zhang4 小时前
消息队列Kafka/RocketMQ选型与高可用架构:从单体到100万TPS的演进
java·jvm
2301_781571424 小时前
Golang格式化输出占位符都有什么_Golang fmt占位符教程【通俗】
jvm·数据库·python
米高梅狮子5 小时前
第2章 docker容器
运维·docker·云原生·容器·架构·kubernetes·自动化
kidwjb5 小时前
信号量在进程中的使用
linux·进程间通信
闵孚龙5 小时前
Claude Code Ultraplan 远程多代理规划全解析:AI Agent、CCR远程容器、异步规划、状态机、计划传送与企业级自动化治理
运维·人工智能·自动化
sulikey7 小时前
个人Linux操作系统学习笔记2 - gcc与库的理解
linux·笔记·学习·操作系统·gcc·
Dicky-_-zhang7 小时前
容器编排实战:Docker与Kubernetes对比选型与落地实践
java·jvm
二宝哥7 小时前
Linux虚拟机网络配置
linux·运维·服务器
卧室小白7 小时前
docker网络与服务编排与集群
运维·docker·容器