0833-如何使用Prometheus監控MySQL

語言: CN / TW / HK

作者:唐輝

1.文件編寫目的



在《如何安裝及使用Prometheus》文中有對Prometheus 做簡單的介紹,並且通過node_exporter的模板示例介紹瞭如何監控主機資訊。本文主要介紹如何使用Prometheus監控MySQL資料庫資訊 

  • 測試環境

作業系統:Redhat 7.6

伺服器型別:x86


2.mysqld_exporter下載及配置




1. mysqld_exporter安裝包下載

下載地址:https://prometheus.io/download/#mysqld_exporter


可以離線下載後解壓或者如下:

wget https://github.com/prometheus/mysqld_exporter/releases/download/v0.12.1/mysqld_exporter-0.12.1.linux-amd64.tar.gz 
#解壓
tar xvfz mysqld-*.tar.gz cd mysqld-*



在MySQL中建立mysql_exporter使用者並授權用於資料採集

MariaDB [(none)]> CREATE USER 'mysql_exporter'@'localhost' IDENTIFIED BY 'password123';
Query OK, 0 rows affected (0.11 sec)

MariaDB [(none)]> GRANT PROCESS, REPLICATION CLIENT, SELECT ON *.* TO 'mysql_exporter'@'localhost';



2.編輯配置檔案

[client]
user=mysql_exporter
password=password123



3.啟動mysqld_exporter

./mysqld_exporter --config.my-cnf mysql_exporter.cnf
#檢視幫助 --help 可用於檢視引數
./mysqld_exporter --help



4.新增Prometheus 採集任務

在prometheus.yml 新增如下配置並重啟prometheus

  - job_name: 'mysql'
    static_configs:
    - targets: ['192.168.0.99:9104']



nohup ./prometheus --config.file=prometheus.yml --web.listen-address=:9200 > /var/log/prometheus.log 2>&1 &


然後到Web UI檢視監控狀態,確認已成功監控

http://192.168.0.100:9200/targets


3.整合Grafana展示




關於如何下載安裝Grafana,在之前的《0707-如何安裝Grafana並使用Cloudera Manager datasource外掛》以及前面的《如何安裝及使用Prometheus》有詳細介紹。


首先到Grafana 官網推薦的dashboard中下載一個展示樣例模板來展示 MySQL Exporter的資訊,下載地址https://grafana.com/grafana/dashboards

本文舉例使用https://grafana.com/grafana/dashboards/7362 MySQL Overview 模板用於展示


然後匯入Grafana,如果有連線外網可以使用id 方式,離線可以通過下載JSON檔案的方式匯入,該模板的id 為7362


匯入後選擇Prometheus資料來源,然後執行匯入


顯示效果如下:


舉例說明指標資訊:


4.Prometheus簡介



在CDH叢集安裝的過程中,大多數人用MySQL 來做叢集的元資料庫,但是在CM中卻沒有對元資料庫有很好的監控資訊,通過Prometheus監控MySQL 資訊可以更方便的用於排查叢集中的因元資料庫導致的效能問題。

相關連結:

Prometheus官網:https://prometheus.io/

Grafana 官網:https://grafana.com/

本文分享自微信公眾號 - Hadoop實操(gh_c4c535955d0f)。
如有侵權,請聯絡 [email protected] 刪除。
本文參與“OSC源創計劃”,歡迎正在閱讀的你也加入,一起分享。