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

grafana+prometheus+(采集节点)实现监控Linux服务器,JVM,Postgres

grafana+prometheus实现监控Linux服务器,JVM,Postgres

1.grafana
去官网下载windos版本,这里使用的是grafana-enterprise-9.1.6.windows-amd64.zip
在这里插入图片描述
解压后双击直接运行
在浏览器打开grafana的操作页面
http://localhost:3000/
默认账户密码admin,admin,第一次登录需要修改密码。

2.prometheus
去官网下载windos版本,这里使用的是prometheus-2.37.1.windows-amd64.zip
在这里插入图片描述
解压后双击直接运行
在浏览器打开操作页面
http://127.0.0.1:9090/

3.监控Linux服务器
节点github
https://github.com/prometheus/node_exporter
下载node_exporter-1.3.1.linux-amd64.tar.gz
放到需要监控的linux服务器上解压,运行.\node_exporter
修改prometheus的配置文件prometheus.yml
新增如下配置

scrape_configs:
  - job_name: "linux_192.168.30.38"
    metrics_path: '/metrics'
    static_configs:
      - targets: ["192.168.30.38:9100"]

重启prometheus
在这里插入图片描述
显示连接成功
在grafana操作页面创建数据源
在这里插入图片描述
在这里插入图片描述
填写信息,显示保存成功
在这里插入图片描述

导入监控模板
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
已经导入过了。查看监控
在这里插入图片描述

4.监控JVM
节点github
https://github.com/prometheus/jmx_exporter
下载采集节点,jmx_prometheus_javaagent-0.17.2.jar
放到需要监控的java应用程序的服务器上
配置参考页面
https://grafana.com/grafana/dashboards/8563-jvm-dashboard/
同一级目录新增配置文件
jmx_exporter_config.yaml

---   
lowercaseOutputLabelNames: true
lowercaseOutputName: true
whitelistObjectNames: ["java.lang:type=OperatingSystem"]
blacklistObjectNames: []
rules:
  - pattern: 'java.lang<type=OperatingSystem><>(committed_virtual_memory|free_physical_memory|free_swap_space|total_physical_memory|total_swap_space)_size:'
    name: os_$1_bytes
    type: GAUGE
    attrNameSnakeCase: true
  - pattern: 'java.lang<type=OperatingSystem><>((?!process_cpu_time)\w+):'
    name: os_$1
    type: GAUGE
    attrNameSnakeCase: true

修改java应用程序的启动命令

java -javaagent:./jmx_prometheus_javaagent-0.17.2.jar=12345:config.yaml -jar yourJar.jar

启动后修改prometheus的配置文件prometheus.yml
新增节点配置,这里新增了两个

  - job_name: "jvm_sccmcc_service_192.168.30.38"
    metrics_path: '/metrics'
    static_configs:
      - targets: ["192.168.30.38:12345","192.168.30.38:12346"]

重启prometheus
在这里插入图片描述
两个应用连接成功

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

5.监控Postgres数据库
gihub页面
https://github.com/prometheus-community/postgres_exporter
下载采集节点程序
postgres_exporter-0.12.0-rc.0.linux-amd64.tar.gz
解压到监控的服务器上
配置环境变量

export DATA_SOURCE_NAME="postgresql://postgres:wcb@192.168.142.110:15436/postgres?sslmode=d

执行

 nohup ./postgres_exporter &

修改prometheus的配置文件prometheus.yml
新增如下配置

  - job_name: "pg_sccmcc_service_192.168.30.31"
    metrics_path: '/metrics'
    static_configs:
      - targets: ["192.168.30.31:9187"]

重启prometheus
检查配置是否生效
在这里插入图片描述
导入监控模板
在这里插入图片描述
在这里插入图片描述

相关文章:

  • Unity 之 发布字节抖音小游戏
  • Web配置过滤器,Cookie对象的简单使用
  • 进程入门与PCB基础知识.
  • 【云原生】设备云之基于FlexManager的C#SDK开发案例代码
  • Rust(7):数组类型
  • STM32——FLASH闪存编程原理与步骤
  • 计算机毕业设计之java+javaweb的大学生就业帮助系统-就业招聘网站
  • 跳表论文解读
  • 1061:求整数的和与均值
  • Day04JavaWeb第四次笔记---Maven的使用
  • Unrecognized option: --no-transfer-progress
  • 加载指定 having lines separator 时max_data_processor 不起作用
  • 高薪程序员面试题精讲系列150之电商专题(上)-你们的电商项目有什么特色?是B2B还是B2C、还是C2C的?直播电商你了解吗?
  • kafka是啥?虽然很难学,但是实验入门很简单
  • MySQL8.0 索引优化-invisible index
  • [数据结构]链表的实现在PHP中
  • 「面试题」如何实现一个圣杯布局?
  • Brief introduction of how to 'Call, Apply and Bind'
  • Bytom交易说明(账户管理模式)
  • echarts的各种常用效果展示
  • iOS仿今日头条、壁纸应用、筛选分类、三方微博、颜色填充等源码
  • js继承的实现方法
  • KMP算法及优化
  • Material Design
  • Webpack4 学习笔记 - 01:webpack的安装和简单配置
  • Webpack入门之遇到的那些坑,系列示例Demo
  • 测试开发系类之接口自动化测试
  • 关于Android中设置闹钟的相对比较完善的解决方案
  • 回顾2016
  • 基于游标的分页接口实现
  • 简单基于spring的redis配置(单机和集群模式)
  • 利用DataURL技术在网页上显示图片
  • 爬虫模拟登陆 SegmentFault
  • 前端技术周刊 2018-12-10:前端自动化测试
  • 适配iPhoneX、iPhoneXs、iPhoneXs Max、iPhoneXr 屏幕尺寸及安全区域
  • 手写一个CommonJS打包工具(一)
  • 微信如何实现自动跳转到用其他浏览器打开指定页面下载APP
  • 想写好前端,先练好内功
  • 优秀架构师必须掌握的架构思维
  • 再次简单明了总结flex布局,一看就懂...
  • 中文输入法与React文本输入框的问题与解决方案
  • 机器人开始自主学习,是人类福祉,还是定时炸弹? ...
  • 新海诚画集[秒速5センチメートル:樱花抄·春]
  • ​你们这样子,耽误我的工作进度怎么办?
  • #我与Java虚拟机的故事#连载18:JAVA成长之路
  • (delphi11最新学习资料) Object Pascal 学习笔记---第5章第5节(delphi中的指针)
  • (Matalb回归预测)PSO-BP粒子群算法优化BP神经网络的多维回归预测
  • (rabbitmq的高级特性)消息可靠性
  • (二)学习JVM —— 垃圾回收机制
  • (一)eclipse Dynamic web project 工程目录以及文件路径问题
  • (转)关于pipe()的详细解析
  • **Java有哪些悲观锁的实现_乐观锁、悲观锁、Redis分布式锁和Zookeeper分布式锁的实现以及流程原理...
  • ... 是什么 ?... 有什么用处?
  • .net on S60 ---- Net60 1.1发布 支持VS2008以及新的特性
  • .net获取当前url各种属性(文件名、参数、域名 等)的方法