当前位置: 首页 > news >正文

JVM监控搭建

文章目录

  • JVM监控搭建
    • 整体架构
    • Jolokia
    • Telegraf
    • Influxdb
    • Grafana


JVM监控搭建

整体架构

在这里插入图片描述

JVM 的各种内存信息,会通过 JMX 接口进行暴露。

Jolokia 组件负责把 JMX 信息翻译成容易读取的 HTTP 请求。Telegraf 组件作为一个通用的监控 agent,和 JVM 进程部署在同一台机器上,通过访问转化后的 HTTP 接口,以固定的频率拉取监控信息。然后把这些信息存放到 Influxdb 时序数据库中。最后,通过 Grafana 展示组件,设计 JVM 监控图表。

整个监控组件是可以热拔插的,并不会影响原有服务。监控部分也可以复用,比如 Telegraf 就可以很容易的进行操作系统监控。

Jolokia

Jolokia 就是一个将 JMX 转换成 HTTP 的适配器,方便了 JMX 的使用。

在这里插入图片描述

Jokokia 可以通过 jar 包和 agent 的方式启动,在一些框架中,比如 Spring Boot 中,很容易进行集成。直接在 pom 文件里加入 Jokokia 的依赖,在 application.yml 中简单地加入一点配置,就可以通过 HTTP 接口访问 JMX 的内容了。

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency><groupId>org.jolokia</groupId><artifactId>jolokia-core</artifactId>
</dependency>
management:endpoints:web:exposure:include: jolokia

Telegraf

Telegraf 是一个监控数据收集工具,支持非常丰富的监控类型,其中就包含内置的 Jolokia 收集器。

Influxdb

influxdb 是一个性能和压缩比非常高的时序数据库,在中小型公司非常流行。

在 CentOS 环境中,可以使用下面的命令下载。

wget -c https://dl.influxdata.com/influxdb/releases/influxdb-1.7.9_linux_amd64.tar.gz
tar xvfz influxdb-1.7.9_linux_amd64.tar.gz

解压后,然后使用 nohup 进行启动。

nohup ./influxd &

InfluxDB 将在 8086 端口进行监听。

Grafana

Grafana 是一个颜值非常高的监控展示组件,支持非常多的数据源类型,对 influxdb 的集成度也比较高。

Grafana 的安装

wget -c https://dl.grafana.com/oss/release/grafana-6.5.3.linux-amd64.tar.gz
tar -zxvf grafana-6.5.3.linux-amd64.tar.gz

在导入之前,还需要创建一个数据源,选择 influxdb,填入 db 的地址即可。

在这里插入图片描述

http://www.lryc.cn/news/41325.html

相关文章:

  • java中如何优化大量的if...else...
  • 24. linux系统基础
  • 【C++】面试101,二叉搜索树的最近公共祖先,在二叉树中找到两个节点的最近公共祖先,序列化二叉树,重建二叉树,输出二叉树的右视图,组队竞赛,删除公共字符
  • Java常见面试题及解答
  • 【Docker】镜像的原理定制化镜像
  • 国内版的ChatGPT弯道超车的机会在哪里?
  • 【字符串】
  • 加载驱动之后无法在/dev/下生成vedio0
  • Java之类与对象(图文结合)
  • 基于 VCS-NLP 的动态低功耗仿真验证介绍
  • ESP32-S3 自带usb/jtag初步尝试体验
  • 前端性能优化总结
  • React(四) ——hooks的使用
  • iphone手机热点卡顿多次断连解决办法
  • 设置Typora图床(Github)
  • jira提交bug规范
  • 【数据结构】链表相关题目(中档题)
  • 小菜鸟Python历险记:(第四集)
  • 字符函数和字符串函数【下篇】
  • 【CSS】盒子模型内边距 ② ( 内边距复合写法 | 代码示例 )
  • uni-app ——使用uploadFile上传多张图片
  • Linux - 进程控制(进程等待)
  • Python 可视化最频繁使用的10大工具
  • Windows与Linux端口占用、查看的方法总结
  • 48天强训 Day1 JavaOj
  • 崩溃的一瞬间
  • 13回归网络:HTTP/2是怎样的网络协议?
  • CSS学习笔记——基础选择器,字体属性,文本属性,三种样式表
  • 第十四届蓝桥杯三月真题刷题训练——第 16 天
  • 鸟哥的Linux私房菜 Shell脚本