簡介
Percona監視和管理(PMM)是一個用於管理和監視MySQL和MongoDB性能的開源平台。它是由Percona與托管數據庫服務、支持和咨詢領域的專家合作開發的。
PMM是一個免費的開源解決方案,您可以在自己的環境中運行,以獲得最大的安全性和可靠性。它為MySQL和MongoDB服務器提供了徹底的基於時間的分析,以確保您的數據盡可能高效地工作。
PMM是CS價格,由兩部分組成PMM Client和PMM Server
PMM客戶機安裝在要監視的每個數據庫主機上。它收集服務器指標、一般系統指標和查詢分析數據,以獲得完整的性能概述。
PMM服務器是PMM的核心部分,它聚合收集到的數據,並在Web界面中以表格、儀表盤和圖形的形式顯示這些數據。
官網
安裝
部署方案(https://www.percona.com/doc/percona-monitoring-and-management/architecture.html#id13)
安裝PMMServer
PMM Server是PMM的核心部分,它聚合收集的數據,並以Web界面的表格,儀表板和圖形的形式呈現,包括以下組件
Query Analytics(QAN):按時間周期查詢MySQL性能,同客戶端的qan agent通訊包括兩個組件 。qan api 和qan web app
Metrics Monitor(MM):提供MySQL和mongo的性能歷史視圖
1、安裝docker環境
https://blog.csdn.net/zhizhengguan/article/details/83618702
2、下載鏡像容器
$ sudo docker pull percona/pmm-server:latest
3、建立數據卷容器
$ docker create -v /opt/prometheus/data -v /opt/consul-data -v /usr/local/mysql -v /home/ocean/workspace/mysql/grafana --name pmm-data percona/pmm-server:latest /bin/true
$ sudo docker inspect pmm-data
[
{
"Id": "32282a5d220372d19e514b86bafe8a3f9a5c2dbb8e2996c43c46ad969417d166",
"Created": "2019-02-25T06:59:53.275012366Z",
"Path": "/bin/true",
1
2
3
4
5
6
7
8
4、運行PMM Server
$ docker run -d \
-p 80:80 \
--volumes-from pmm-data \
--name pmm-server \
--restart always percona/pmm-server:latest
{-e METRICS_RETENTION=48h 可選,數據只留48小時}
{ -e SERVER_USER = jsmith \ #可選
-e SERVER_PASSWORD = pass1234 \ #可選 增加安全性}
$ sudo docker ps -a
1
2
3
4
5
6
7
8
9
10
11
12
運行PMM Server之后,你應該可以使用運行容器的127.0.0.1:80訪問PMM Web界面。
Component URL
PMM landing page http://127.0.0.1:80
Query Analytics (QAN web app) http://127.0.0.1:80/qan/
Metrics Monitor (Grafana) http://127.0.0.1:80/graph/user name: adminpassword: admin
5、更改面板數據sqlite庫存儲類型為MYSQL(容器自帶)
$sudo docker exec -i -t pmm-server /bin/bash
# # vi /etc/grafana/grafana.ini
查/sqlite 改為MYSQL 存儲
type=mysql
host=127.0.0.1:3306
name=grafana
user=root
password =
1
2
3
4
5
6
7
8
9
在容器進入mysql客戶端,創建數據庫grafana,
create database grafana;
1
$ sudo docker restart pmm-server
1
PMM client 安裝
PMM Client是安裝在你要監視的MySQL或MongoDB主機上的一組代理組件。組件收集關於一般系統和數據庫性能的各種數據,並將該數據發送到相應的PMM服務器組件。包括以下工具
pmm-admin:pmm客戶端客理工具,用於增加或是刪除需要監控的數據庫實例
percona-qan-agent:用於搜集數據庫性能數據
node_exporter :用於搜集常用的系統指標
mysqld_exporter:用於搜集MySQL性能指標
mongodb_export:用於搜集MongoDB性能指標
*proxysql_export:用於搜集proxySQL性能指標
在數據庫主機上安裝PMM Client軟件包之前,請確保你的PMM Server主機可訪問。
1、下載地址:https://www.percona.com/downloads/pmm/ 請確保版本一致
$ sudo dpkg -I pmm-client_1.17.1-1.xenial_amd64.deb --查看安裝信息
$ sudo dpkg -i pmm-client_1.17.1-1.xenial_amd64.deb -- 安裝
$ pmm-admin config --help -- 查看幫助信息
1
2
3
2、將PMM客戶端連接到PMM服務器
$ sudo pmm-admin config --server 127.0.0.1:80
OK, PMM server is alive.
PMM Server | 127.0.0.1:80
Client Name | ubuntu
Client Address | 172.17.0.1
$ sudo pmm-admin check-network
PMM Network Status
Server Address | 127.0.0.1:80
Client Address | 172.17.0.1
* System Time
NTP Server (0.pool.ntp.org) | 2019-02-26 01:12:42 +0000 UTC
PMM Server | 2019-02-26 01:12:42 +0000 GMT
PMM Client | 2019-02-25 17:12:42 -0800 PST
PMM Server Time Drift | OK
PMM Client Time Drift | OK
PMM Client to PMM Server Time Drift | OK
* Connection: Client --> Server
-------------------- -------
SERVER SERVICE STATUS
-------------------- -------
Consul API OK
Prometheus API OK
Query Analytics API OK
Connection duration | 2.129258ms
Request duration | 684.144µs
Full round trip | 2.813402ms
* Connection: Client <-- Server
-------------- ------- ----------------- ------- ---------- ---------
SERVICE TYPE NAME REMOTE ENDPOINT STATUS HTTPS/TLS PASSWORD
-------------- ------- ----------------- ------- ---------- ---------
linux:metrics ubuntu 172.17.0.1:42000 OK YES -
mysql:metrics ubuntu 172.17.0.1:42002 OK YES -
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
3、 開始監控:
$ sudo pmm-admin add mysql --query-source perfschema --user root --password 123456
[linux:metrics] OK, already monitoring this system.
[mysql:metrics] OK, now monitoring MySQL metrics using DSN root:***@unix(/tmp/mysql.sock)
[mysql:queries] OK, now monitoring MySQL queries from perfschema using DSN root:***@unix(/tmp/mysql.sock)
1
2
3
4
4、 WEB訪問頁面並配制相關值
http://127.0.0.1/graph
1
$ sudo pmm-admin list --查看配置之后的結果
pmm-admin 1.17.1
PMM Server | 127.0.0.1:80
Client Name | ubuntu
Client Address | 172.17.0.1
Service Manager | linux-systemd
-------------- ------- ----------- -------- ------------------------------- ---------------------------------------------
SERVICE TYPE NAME LOCAL PORT RUNNING DATA SOURCE OPTIONS
-------------- ------- ----------- -------- ------------------------------- ---------------------------------------------
mysql:queries ubuntu - YES root:***@unix(/tmp/mysql.sock) query_source=perfschema, query_examples=true
linux:metrics ubuntu 42000 YES -
mysql:metrics ubuntu 42002 YES root:***@unix(/tmp/mysql.sock)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
3、刪除
$ apt-get remove pmm-client
1
參考:https://www.cnblogs.com/zengkefu/p/7232938.html
https://blog.csdn.net/wh211212/article/details/72190471
使用
pmm-admin
使用pmm-admin來管理PMM客戶機。
$ sudo pmm-admin
[sudo] password for ocean:
Usage:
pmm-admin [flags]
pmm-admin [command]
Available Commands:
config Configure PMM Client.
add Add service to monitoring.
annotate Annotate application events.
remove Remove service from monitoring.
list List monitoring services for this system.
info Display PMM Client information (works offline).
check-network Check network connectivity between client and server.
ping Check if PMM server is alive.
start Start monitoring service.
stop Stop monitoring service.
restart Restart monitoring service.
show-passwords Show PMM Client password information (works offline).
purge Purge metrics data on PMM server.
repair Repair installation.
uninstall Removes all monitoring services with the best effort.
summary Fetch system data for diagnostics.
help Help about any command
Flags:
-c, --config-file string PMM config file (default "/usr/local/percona/pmm-client/pmm.yml")
-h, --help help for pmm-admin
--skip-root skip UID check (experimental)
--timeout duration timeout (default 5s)
--verbose verbose output
-v, --version show version
Use "pmm-admin [command] --help" for more information about a command.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
OPTIONS
以下選項可用於任何命令:
$ sudo pmm-admin --version --PMM客戶端的版本
1.17.1
$ sudo pmm-admin -v --PMM客戶端的版本
1.17.1
1
2
3
4
-C,--配置文件
指定PMM配置文件的位置(默認/usr/local/percona/pmm client/pmm.yml)。
-H,——幫助
打印任何命令的幫助並退出。
--verbose
打印詳細輸出。
1
2
3
4
5
6
pmm-admin add
添加監視服務。
一個例子
$ cd /etc/systemd/system
pmm-linux-metrics-42000.service
pmm-mysql-metrics-42002.service
pmm-mysql-queries-0.service
$ cat pmm-mysql-metrics-42002.service
$ systemctl daemon-reload
$ pmm-admin restart mysql:metrics
1
2
3
4
5
6
7
以下選項可與pmm admin add命令一起使用:
--dev-enable
啟用實驗功能。
--disable-ssl
禁用(否則啟用)PMM客戶端和PMM服務器之間的連接的SSL。關閉從某些監視對象獲取的數據的SSL加密可以減少與許多節點連接的PMM服務器的開銷。
--service-port
指定服務端口。
1
2
3
4
5
6
$ sudo pmm-admin add --help
1
查看各種信息
$ sudo pmm-admin info
$ sudo pmm-admin list --列出所有已啟用的服務及其詳細信息。
$ $ sudo pmm-admin check-network
1
2
3
是否能夠連接pmm服務器
使用pmm admin ping命令驗證與pmm服務器的連接。
$ sudo pmm-admin ping [OPTIONS]
$ sudo pmm-admin ping
1
2
獲取PMM客戶端使用的密碼
使用pmm admin show passwords命令打印存儲在配置文件中的憑據(默認值為/usr/local/percona/pmm client/pmm.yml)。
$ pmm-admin show-passwords [OPTIONS]
$ sudo pmm-admin show-passwords --help
$ sudo pmm-admin show-passwords
1
2
3
刪除監控服務
$sudo pmm-admin rm [OPTIONS] [SERVICE]
$ sudo pmm-admin rm --all
1
2
刪除服務時,收集的數據將保留在PMM服務器上的度量監視器中。要刪除收集的數據,請使用pmm admin purge命令。
刪除孤立服務
$ sudo pmm-admin repair [OPTIONS]
1
清除度量數據
$ pmm-admin purge [SERVICE [NAME]] [OPTIONS]
$ sudo pmm-admin list
1
2
使用pmm admin purge命令清除與pmm服務器上的服務關聯的度量數據。這通常是在刪除服務后所必需的,並且不希望其度量數據顯示在圖表上。
開啟監控服務
pmm-admin start [SERVICE [NAME]] [OPTIONS]
sudo pmm-admin start --help
停止監控服務
$ pmm-admin stop [SERVICE [NAME]] [OPTIONS]
$ sudo pmm-admin stop --help
1
2
指定要停止的監控服務別名。要查看哪些服務可用,請運行:
$ sudo pmm-admin list
1
重啟監控服務
$ pmm-admin restart [SERVICE [NAME]] [OPTIONS]
1
類似 《停止監控服務》
卸載前清理
$ pmm-admin uninstall [OPTIONS]
1
監控服務別名
---------------------
作者:Ocean&&Star
來源:CSDN
原文:https://blog.csdn.net/zhizhengguan/article/details/87916519
版權聲明:本文為博主原創文章,轉載請附上博文鏈接!