SYSTEM and DB moniroting Using Prometheus + Grafana
1.4K
$ wget https://github.com/prometheus/node_exporter/releases/download/0.12.0rc3/node_exporter-0.12.0rc3.linux-amd64.tar.gz
$ wget https://github.com/prometheus/mysqld_exporter/releases/download/0.7.1/mysqld_exporter-0.7.1.linux-amd64.tar.gz
$ mkdir /usr/local/prometheus_exporters
$ tar zxf node_exporter-0.12.0rc3.linux-amd64.tar.gz -C /usr/local/prometheus_exporters
$ tar zxf mysqld_exporter-0.7.1.linux-amd64.tar.gz -C /usr/local/prometheus_exporters
mysql> GRANT REPLICATION CLIENT, PROCESS ON *.* TO '{USER_NAME}'@'localhost' identified by '{YOUR_PASSWORD}';
mysql> GRANT SELECT ON performance_schema.* TO '{USER_NAME}'@'localhost';
$ cd /usr/local/prometheus_exporters
$ cat << EOF > .my.cnf
[client]
user={YOUR_MYSQL_USER}
password={YOUR_MYSQL_USER_PASSWORD}
EOF
$ cd /usr/local/prometheus_exporters
$ ./node_exporter &
$ ./mysqld_exporter -config.my-cnf=".my.cnf" &
SERVER_IP : YOUR_DB_SERVER1_IP_ADDRESS SERVER2_IP_ADDRESS SERVER3_IPADDRESS ...
SERVER_NAME : YOUR_DB_SERVER1_NAME1 SERVER2_NAME SERVER3_NAME ...
VOLUME : /usr/local/prometheus/data
3000 : grafana
9090 : prometheus
$ sudo docker run --rm -i -p 3000:3000 \
-e SERVER_IP="DB_SERVER1_IP DB_SERVER2_IP DB_SERVER3_IP" \
-e SERVER_NAME="DB_SERVER1_NAME DB_SERVER2_NAME DB_SERVER3_NAME" \
-v DOCKER_SERVER_LOCAL_DIRECTORY:/usr/local/prometheus/data \
-t adite/pro-gf
WEB BROWSER : http://{YOUR_HOST_IP_or_DOMAIN_NAME}:3000
ID / PW : admin / admin
Go to Data Sources and add settings for Prometheus
Name : Prometheus
Type : Prometheus
Uri : http://localhost:9090

Check out the dashboards and graphs. You can select host name.

refs. https://www.percona.com/blog/2016/02/29/graphing-mysql-performance-with-prometheus-and-grafana/
Content type
Image
Digest
Size
200.8 MB
Last updated
almost 9 years ago
docker pull adite/pro-gf