Prometheus、Grafana 部署监控
#收集mysql使用情况数据信息
docker pull prom/mysqld-exporter
#收集redis的使用情况数据信息
docker pull oliver006/redis_exporter
#普罗米修斯监控服务
docker pull prom/prometheus
#用于展示普罗米修斯监控的图形化界面
docker pull grafana/grafana
#
docker run --name mysql8 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:8.0
mysqld_exporter 安装
#
CREATE USER 'exporter'@'%' IDENTIFIED BY 'exporter' WITH MAX_USER_CONNECTIONS 3;
GRANT PROCESS, REPLICATION CLIENT, SELECT ON *.* TO 'exporter'@'%';
GRANT SELECT ON performance_schema.* TO 'exporter'@'%';
FLUSH PRIVILEGES;
SELECT User, Host FROM mysql.user WHERE User='exporter';
SHOW GRANTS FOR 'exporter'@'%';
exit;
#
docker run -d -p 9104:9104 --name mysql-exporter -e DATA_SOURCE_NAME="exporter:exporter@(172.17.0.2:3306)/spider" prom/mysqld-exporter
#
http://127.0.0.1:9104/metrics
安装prometheus 服务
#
vim /home/imac/Desktop/script/docker/prometheus/prometheus.yml
#
docker run --name prometheus -d -p 9090:9090 -v /home/imac/Desktop/script/docker/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml prom/prometheus
#
http://127.0.0.1:9090
打通 mysqld-exporter 和 prometheus连接
#
#
docker inspect [容器名称或ID] | grep IPAddress
#
- job_name: "mysqld-exporter"
static_configs:
- targets: ["172.17.0.4:9104"] ### 这个 172.17.0.4 就是 mysqld-exporter 网段
labels:
instance: mysqld-exporter
#
docker restart *****
#
1.访问 http://127.0.0.1:9090
2.点击导航栏 Status
3.点击下列列表的 Targets
安装grafana
#
docker run -d --name=grafana -p 3000:3000 grafana/grafana
#
http://127.0.0.1:3000
#
搭建redis 性能监控
#
docker run -d --name redis_exporter -p 9121:9121 oliver006/redis_exporter --redis.addr redis://172.17.0.6:6379 --redis.password '123456'
#
# my global config
global:
scrape_interval: 15s
evaluation_interval: 15s
scrape_configs:
- job_name: "prometheus"
static_configs:
- targets: ["172.17.0.4:9090"]
- job_name: "mysql_metrics"
static_configs:
- targets: ["172.17.0.3:9104"]
- job_name: "redis_metrics"
static_configs:
- targets: ["172.17.0.7:9121"]
后续的导入数据源很简单了