参考文档:https://www.cnblogs.com/morang/p/devops-prometheus-grafana-install-use-db-site-monitor.html
-
Prometheus:监控中心,监控exporter的实时数据
-
exporter:采集数据工具,如下:
-
Grafana:可视化监控
搭建Prometheus
# 创建目录并赋权
mkdir -p /data/prometheus/data && chown 65534 /data/prometheus/data
# 创建配置目录
mkdir /data/prometheus/conf
# 配置prometheus.yml文件
vi /data/grafana/conf/prometheus.yml
配置prometheus.yml
# prometheus.yml
global:
scrape_interval: 15s
external_labels:
monitor: 'monitor'
scrape_configs:
- job_name: 'prometheus'
scrape_interval: 5s
static_configs:
- targets:
- localhost:9090
- job_name: 'linux服务器'
# 每隔5秒从该作业中抓取目标
scrape_interval: 5s
static_configs:
# 需要监控的服务器列表
- targets:
- 127.0.0.1:9100
docker安装Prometheus
# docker安装Prometheus
docker run -d \
--restart always \
--name prometheus \
-p 9090:9090 \
-v /data/prometheus/conf/prometheus.yml:/etc/prometheus/prometheus.yml \
-v /data/prometheus/data:/prometheus \
prom/prometheus:v2.47.2 \
--config.file=/etc/prometheus/prometheus.yml \
--storage.tsdb.retention.time=45d
Prometheus监控页面:http://127.0.0.1:9090
搭建Exporter
exporter下载地址:https://github.com/orgs/prometheus/repositories?type=all&q=exporter
node_exporter端口:9100
mysqld_exporter端口:9104
postgres_exporter端口:9187
mongodb_exporter端口:9216
redis_exporter端口:9121
# centos开放9100端口
firewall-cmd --zone=public --add-port=9100/tcp --permanent && firewall-cmd --reload
# ubuntu开放9100端口
ufw allow 9100
# 检查是否成功
http://ip:9100/metrics