Prometheus
目录
5.Prometheus+node_exporter+Grafana资源监控架构图
7.3、访问IP加端口 http://xxx.xx.xx.xx:3000 ,输入用户名,密码登录系统。用户名与密码都是"admin",如果能打开页面则已经成功了!
7.4、当你查看状态是active但是访问3000时是失败的话,辣么有可能就是你的3000端口还未开放!
7.5.访问IP加端口 http://xxx.xx.xx.xx:3000 ,若能访问到grafana就是成功啦!
8.5然后重启prometheus,打开prometheus页面查看是不是有对应的数据了。
简介学习参考网站(此章博客有参考以下网站~用作学习)
技术大牛博客: https://www.k8stech.net/
中文技术文档:https://www.prometheus.wang/visualiztion/grafana.html
1.什么是 Prometheus
Prometheus是一个开源监控报警系统和时序列数据库
2.主要功能
- 多维数据模型(时序由 metric 名字和 k/v 的 labels 构成)
- 灵活的查询语句(PromQL)
- 无依赖存储,支持 local 和 remote 不同模型
- 采用 http 协议,使用 pull 模式,拉取数据,简单易懂
- 监控目标,可以采用服务发现或静态配置的方式
- 支持多种DashBoard,图形化友好
3.核心组件
- Prometheus Server, 主要用于抓取数据和存储时序数据,另外还提供查询和 Alert Rule 配置管理。
- client libraries,用于对接 Prometheus Server, 可以查询和上报数据。
- push gateway ,用于批量,短期的监控数据的汇总节点,主要用于业务数据汇报等。
- 各种汇报数据的 exporters ,例如汇报机器数据的 node_exporter, 汇报 MongoDB 信息的 MongoDB exporter 等等。
- 用于告警通知管理的 alertmanager 。
4.基础架构
主要模块包含: Server, Exporters, Pushgateway, PromQL, Alertmanager, WebUI 等。
- Prometheus Server:主要是负责存储、抓取、聚合、查询方面
- Alertmanager:主要是负责实现报警功能
- Pushgateway :主要是实现接收由Client push过来的指标数据,在指定的时间间隔,由主程序来抓取
- exporter:数据采样器
5.Prometheus+node_exporter+Grafana资源监控架构图
6.Centos7.x安装Prometheus
6.1下载安装Prometheus
PROM_PATH='/data/prometheus'
mkdir -p ${PROM_PATH}
mkdir -p ${PROM_PATH}/{data,conf,logs,bin}
useradd prometheus
cd /project/package
wget https://github.com/prometheus/prometheus/releases/download/v2.13.0/prometheus-2.13.0.linux-amd64.tar.gz
tar -xvf prometheus-2.13.0.linux-amd64.tar.gz
cd prometheus-2.13.0.linux-amd64/
cp prometheus promtool ${PROM_PATH}/bin/
cp prometheus.yml ${PROM_PATH}/conf/
chown -R prometheus.prometheus /data/prometheus
# Setting Variables
cat >> /etc/profile <<EOF
PATH=/data/prometheus/bin:$PATH:$HOME/bin
EOF
6.2将Prometheus配置系统服务
cat >>/etc/systemd/system/prometheus.service <<EOF
[Unit]
Description=Prometheus
Documentation=https://prometheus.io/
After=network.target
[Service]
Type=simple
User=prometheus
ExecStart=/data/prometheus/bin/prometheus --config.file=/data/prometheus/conf/prometheus.yml --storage.tsdb.path=/data/prometheus/data --storage.tsdb.retention=90d
Restart=on-failure
[Install]
WantedBy=multi-user.target
EOF
现在使用下面的systemctl命令重新加载systemd系统,并查看服务是否启动
systemctl daemon-reload
systemctl enable prometheus.service
systemctl start prometheus.service
systemctl status prometheus.service