使用Docker部署监控系统,Prometheus,Grafana,监控服务器信息及Mysql

本文详细介绍了如何使用Docker部署Prometheus监控系统,包括Prometheus、Grafana和Node Exporter的安装配置,以及如何使用Mysqld Exporter监控MySQL实例,提供了从环境搭建到实际应用的完整步骤。
摘要由CSDN通过智能技术生成



相关博文原文地址:
简书:test小星星:使用docker部署prometheus监控系统
Prometheus监控系统(6)使用mysqld_exporter监控MySQL
CSDN:woqutechteam:prometheus监控多个MySQL实例



一、docker部署prometheus监控系统

1.1 配置安装环境

1.1.1 安装prometheus

docker pull prom/prometheus

1.1.2 安装grafana

docker pull grafana/grafana

1.1.3 安装node_exporter

下载node_exporter,然后解压:

tar -xvzf ****.tar.gz

启动:

nohup ./node_exporter >> node_exporter.log 2>&1 &

1.2 运行环境

1.2.1 配置prometheus

vim prometheus-config.yml
# 全局配置
global:
  scrape_interval:     15s
  evaluation_interval: 15s

scrape_configs:
  # 监控prometheus本身
  - job_name: 'prometheus'  
    static_configs:
    - targets: ['localhost:9090']
  # 通过node_exporter将监控数据传给prometheus,如果要监控多台服务器,只要在每个服务器上安装node_exporter,指定不同多ip地址就好了
  - job_name: 'node_exporter'  
    static_configs:
    - targets: ['localhost:9100']
  # 监控mysql
  - job_name: 'mysql'  
    static_configs:
    - targets: ['localhost:9104']

1.2.2 启动 prometheus

docker run --name prometheus -d -p 9090:9090 \
-v /root/prometheus/prometheus-config.yml:/etc/prometheus/prometheus.yml \
prom/prometheus --config.file=/etc/prometheus/prometheus.yml

1.2.3启动 grafana

docker run --name grafana -d -p 3000:3000 grafana/grafana

在浏览器中输入:服务器ip地址:3000进入到Grafana界面。

添加监控数据源选择 prometheus。
在这里插入图片描述

输入prometheus的访问地址,并保存。注意不能使用localhost。


这个地方注意踩坑,prometheus.yml的配置文件,Ip尽量不要写localhost,写ip地址。

在这里插入图片描述

二、Prometheus使用mysqld_exporter监控MySQL

2.1官网下载mysqld_exporter并进行解压

2.2登录MySQL为exporter创建一个用户并进行授权(我直接使用root进行操作了,有风险,尽量不要使用)

CREATE USER 'exporter'@'localhost' IDENTIFIED BY 'XXXXXXXX' WITH MAX_USER_CONNECTIONS 3;

GRANT PROCESS, REPLICATION CLIENT, SELECT ON *.* TO 'exporter'@'localhost';

2.3配置mysql_exporter

vi /usr/local/mysqld_exporter/my.cnf
[client]
host=192.168.21.xx
port=3306
user=exporter  #这里的用户就是第二步设置的用户
password=123456

2.4启动mysqld_exporter,默认监听在9104端口

/usr/local/mysqld_exporter/mysqld_exporter --config.my-cnf=/usr/local/mysqld_exporter/my.cnf

2.4.1 通过Docker启动mysqld_exporter

docker run -d  --restart=always  --name mysqld-exporter -p 9104:9104   -e DATA_SOURCE_NAME="user:password@(hostname:port)/"   prom/mysqld-exporter
 
docker run -d  --restart=always  --name mysqld-exporter -p 9104:9104   -e DATA_SOURCE_NAME="exporter:123456@(192.168.1.82:3306)/"   prom/mysqld-exporter
 
要查看容器是否报错, 主要是验证exporter与mysql服务端之间正常连接和获取数据; 
docker logs -f mysqld-exporter  看有没有报错

2.5为mysqld_exporter创建一个启动脚本,内容如下(可做可不做)

[Unit]
Description=mysqld_exporter

[Service]
Type=simple
Restart=on-failure
ExecStart=/usr/local/mysqld_exporter/mysqld_exporter --config.my-cnf=/usr/local/mysqld_exporter/my.cnf

[Install]
WantedBy=multi-user.target

2.6使用systemctl管理mysqld_exporter

systemctl daemon-reload
systemctl start mysqld_exporter.service
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值