1.简介
prometheus是一种时间序列的数据库,适合应用于监控以及告警,但是不适合100%的准确计费,因为采集的数据不一定很准确,主要是作为监控以及收集内存、CPU、硬盘的数据。
Prometheus生态系统由多个组件组成,其中许多是可选的:
- Prometheus Server::负责对监控数据的获取,存储以及查询
- Client Library: 客户端库,负责检测应用程序代码
- Push Gateway:正常情况下Prometheus Server能够直接与Exporter进行通信,然后pull数据;当网络需求无法满足时就可以使用PushGateway作为中转站了
- Exporter:监控数据采集器,将数据通过Http的方式暴露给Prometheus Server;
- AlertManager::Prometheus支持通过PromQL来创建告警规则,满足规则时创建一条告警,后续的告警流程就交给AlertManager,其提供了多种告警方式包括email,webhook等方式;
- Web UI:简单的web控制台
2.下载及安装配置
官网:Download | Prometheus
1.解压普罗米修斯
tar -zxvf prometheus-2.37.1.linux-amd64.tar.gz
2.修改文件名
mv prometheus-2.37.1.linux-amd64 prometheus
修改配置:
vim prometheus.yml
global:scrape_interval: 15s # 默认抓取间隔, 15秒向目标抓取一次数据# 配置报警
alerting:alertmanagers:- static_configs:- targets:# - alertmanager:9093# 配置记录规则
rule_files:# - "rules.yml"# 这里表示抓取对象的配置
scrape_configs:- job_name: 'prometheus' # 这个配置是表示在这个配置内的时间序例,每一条都会自动添加上这个`job=<job_name>`的标签scrape_interval: 5s # 重写了全局抓取间隔时间,由15秒重写成5秒static_configs:- targets: ['localhost:9090'] # 监控自身
目前就只需要修改 static_configs的 targets地址,改成我们自身,或者你需要监控的地址
2.1 启动服务
1.进入目录
cd prometheus
2.查看文件
ls
3.查看版本信息
./prometheus --version
4.启动
./prometheus --config.file=prometheus.yaml
启动成功后 访问:http://127.0.0.1:9090
3.可视化
官网:https://grafana.com/grafana/download
Grafana 是最受欢迎的可视化工具之一,它允许您将多个 Prometheus 实例中的数据源聚合到一起,并将其可视化显示在一个统一的视图中。此外,Grafana 还提供了许多其他功能,例如告警、注释、数据源插件等等。
3.1 下载及安装
1.解压
wget https://dl.grafana.com/enterprise/release/grafana-enterprise-9.4.3-1.x86_64.rpm
# 安装
yum -y install grafana-enterprise-9.4.3-1.x86_64.rpm
#启动
systemctl start grafana-server.service
#查看运行状态
ps -ef | grep grafana1.2或者安装包安装
tar -zxvf grafana-enterprise-10.2.0.linux-amd64.tar.gz
#修改文件名
mv grafana-enterprise-10.2.0 grafana
#启动Grafana
./bin/grafana-server
启动成功后 访问:http://localhost:3000/ 初始用户admin 密码admin
3.2 添加MySQL数据源
第一次登录进入后让你设置新的密码,进入Grafana,点击DATA SOURCRE添加数据源
选择Prometheus
添加Prometheus相关ip端口信息
导入Mysql模板,模板id为: 7362