簡介
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
版權聲明:本文為部落客原創文章,轉載請附上博文連結!
