zabbix配置jmx监控java应用

简介: zabbix配置jmx监控java应用

1.在被监控端上安装jdk


这里我是下载好的jdk.tar包安装的

[root@node2 local]# tar xf /root/jdk-8u211-linux-x64.tar.gz

改名

[root@node2 local]# mv jdk1.8.0_211/ java


2.解压tomcat软件到/usr/local/目录下


[root@node2 local]# tar xf  /root/apache-tomcat-8.5.45.tar.gz
[root@node2 local]# mv apache-tomcat-8.5.45/ tomcat


3.设置环境变量


追加下列内容到 /etc/profile

export JAVA_HOME=/usr/local/java
export TOMCAT_HOME=/usr/local/tomcat
export JRE_HOME=/usr/local/java/jre
export PATH=$TOMCAT_HOME/bin:$JAVA_HOME/bin:$JRE_HOME/bin:$PATH


生效环境变量

[root@node2 local]# source /etc/profile
[root@node2 local]# java -version
java version "1.8.0_211"
Java(TM) SE Runtime Environment (build 1.8.0_211-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.211-b12, mixed mode)


4.编辑 catalina.sh 文件,添加JMX参数


[root@node2 local]# cd tomcat/
[root@node2 tomcat]# ls
bin   lib      logs    RELEASE-NOTES  temp     work
conf  LICENSE  NOTICE  RUNNING.txt    webapps
[root@node2 tomcat]# cd bin/
[root@node2 bin]# vim catalina.sh 
CATALINA_OPTS='-Dcom.sun.management.jmxremote
  -Dcom.sun.management.jmxremote.port=8888    ##监听端口号,方便远程访问
  -Dcom.sun.management.jmxremote.ssl=false     ##是否对连接开启SSL加密,默认开启
  -Dcom.sun.management.jmxremote.authenticate=false'    ##是否需要开启用户认证,默认开启


5.启动tomcat并查看端口号


[root@server2 bin]# ./startup.sh 
[root@server2 bin]# netstat -ntlp

查看端口


另一个


6.在zabbix监控端上编辑zabbix_server.conf配置文件


[root@zabbix ~]# vim /etc/zabbix/zabbix_server.conf 
JavaGateway=172.25.21.1
JavaGatewayPort=10052
StartJavaPollers=5


7.重启zabbix-server服务


[root@server1 ~]# systemctl restart zabbix-server


8.zabbix监控端上安装zabbix-java-gateway


[root@server1 ~]# yum install -y zabbix-java-gateway-4.0.5-1.el7.x86_64.rpm


9.查看zabbix_java_gateway的配置文件(只是查看不用做修改)并开启服务


[root@server1 ~]# vim /etc/zabbix/zabbix_java_gateway.conf 
[root@server1 ~]# systemctl start zabbix-java-gateway


10.在zabbix的监控界面点击被监控端主机,添加JMX接口



点击模板,选择Java JMX模板


点击更新


更新后,server2的JMX变绿说明配置成功



目录
相关文章
|
5天前
|
SQL JavaScript 前端开发
用Java来开发Hive应用
用Java来开发Hive应用
18 7
|
5天前
|
SQL JavaScript 前端开发
用Java、Python来开发Hive应用
用Java、Python来开发Hive应用
18 6
|
4天前
|
Java 数据库连接 开发者
Java中的异常处理机制:理解与应用
在Java编程中,异常处理是一个核心概念,它允许程序在遇到错误时优雅地恢复或终止。本文将深入探讨Java的异常处理机制,包括异常的分类、如何正确使用try-catch-finally块以及throw关键字。我们将通过实例来说明如何在Java应用程序中有效地捕获和处理异常,以确保程序的健壮性和稳定性。
|
4天前
|
Java 调度 开发者
Java中的多线程基础及其应用
【9月更文挑战第13天】本文将深入探讨Java中的多线程概念,从基本理论到实际应用,带你一步步了解如何有效使用多线程来提升程序的性能。我们将通过实际代码示例,展示如何在Java中创建和管理线程,以及如何利用线程池优化资源管理。无论你是初学者还是有经验的开发者,这篇文章都将为你提供有价值的见解和技巧,帮助你更好地理解和应用多线程编程。
|
SQL 存储 Java
Java 应用与数据库的关系| 学习笔记
快速学习 Java 应用与数据库的关系。
195 0
Java 应用与数据库的关系| 学习笔记
|
SQL 存储 Java
Java 应用与数据库的关系| 学习笔记
快速学习 Java 应用与数据库的关系。
181 0
Java 应用与数据库的关系| 学习笔记
|
SQL 存储 关系型数据库
Java应用与数据库的关系|学习笔记
快速学习Java应用与数据库的关系
Java应用与数据库的关系|学习笔记
|
4天前
|
存储 缓存 安全
【Java面试题汇总】多线程、JUC、锁篇(2023版)
线程和进程的区别、CAS的ABA问题、AQS、哪些地方使用了CAS、怎么保证线程安全、线程同步方式、synchronized的用法及原理、Lock、volatile、线程的六个状态、ThreadLocal、线程通信方式、创建方式、两种创建线程池的方法、线程池设置合适的线程数、线程安全的集合?ConcurrentHashMap、JUC
【Java面试题汇总】多线程、JUC、锁篇(2023版)
|
15天前
|
监控 Java 调度
【Java学习】多线程&JUC万字超详解
本文详细介绍了多线程的概念和三种实现方式,还有一些常见的成员方法,CPU的调动方式,多线程的生命周期,还有线程安全问题,锁和死锁的概念,以及等待唤醒机制,阻塞队列,多线程的六种状态,线程池等
75 6
【Java学习】多线程&JUC万字超详解
|
8天前
|
Java 调度 开发者
Java并发编程:深入理解线程池
在Java的世界中,线程池是提升应用性能、实现高效并发处理的关键工具。本文将深入浅出地介绍线程池的核心概念、工作原理以及如何在实际应用中有效利用线程池来优化资源管理和任务调度。通过本文的学习,读者能够掌握线程池的基本使用技巧,并理解其背后的设计哲学。

推荐镜像

更多