1、介绍
待补充
2、架构图
Prometheus :主要是负责存储、抓取、聚合、查询方面。
node_exporter :主要是负责采集物理机、中间件的信息。
3、搭建过程
配置要求:1台主服务器 + n台从服务器 (被监控的linux或windows虚机)
主服务器:Prometheus + Grafana
从服务器:node_exporter
参考链接:
Prometheus+Grafana监控MySQL - 墨天轮
https://www.cnblogs.com/xiaozhaoboke/p/17779179.html
基于Prometheus+Grafana搭建监控平台(Windows/Linux环境exporter部署)_window 部署普罗米修斯-CSDN博客
Prometheus(普罗米修斯)监控系统_普罗米修斯监控-CSDN博客
3.1 搭建Prometheus
实现效果:
3.2 搭建node_exporter
Linux 虚机
node_exporter下载地址:
安装步骤:
实现效果:默认监听端口为9100,访问url:http://ip:9100/metrics
window虚机
node_exporter下载地址:Releases · prometheus-community/windows_exporter · GitHub
安装步骤: 以管理身份打开powershell,进入安装包地址,执行以下命令即可
实现效果:默认监听端口为9182,访问url:http://ip:9182/metrics
3.3 Prometheus + node_exporter 实现效果
/usr/local/prometheus/prometheus.yml 配置内容,包括被监控虚机内容
- job_name: "LinuxClient"
static_configs:
- targets: ['ip:port']
[root@test prometheus]# cat /usr/local/prometheus/prometheus.yml
# my global config
global:
scrape_interval: 15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.
evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.
# scrape_timeout is set to the global default (10s).
# Alertmanager configuration
alerting:
alertmanagers:
- static_configs:
- targets:
# - alertmanager:9093
# Load rules once and periodically evaluate them according to the global 'evaluation_interval'.
rule_files:
# - "first_rules.yml"
# - "second_rules.yml"
# A scrape configuration containing exactly one endpoint to scrape:
# Here it's Prometheus itself.
scrape_configs:
# The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
- job_name: 'prometheus'
# metrics_path defaults to '/metrics'
# scheme defaults to 'http'.
static_configs:
- targets: ['localhost:9090']
- job_name: "LinuxClient"
static_configs:
- targets: ['10.241.102.90:9100']
- job_name: "WindowsClient"
static_configs:
- targets: ['10.241.101.117:9182']
从上图中可以看到linux 虚机和window虚机监控正常
3.4 搭建Prometheus + Grafana + node_exporter 实现可视化监控
3.4.1 Grafana 成功搭建的效果:
3.4.2 添加数据源 :数据类型 (Prometheus) + url
3.4.3 import导入模板
模板地址:https://grafana.com/grafana/dashboards
例如使用如下模板,可在红色框内点击获取dashboard ID (联网推荐方式) 或下载 json文件 (离线使用,本文采用方式)
linux node-exporter 模板id :11074
11074 模板地址:Node Exporter Dashboard EN 20201010-StarsL.cn | Grafana Labs
红色框上有数据源和依赖插件要求,若不满足,则无法正常展示数据
windows node-exporter 模板id:10467
10467 模板地址:Windows Exporter Dashboard 20230531-StarsL.cn | Grafana Labs
上传模板json文件
创建一个新名称和选择3.4.2 创建的对应的Prometheus
3.4.4 查看实际数据展示效果
linux 虚机:
window虚机:
4、问题总结
4.1、提示插件找不到
原因:采用的grafana-6.1.4-1.x86_64.rpm 版本太低,没有集成部分插件
办法1:采用高版本的grafana (推荐)
下载地址:Download Grafana | Grafana Labs
或直接通过yum install grafana方式安装
方法2:安装指定插件
参考链接:Grafana使用杂记(一)-- 缺少图表插件_grafana找不到bar chart插件-CSDN博客
4.2、部分指标显示无数据
解决办法:切换其他模板 (人生苦短,绕过bug)
3.5 监控windows虚机
参考链接:Prometheus及Grafana监控服务的安装使用-腾讯云开发者社区-腾讯云