MySQL Exporter
环境准备
MySQL Docker 启动
docker run --name mysql8 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:8安装 MySQL 客户端
yum install mariadb -y创建 MySQL 的 exporter 用户
# mysql -u root -p123456 -h 127.0.0.1
# 本地访问时使用此用户
CREATE USER 'exporter'@'localhost' IDENTIFIED BY '123456' WITH MAX_USER_CONNECTIONS 3;
GRANT PROCESS, REPLICATION CLIENT, SELECT ON *.* TO 'exporter'@'localhost';
# 使用 Docker 容器部署 exporter 时,访问使用的此用户;否则会报连接拒绝或权限拒绝
CREATE USER 'exporter'@'172.%' IDENTIFIED BY '123456' WITH MAX_USER_CONNECTIONS 3;
GRANT PROCESS, REPLICATION CLIENT, SELECT ON *.* TO 'exporter'@'172.%';
select user,host from mysql.user;部署 exporter
配置文件准备
cat > my_exporter.conf << EOF
[client]
host = 192.168.31.22
user = exporter
password = 123456
EOFDocker 方式部署
DockerHub:
https://github.com/prometheus/mysqld_exporter
docker pull prom/mysqld-exporter
docker run -d \
--name mysqld-exporter \
--restart unless-stopped \
-p 9104:9104 \
-v `pwd`/my_exporter.conf:/etc/my_exporter.conf \
-e "DATA_SOURCE_NAME='exporter:123456@(127.0.0.1:3306)/'" \
prom/mysqld-exporter \
--config.my-cnf=/etc/my_exporter.conf访问
curl -s 192.168.31.22:9104/metrics | head
Last updated