Prometheus. Monitor MySQL server using Prometheus

Материал из Wiki
Версия от 17:45, 24 декабря 2023; Cless (обсуждение | вклад)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к навигации Перейти к поиску


At Client - MySQL Server (192.168.199.181)

mysql -u -root -p

CREATE USER 'mysqlexporter'@'localhost' IDENTIFIED BY 'PassWord#1';

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

FLUSH PRIVILEGES;

Download mysqld_exporter from the official download page

wget https://github.com/prometheus/mysqld_exporter/releases/download/v0.11.0/mysqld_exporter-0.11.0.linux-amd64.tar.gz

tar -xvzf mysqld_exporter-0.11.0.linux-amd64.tar.gz

useradd -rs /bin/false mysqld_exporter

Copy mysqld_exporter file to /usr/bin.

mv mysqld_exporter-0.11.0.linux-amd64/mysqld_exporter /usr/bin

chown mysqld_exporter:mysqld_exporter /usr/bin/mysqld_exporter

mkdir -p /etc/mysql_exporter

nano /etc/mysql_exporter/.my.cnf

[client]
user=mysqlexporter
password=PassWord#1

chown -R mysqld_exporter:mysqld_exporter /etc/mysql_exporter

chmod 600 /etc/mysql_exporter/.my.cnf

nano /etc/systemd/system/mysql_exporter.service

[Unit]
Description=MySQL Server fosslinux
After=network.target
[Service]
User=mysqld_exporter
Group=mysqld_exporter
Type=simple
ExecStart=/usr/bin/mysqld_exporter --config.my-cnf=/etc/mysql_exporter/.my.cnf
Restart=always
[Install]
WantedBy=multi-user.target

systemctl daemon-reload

systemctl enable mysql_exporter

systemctl start mysql_exporter

Web

http://<mysql_Server_IP>:9104/metrics

At Prometheus Server

nano /etc/prometheus/prometheus.yml

...
  - job_name: 'mysql_exporter_fosslinux'
    scrape_interval: 5s
    static_configs:
      - targets: ['192.168.199.181:9104']

systemctl restart prometheus

Web

http://<prometheus-IP>:9090/targets