Percona Monitoring and Management (PMM) - 快速入门
前言
数据库监控工具最常用的就是zabbix了,zabbix能将收集到的数据通过图表展示出来,并通过设置阈值及时告警。可zabbix对于文本的处理就不行了,比方说抓取数据库运行的sql,这个zabbix就无能为力。如果想看这段时间内执行的sql,常用的手段,对于oracle我们能通过拉取一段时间的awr报告进行分析,可mysql和mongodb没有类似的分析报告,只能去慢日志里面淘。接下来介绍一款监控mysql、mongodb的利器(PMM)。
(PMM)是一款开源的用于管理和监控MySQL和MongoDB性能的开源平台,通过PMM客户端收集到的DB监控数据用第三方软件Grafana画图展示出来。PMM除了能监控系统和数据库的一些指标以外,还能显示数据库指定时间范围内的慢日志,类似于Oracle中AWR的SQL ordered by Elapsed Time。
界面demo可以看官网:https://pmmdemo.percona.com/graph/
安装使用
pmm分为pmm-server和pmm-agent。pmm-server部署在单独的一台机器上,pmm-agent部署在被监控机上。下面是官网上介绍pmm的架构。

server端
安装的方式采用docker,我这里使用的环境是centos7(建议使用centos7)
关闭防火墙和selinux
systemctl stop firewalld.service
systemctl disable firewalld.service
setenforce 0
sed -i "s/SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config
安装docker
yum install docker -y
启动docker
service docker start
下载最新的镜像文件
docker pull percona/pmm-server:latest
查看镜像
docker tag percona/pmm-server percona/pmm-server:1.1.1 # 复制percona/pmm-server:latest镜像,并重命名为percona/pmm-server:1.1.1
docker images
创建容器
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
启动容器
docker run -d \
-p 8080:80 \
--volumes-from pmm-data \
--name pmm-server \
--restart always \
percona/pmm-server:1.1.1
查看容器运行
docker ps
pmm-agent端
下载pmm-client(https://www.percona.com/downloads/pmm/),下载rpm包或二进制包都行,我这里使用的是二进制包

安装pmm-agent
tar -zxvf pmm-client-1.17.1.tar.gz
cd pmm-client-1.17.1
./install
连接PMM Server
./pmm-admin config --server 10.40.16.60:8080 #10.40.16.60为pmm-server的ip地址
增加MySQL监控服务
先创建一个监控用户,也可以用已经存在的用户
SQL> grant all on *.* to monitor@'%' identified by 'monitor';
./pmm-admin add mysql --user monitor --password monitor --host 10.30.10.50 #host为被监控机的ip地址
查看监控状态
./pmm-admin list
登陆网页
去浏览器打开http://10.40.16.60:8080 #10.40.16.60为pmm-server的ip地址
出现下面界面,接下来就是各种指标查看了,摸索去吧,有问题欢迎大家留言

Percona Monitoring and Management (PMM) - 快速入门的更多相关文章
- Percona Monitoring and Management (PMM)安装使用
一.docker安装 参考:http://www.cnblogs.com/liuyongsheng/articles/6595353.html 二.Percona Monitoring and Man ...
- mysql/mongodb监控之Percona Monitoring and Management (PMM) 2.1.0安装使用
Percona Monitoring and Management (PMM)是Percona Server一款开源的用于管理和监控MySQL和MongoDB性能的开源平台,通过PMM客户端收集到的D ...
- 快速入门分布式消息队列之 RabbitMQ(2)
目录 目录 前文列表 RabbitMQ 的特性 Message Acknowledgment 消息应答 Prefetch Count 预取数 RPC 远程过程调用 vhost 虚拟主机 插件系统 最后 ...
- OpenStack云计算快速入门之二:OpenStack安装与配置
原文:http://blog.chinaunix.net/uid-22414998-id-3265685.html OpenStack云计算----快速入门(2) 该教程基于Ubuntu12.04版, ...
- Linux快速入门04-扩展知识
这部分是快速学习的最后一部分知识,其中最重要的内容就是源码的打包和软件的安装的学习,由于个人的Linux学习目的就是自己能在阿里云Ubuntu上搭建一个简单的nodejs发布环境. Linux系列文章 ...
- 专为设计师而写的GitHub快速入门教程
专为设计师而写的GitHub快速入门教程 来源: 伯乐在线 作者:Kevin Li 原文出处: Kevin Li 在互联网行业工作的想必都多多少少听说过GitHub的大名,除了是最大的开源项目 ...
- Activiti第一篇【介绍、配置开发环境、快速入门】
Activiti介绍 什么是Activiti? Activiti5是由Alfresco软件在2010年5月17日发布的业务流程管理(BPM)框架,它是覆盖了业务流程管理.工作流.服务协作等领域的一个开 ...
- PXC快速入门
1.快速入门 实验环境: Node Host IP Node1 pxc1 192.168.70.61 Node2 pxc2 192.168.70.62 Node3 pxc3 192.168.70.63 ...
- IdentityServer4 中文文档 -16- (快速入门)使用 EntityFramework Core 存储配置数据
IdentityServer4 中文文档 -16- (快速入门)使用 EntityFramework Core 存储配置数据 原文:http://docs.identityserver.io/en/r ...
随机推荐
- CALL和RET指令实验
实验10 1.在屏幕8行3列,用绿色显示data段中的字符串 assume cs:code data segment db data ends code segment start: ;行 ;列 ;颜 ...
- Redis开发与运维:特性
Redis 特性 速度快 内存数据库 L1 cache reference 读取CPU的一级缓存 0.5 ns Branch mispredict (转移.分支预测) 5 ns L2 cache re ...
- Bit Manipulation-leetcode
Bit Manipulation Find the Difference /* * Given two strings s and t which consist of only lowercase ...
- SQLServer之数据库表转化为实体类【带注释】
1.在开发过程中,有时候需要将数据库表转化为实体类.手敲除了不方便,还容易出错.本着DRY+懒人原则,参考了一位老司机的博客[见底部],并在其基础上进行了优化.[原先是不带注释的] DECLARE @ ...
- 多线程十 Timer
定时/计算在java中主要使用的是Timer对象,他的内部依然是采用多线程方式进行处理 它有四个构造方法 方法名 作用 Timer() 空参 Timer(String name) 指定名字 Timer ...
- Java题库——Chapter10 面向对象思考
1)You can declare two variables with the same name in ________. 1) _______ A)a method one as a forma ...
- Slickflow.NET 开源工作流引擎快速入门之二: 简单并行分支流程代码编写示例
前言:对于急切想了解引擎功能的开发人员,在下载版本后,就想尝试编写代码,完成一个流程的开发和测试.本文试图从一个最简单的并行分支流程来示例说明,如何快速了解引擎代码的编写. 版本:.NET Core2 ...
- sqlmap总结
转自:http://www.zerokeeper.com/web-security/sqlmap-usage-summary.html 0x01 需要了解 当给 sqlmap 这么一个 url 的时候 ...
- python字典中列表追加数据
dict = {} for i in range(1, 6): if i not in dict: dict[i] = [] for j in range(101, 106): dict[i].app ...
- linux 命令之touch
转自:http://www.maomao365.com/?p=2037 一.touch命令简介touch的命令功能说明: 1 可以通过touch新建一个文件; 2 可以修改文件的时间戳; 3 可以批量 ...