mkdir -pv /apps/exporter/mysqld-exporter
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 network list
若不存在,则创建:
docker network create prometheus --subnet 10.21.22.0/24
cd /apps/exporter/mysqld-exporter
docker-compose up -d
cd /apps/exporter/mysqld-exporter
docker-compose ps
docker-compose logs -f
- job_name: 'demo-mysql'
static_configs:
- targets: ['127.0.0.1:9104']
cd /apps/prometheus
docker-compose restart
检查 Mysqld Exporter 是否正常运行
访问 Prometheus WebUI 的 targets 页面,检查 job 状态
配置 Grafana
登录 Grafana,导入对应的看板即可。
看板获取地址:https://grafana.com/grafana/dashboards/?dataSource=prometheus&search=MySQL
注意: 看板导入后需要修改数据源的ID
数据源详情
页面,浏览器 URL 的最后一段字符为该数据源的 ID。 如 URL 为 grafana/datasources/edit/6lbJpCb4z
时, 6lbJpCb4z
即为当前数据源的 IDdatasource
中的 uid
mkdir -pv /apps/exporter/mongodb-exporter
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 network list
若不存在,则创建:
docker network create prometheus --subnet 10.21.22.0/24
cd /apps/exporter/mongodb-exporter
docker-compose up -d
cd /apps/exporter/mongodb-exporter
docker-compose ps
docker-compose logs -f
scrape_configs:
- job_name: 'demo-mongodb'
static_configs:
- targets: ['127.0.0.1:9216']
cd /apps/prometheus
docker-compose restart
检查 Mysqld Exporter 是否正常运行
访问 Prometheus WebUI 的 targets 页面,检查 job 状态
配置 Grafana
登录 Grafana,导入对应的看板即可。
看板获取地址:https://grafana.com/grafana/dashboards/?dataSource=prometheus&search=MongoDB
注意: 看板导入后需要修改数据源的ID
数据源详情
页面,浏览器 URL 的最后一段字符为该数据源的 ID。 如 URL 为 grafana/datasources/edit/6lbJpCb4z
时, 6lbJpCb4z
即为当前数据源的 IDdatasource
中的 uid
mkdir -pv /apps/exporter/redis-exporter
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
# 监控多台 Redis 时
volumes:
- ./redis_passwd.json:/redis_passwd.json
ports:
- 9121:9121
command:
# 监控单台 Redis 时
- '-redis.addr=host:port'
- '-redis.password=password'
# 监控多台 Redis 时
- "-redis.password-file=/redis_passwd.json"
networks:
default:
external:
name: prometheus
参数说明:
host
:Redis 主机名称/IPport
:Redis 端口号password
:Redis 密码vim redis_passwd.json
{
"redis://host:port":"password",
"redis://host:port":"password",
"redis://host:port":"password",
}
参数说明:
host
:Redis 主机名称/IPport
:Redis 端口号password
:Redis 密码,无密码时设置为 “”{
"redis://xxxxxxxxxxx.dcs.huaweicloud.com:6379":"",
"redis://aaaaaaaa.cn-south-1.dcs.myhuaweicloud.com:6379":"q1azw2sx"
}
docker network list
若不存在,则创建:
docker network create prometheus --subnet 10.21.22.0/24
cd /apps/exporter/redis-exporter
docker-compose up -d
cd /apps/exporter/redis-exporter
docker-compose ps
docker-compose logs -f
scrape_configs:
- job_name: 'demo-redis'
static_configs:
- 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
cd /apps/prometheus
docker-compose restart
检查 Redis Exporter 是否正常运行
访问 Prometheus WebUI 的 targets 页面,检查 job 状态
配置 Grafana
登录 Grafana,导入对应的看板即可。
看板获取地址:https://grafana.com/grafana/dashboards/?dataSource=prometheus&search=Redis
注意: 看板导入后需要修改数据源的ID
数据源详情
页面,浏览器 URL 的最后一段字符为该数据源的 ID。 如 URL 为 grafana/datasources/edit/6lbJpCb4z
时, 6lbJpCb4z
即为当前数据源的 IDdatasource
中的 uid