原 【DB宝41】监控利器PMM的使用--监控MySQL、PG、MongoDB、ProxySQL等
Tags: 原创PGMySQLDocker监控GrafanaMongoDBPMMOrchestrator
一、PMM简介
之前发布过一篇Prometheus+Grafana的文章,连接为:【DB宝36】使用Docker分分钟搭建漂亮的prometheus+grafana监控,今天我们来介绍一下另一个监控工具:PMM。
PMM(Percona Monitoring and Management)是一个免费的开源平台,用于管理和监视数据库性能,在docker环境中即可运行。它可以主动管理和监控MySQL(AWS RDS MySQL、Aurora MySQL、用户自建MySQL实例)、MariaDB、MongoDB、PostgreSQL等数据库,也可以监控ProxySQL中间件,并提供了众多指标与多样告警方式。
Percona Monitoring and Management (PMM)是一款开源的用于管理和监控MySQL和MongoDB性能的开源平台,通过PMM客户端收集到的DB监控数据用第三方软件Grafana画图展示出来。
PMM提供了对MyISAM、InnoDB、TokuDB和PXC/Glarera的监控,另外也提供了Query Analytics的功能,可以检视执行了哪些SQL指令,并对执行效能较差的语法进行优化。另外在新版本还支持了MySQL复制拓扑图结构构造。Demo官网:http://pmmdemo.percona.com
PMM针对操作系统的部份也提供了硬盘、网络、CPU和RAM的监控,特别的是它提供了Context switches、Processes和interrupts的监控,Context Switches可以看到CPU上下切换文的状况,Processes可以方便了解系统有多少程序在等待I/O。
PMM整体来说算是一款不错的监控产品,针对MySQL、PG、Mongo都有很专业的指标统计,而且部署简单整套打包到容器中。2.0之后底层持久化数据库从MySQL更换为PG后,性能更是有很大提升。
PMM的体系结构如下所示:
二、安装使用
https://www.percona.com/software/pmm/quickstart
https://www.percona.com/doc/percona-monitoring-and-management/2.x/
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 | https://hub.docker.com/r/percona/pmm-server/tags docker pull percona/pmm-server:latest -- 拉取镜像 docker pull percona/pmm-server:2.14 -- 创建PMM数据容器 docker rm lhr-pmm-data docker create --name lhr-pmm-data \ -v /pmmdata \ percona/pmm-server:2.14 /bin/true -- 创建PMM服务器容器 docker rm -f lhr-pmm-server docker run -d --name lhr-pmm-server -h lhr-pmm-server \ -p 280:80 -p 2443:443 \ --volumes-from lhr-pmm-data \ -e SERVER_USER=lhr \ -e SERVER_PASSWORD=lhr \ -e ORCHESTRATOR_ENABLED=true \ -e METRICS_RETENTION=48h \ --restart always \ percona/pmm-server:2.14 -- 访问web界面 http://192.168.66.35:280 https://192.168.66.35:2443 admin/admin -- 进入PMM服务器 docker exec -it lhr-pmm-server bash -- 连接到PMM服务器 pmm-admin config --server-insecure-tls --server-url=https://admin:admin@127.0.0.1:443 pmm-admin list |
可以使用http或https访问,端口号不一样。