PMM(Percona Monitoring and Management)
是一個用於管理和監控數據庫性能的開源平台。 。 它能提供全面的基於時間和各類監控指標、計數器的分析。
性能測試中,是做數據庫監控的較好工具。
官網
https://www.percona.com/doc/percona-monitoring-and-management/index.html
支持的數據庫
mysql、mongodb、postgresql

原理分析

以mysql為例,整個工作的基本原理簡單說:
- PMM-Client客戶端,采用mysql_exporter(多數軟件都有此exporter監控計數器),收集數據
- PMM-Client客戶端調用PMM-Server服務端的api,把收集的數據保存到服務端的數據庫。
- PMM-Server服務端其實是集成了Grafana的功能,支持對收集的數據做可視化展示和查詢
快速搭建
- 安裝服務端
$ docker pull percona/pmm-server:1
$ docker create \
-v /opt/prometheus/data \
-v /opt/consul-data \
-v /var/lib/mysql \
-v /var/lib/grafana \
--name pmm-data \
percona/pmm-server:1 /bin/true
$ docker run -d \
-p 80:80 \
--volumes-from pmm-data \
--name pmm-server \
--restart always \
percona/pmm-server:1
測試是否成功
瀏覽器訪問http://服務器端ip:端口
- 安裝客戶端-在目標數據庫主機
$ yum install pmm-client
- 配置客戶端監控
pmm-admin config --server 服務器端ip:端口
pmm-admin add mysql:metrics --user 數據庫用戶名 --password 數據庫密碼 --host 數據庫IP
pmm-admin add mysql:queries --user 數據庫用戶名 --password 數據庫密碼 --host 數據庫IP
效果展示
慢sql監控:可以直觀看到慢sql的執行過程、執行計划、執行詳情、索引詳情

數據庫性能監控:可以監控CPU、IO、Swap、Network

掃一掃,關注我

