4323213 发表于 2017-3-3 13:25:16

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/perc ... nagement/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

#客户端安装
# yum install http://www.percona.com/downloads ... se-0.1-4.noarch.rpm
# yum install -y pmm-client

#增加客户端mysql监控

# 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

# 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'.

#命令帮助
# pmm-adminadd --help
This command is used to add a monitoring service.

Usage:
pmm-admin add

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:metricsAdd 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 --help" for more information about a command.
# pmm-adminaddmysql --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.

is an optional argument, by default it is set to the client name of this PMM client.

Usage:
pmm-admin add mysql

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实例
# pmm-adminaddmysql--user root --password root
OK, now monitoring this system.
OK, now monitoring MySQL metrics using DSN root:***@unix(/var/lib/mysql/mysql.sock)
OK, now monitoring MySQL queries from slowlog using DSN root:***@unix(/var/lib/mysql/mysql.sock)

安装完成后的访问地址列表:其实在 landing page包含了下面三个功能的页面


各个组件功能访问地址
PMM landing pagehttp://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

Orchestratorhttp://192.168.100.1/orchestrator
##

下面是一些截图界面







页: [1]
查看完整版本: MySQL-MongoDB开源监控利器之PMM