MySQL-MongoDB开源监控利器之PMM
? ? 最近要對數據庫的監控體系進行改進,發現Percona 公司的一款開源的監控工具Percona Monitoring and Management(PMM) 對于MySQL的監控指標各項值比較全面準確,現在公司內部的開發測試環境進行了部署體驗。
? ? 主要的架構圖如下:源于官方
? ? 可以看到主要是由客戶端的代理程序node_export\mysqld_export\mongodb_export等和客戶端管理工具pmm-admin做為數據的收集方式并發送到服務端的QAN API\Consul API\Prometheus等各個API然后通過Grafana來展示數據指標,界面非常靚麗
? ? Pmm 的server端的運行方式主要有官方提供的以下三種方式:
? ? ? 1.已經集成好的Docker方式
? ? ? 2.集成好的VirtualBox方式
? ? ? 3. Amazon Machine Image (AMI)
? ? ?在這里我用的是Docker方式,輕量部署、升級很方便
? ? PMM的client安裝比較方便,直接安裝官方的yum安裝就OK了
#詳細的請參考官方文檔
https://www.percona.com/doc/percona-monitoring-and-management/index.html
#Dokcer方式部署
提前準備好系統和Docker服務,安裝不在這里展示
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.1.1?/bin/true2-創建容器的運行實例
docker?run?-d?\-p?80:80?\--volumes-from?pmm-data?\--name?pmm-server?\--restart?always?\percona/pmm-server:1.1.1#客戶端安裝
[root@master ~]# yum install http://www.percona.com/downloads/percona-release/redhat/0.1-4/percona-release-0.1-4.noarch.rpm
[root@master ~]# yum install -y pmm-client
#增加客戶端mysql監控
[root@master ~]# pmm-admin config ?--server 192.168.100.171
OK, PMM server is alive.
PMM Server ? ? ?| 192.168.100.171?
Client Name ? ? | master.wboy.com
Client Address ?| 192.168.100.41?
[root@master ~]# pmm-admin list
pmm-admin 1.1.1
PMM Server ? ? ?| 192.168.100.171?
Client Name ? ? | master.wboy.com
Client Address ?| 192.168.100.41?
Service Manager | unix-systemv
No monitoring registered for this node identified as 'master.wboy.com'.
#命令幫助
[root@master ~]# pmm-admin ?add --help
This command is used to add a monitoring service.
Usage:
? pmm-admin add [command]
Available Commands:
? mysql ? ? ? ? ? ?Add complete monitoring for MySQL instance (linux and mysql metrics, queries).
? linux:metrics ? ?Add this system to metrics monitoring.
? mysql:metrics ? ?Add MySQL instance to metrics monitoring.
? mysql:queries ? ?Add MySQL instance to Query Analytics.
? mongodb ? ? ? ? ?Add complete monitoring for MongoDB instance (linux and mongodb metrics).
? mongodb:metrics ?Add MongoDB instance to metrics monitoring.
? proxysql:metrics Add ProxySQL instance to metrics monitoring.
Flags:
? ? ? --service-port uint16 ? service port
Global Flags:
? -c, --config-file string ? PMM config file (default "/usr/local/percona/pmm-client/pmm.yml")
Use "pmm-admin add [command] --help" for more information about a command.
[root@master ~]# pmm-admin ?add ?mysql --help
This command adds the given MySQL instance to system, metrics and queries monitoring.
When adding a MySQL instance, this tool tries to auto-detect the DSN and credentials.
If you want to create a new user to be used for metrics collecting, provide --create-user option. pmm-admin will create
a new user 'pmm@' automatically using the given (auto-detected) MySQL credentials for granting purpose.
Table statistics is automatically disabled when there are more than 10000 tables on MySQL.
[name] is an optional argument, by default it is set to the client name of this PMM client.
Usage:
? pmm-admin add mysql [name] [flags]
Examples:
? pmm-admin add mysql --password abc123
? pmm-admin add mysql --password abc123 --create-user
? pmm-admin add mysql --password abc123 --port 3307 instance3307
Flags:
? ? ? --create-user ? ? ? ? ? ? ? ? ? ? ? create a new MySQL user
? ? ? --create-user-maxconn uint16 ? ? ? ?max user connections for a new user (default 10)
? ? ? --create-user-password string ? ? ? optional password for a new MySQL user
? ? ? --defaults-file string ? ? ? ? ? ? ?path to my.cnf
? ? ? --disable-binlogstats ? ? ? ? ? ? ? disable binlog statistics
? ? ? --disable-processlist ? ? ? ? ? ? ? disable process state metrics
? ? ? --disable-tablestats ? ? ? ? ? ? ? ?disable table statistics
? ? ? --disable-tablestats-limit uint16 ? number of tables after which table stats are disabled automatically (default 1000)
? ? ? --disable-userstats ? ? ? ? ? ? ? ? disable user statistics
? ? ? --force ? ? ? ? ? ? ? ? ? ? ? ? ? ? force to create/update MySQL user
? ? ? --host string ? ? ? ? ? ? ? ? ? ? ? MySQL host
? ? ? --password string ? ? ? ? ? ? ? ? ? MySQL password
? ? ? --port string ? ? ? ? ? ? ? ? ? ? ? MySQL port
? ? ? --query-source string ? ? ? ? ? ? ? source of SQL queries: auto, slowlog, perfschema (default "auto")
? ? ? --socket string ? ? ? ? ? ? ? ? ? ? MySQL socket
? ? ? --user string ? ? ? ? ? ? ? ? ? ? ? MySQL username
Global Flags:
? -c, --config-file string ? ?PMM config file (default "/usr/local/percona/pmm-client/pmm.yml")
? ? ? --service-port uint16 ? service port
#增加本地mysql實例
[root@master ~]# pmm-admin ?add ?mysql ?--user root --password root
[linux:metrics] OK, now monitoring this system.
[mysql:metrics] OK, now monitoring MySQL metrics using DSN root:***@unix(/var/lib/mysql/mysql.sock)
[mysql:queries] OK, now monitoring MySQL queries from slowlog using DSN root:***@unix(/var/lib/mysql/mysql.sock)
安裝完成后的訪問地址列表:其實在 landing page包含了下面三個功能的頁面
| PMM landing page | http://192.168.100.1 |
| Query Analytics (QAN web app) | http://192.168.100.1/qan/ |
| Metrics Monitor (Grafana) | http://192.168.100.1/graph/ User name:?admin Password:?admin |
| Orchestrator | http://192.168.100.1/orchestrator |
##
下面是一些截圖界面
轉載于:https://blog.51cto.com/andylhz2009/1902272
總結
以上是生活随笔為你收集整理的MySQL-MongoDB开源监控利器之PMM的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux 命令行编辑常用快捷键
- 下一篇: Devexpress报表开发(二):创建