Prometheus 监控方案学习笔记(十):使用 Prometheus 监控常用中间件
huty
2022年12月02日 · 阅读 1,415
MySQL
Mysqld Exporter
- 目录准备
创建目录:
mkdir -pv /apps/exporter/mysqld-exporter
- 编辑 docker-compose.yml 文件
vim /apps/exporter/mysqld-exporter/docker-compose.yml
version: "3"
services:
mysqld-exporter:
image: prom/mysqld-exporter:v0.14.0
container_name: prometheus-mysqld-exporter
hostname: mysqld-exporter
restart: always
ports:
- 9104:9104
environment:
- DATA_SOURCE_NAME="user:password@(host:port)/database"
networks:
default:
external:
name: prometheus
参数说明:
user
:数据库用户名password
:数据库密码host
:数据库主机port
:数据库端口号database
:数据库名,为空时则监控全部数据库
- 配置 docker 网段 prometheus
检查是否存在 prometheus 网段:
docker network list
若不存在,则创建:
docker network create prometheus --subnet 10.21.22.0/24
- 启动 mysqld-exporter 容器
cd /apps/exporter/mysqld-exporter
docker-compose up -d
- 检查 mysqld-exporter 容器状态、查看 mysqld-exporter 容器日志
cd /apps/exporter/mysqld-exporter
docker-compose ps
docker-compose logs -f
- 配置 prometheus( 编辑 prometheus.yml 文件 )
- job_name: 'demo-mysql'
static_configs:
- targets: ['127.0.0.1:9104']
- 重启 prometheus
cd /apps/prometheus
docker-compose restart
-
检查 Mysqld Exporter 是否正常运行
访问 Prometheus WebUI 的 targets 页面,检查 job 状态 -
配置 Grafana
登录 Grafana,导入对应的看板即可。
看板获取地址:https://grafana.com/grafana/dashboards/?dataSource=prometheus&search=MySQL注意: 看板导入后需要修改数据源的ID
- 数据源查看方式: 在 Grafana 中进入
数据源详情
页面,浏览器 URL 的最后一段字符为该数据源的 ID。 如 URL 为grafana/datasources/edit/6lbJpCb4z
时,6lbJpCb4z
即为当前数据源的 ID - 数据源替换方式: 编辑看板,查看看板的 JSON 数据,替换
datasource
中的uid
- 数据源查看方式: 在 Grafana 中进入
MongoDB
Mongodb Exporter
- 目录准备
创建目录:
mkdir -pv /apps/exporter/mongodb-exporter
- 编辑 docker-compose.yml 文件
vim /apps/exporter/mongodb-exporter/docker-compose.yml
version: "3"
services:
mongodb-exporter:
image: bitnami/mongodb-exporter:0.34.0
container_name: prometheus-mongodb-exporter
hostname: mongodb-exporter
restart: always
ports:
- 9216:9216
command:
- '--mongodb.uri=mongodb://host:port'
networks:
default:
external:
name: prometheus
参数说明:
host
:MongoDB 主机名称/IPport
:MongoDB 端口号
- 配置 docker 网段 prometheus
检查是否存在 prometheus 网段:
docker network list
若不存在,则创建:
docker network create prometheus --subnet 10.21.22.0/24
- 启动 mongodb-exporter 容器
cd /apps/exporter/mongodb-exporter
docker-compose up -d
- 检查 mongodb-exporter 容器状态、查看 mongodb-exporter 容器日志
cd /apps/exporter/mongodb-exporter
docker-compose ps
docker-compose logs -f
- 配置 prometheus( 编辑 prometheus.yml 文件 )
scrape_configs:
- job_name: 'demo-mongodb'
- targets: ['127.0.0.1:9216']
- 重启 prometheus
cd /apps/prometheus
docker-compose restart
-
检查 Mysqld Exporter 是否正常运行
访问 Prometheus WebUI 的 targets 页面,检查 job 状态 -
配置 Grafana
登录 Grafana,导入对应的看板即可。
看板获取地址:https://grafana.com/grafana/dashboards/?dataSource=prometheus&search=MongoDB注意: 看板导入后需要修改数据源的ID
- 数据源查看方式: 在 Grafana 中进入
数据源详情
页面,浏览器 URL 的最后一段字符为该数据源的 ID。 如 URL 为grafana/datasources/edit/6lbJpCb4z
时,6lbJpCb4z
即为当前数据源的 ID - 数据源替换方式: 编辑看板,查看看板的 JSON 数据,替换
datasource
中的uid
- 数据源查看方式: 在 Grafana 中进入
Redis
Redis Exporter
- 目录准备
创建目录:
mkdir -pv /apps/exporter/redis-exporter
- 编辑 docker-compose.yml 文件
vim /apps/exporter/redis-exporter/docker-compose.yml
version: "3"
services:
redis-exporter:
image: oliver006/redis_exporter:v1.44.0
container_name: prometheus-redis-exporter
restart: always
ports:
- 9121:9121
command:
- '-redis.addr=host:port'
- '-redis.password=password'
networks:
default:
external:
name: prometheus
参数说明:
host
:Redis 主机名称/IPport
:Redis 端口号password
:Redis 密码
- 配置 docker 网段 prometheus
检查是否存在 prometheus 网段:
docker network list
若不存在,则创建:
docker network create prometheus --subnet 10.21.22.0/24
- 启动 redis-exporter 容器
cd /apps/exporter/redis-exporter
docker-compose up -d
- 检查 mongodb-exporter 容器状态、查看 mongodb-exporter 容器日志
cd /apps/exporter/redis-exporter
docker-compose ps
docker-compose logs -f
- 配置 prometheus( 编辑 prometheus.yml 文件 )
scrape_configs:
- job_name: 'demo-redis'
- targets: ['127.0.0.1:9121']
- job_name: 'demo-redis-targets'
static_configs:
- targets:
- redis://127.0.0.1:6379
metrics_path: /scrape
relabel_configs:
- source_labels: [__address__]
target_label: __param_target
- source_labels: [__param_target]
target_label: instance
- target_label: __address__
replacement: 127.0.0.1:9121
- 重启 prometheus
cd /apps/prometheus
docker-compose restart
-
检查 Mysqld Exporter 是否正常运行
访问 Prometheus WebUI 的 targets 页面,检查 job 状态 -
配置 Grafana
登录 Grafana,导入对应的看板即可。
看板获取地址:https://grafana.com/grafana/dashboards/?dataSource=prometheus&search=Redis注意: 看板导入后需要修改数据源的ID
- 数据源查看方式: 在 Grafana 中进入
数据源详情
页面,浏览器 URL 的最后一段字符为该数据源的 ID。 如 URL 为grafana/datasources/edit/6lbJpCb4z
时,6lbJpCb4z
即为当前数据源的 ID - 数据源替换方式: 编辑看板,查看看板的 JSON 数据,替换
datasource
中的uid
- 数据源查看方式: 在 Grafana 中进入
分类:
Prometheus 监控体系
标签:
Prometheus
评论已关闭