您现在的位置是:首页 > 文章详情

MySQL-MongoDB开源监控利器之PMM

日期:2017-03-01点击:462

    最近要对数据库的监控体系进行改进,发现Percona 公司的一款开源的监控工具Percona Monitoring and Management(PMM) 对于MySQL的监控指标各项值比较全面准确,现在公司内部的开发测试环境进行了部署体验。

    主要的架构图如下:源于官方

_p_w_picpaths/pmm-diagram.png

    可以看到主要是由客户端的代理程序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/true

2-创建容器的运行实例

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

##

下面是一些截图界面


wKiom1i2QhHRX3imAAIcbFZ9EBU152.jpg-wh_50

wKiom1i2QhKCJAVoAAGs81dMG3s246.jpg-wh_50

wKioL1i2QhOTvHyXAAOPPiJMvl8902.jpg-wh_50

wKioL1i2QhThPJ6ZAAFwz5HAZuc415.jpg-wh_50

wKioL1i2QhewBkBWAAHrbAJ47hc719.jpg-wh_50


原文链接:https://blog.51cto.com/andylhz2009/1902272
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章