博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Percona Monitoring and Management (PMM)安装部署使用详解 修订版
阅读量:2122 次
发布时间:2019-04-30

本文共 2071 字,大约阅读时间需要 6 分钟。

Percona Monitoring and Management (PMM)是一款开源的用于管理和监控MySQL和MongoDB性能的开源平台,通过PMM客户端收集到的DB监控数据用第三方软件Grafana画图展示出来。在这个产品之前,Percona提供了Zabbix和Cacti的图形模板,也许是考虑到了用户部署起来繁琐等问题,Percona发布了PMM Docker镜像,用户只需要下载镜像运行就全部搞定,开箱即用相当easy!

 

PMM架构如下图所示:

 

 

模块说明:

  • Query Analytics (QAN):用来展示MySQL慢查询日志。

  • Prometheus:是一个开源的服务监控系统和时间序列数据库,用来聚集DB的监控数据。

  • Grafana:将Prometheus里面的数据画图展示出来。

 

三、部署

 

系统:CentOS-7.2

 

1、Docker安装

 

# yum install docker -y

 

2、PMM Server安装

 

(1)下载PMM Server Docker镜像

 

#

docker create\

   -v /opt/prometheus/data\

   -v /opt/consul-data\

   -v /var/lib/mysql\

   -v /var/lib/grafana\

   --name pmm-data\

   percona/pmm-server:latest /bin/true

注意 要按自己的文件夹来 当然你要是默认安装 就最好了 

(2)启动

 

docker run -d\

   -p 80:80 \

   --volumes-from pmm-data\

   --name pmm-server\

   --restart always\

   percona/pmm-server:latest

 注意 80:80 是端口映射的关系 如果不想用 可以这样

-p 8080:80

(3)查看Docker运行状态

 

 

(4)打开浏览器

 

 选第二个

Component

URL

PMM首页

http://yourip

Query Analytics (慢日志分析)

http://yourip/qan/

Metrics Monitor (Grafana)

http://yourip/graph/

user name: admin

password: admin

Orchestrator

http://yourip/orchestrator

 

3、PMM Client安装

 

(1)制作yum源

 

yum install http://www.percona.com/downloads/percona-release/redhat/0.1-4/percona-release-0.1-4.noarch.rpm

(2)连接PMM Server 

 

# pmm-admin config --server yourip

pmm-admin config --server 192.168.100.1:8080

端口改了这么访问

 

(3)增加MySQL和MongoDB监控服务

 

# pmm-admin add mysql --user admin --password 123456 --host 192.168.148.21

# pmm-admin add mongodb --cluster rs1 --uri

mongodb://admin:123456@localhost:27017

 

(4)查看

 

# pmm-admin list

 

 

 

五、监控页面展示

 

OS系统

 

 

MySQL

 

 

MySQL慢查询分析

 

 

MongoDB

 

 

 

六、Email报警

 

报警是通过Grafana发出的,内置有Email、Webhook、slack、pagerduty,可惜没有微信,老外应该没听过这个玩意,所以这里我介绍一下Email报警是如何配置的。

 

1、首先进入docker shell里,见下面截图:

 

# docker ps

# docker exec -it 75d3be875849 /bin/bash

 

2、修改/etc/grafana/grafana.ini配置文件:

 

####################################   SMTP / Emailing ##########################

[smtp]

enabled = true

host =   smtp.126.com:25

user =   chunyang_he@126.com

password =   123456

;cert_file =

;key_file =

;skip_verify =   false

from_address =   chunyang_he@126.com

 

3、重启Docker生效

 

# docker stop 75d3be875849

# docker start 75d3be875849

 

4、页面配置

 

 

这一步步骤繁琐,具体请参考视频演示:

 

效果如下图:

 

 

参考文献:

 

转载地址:http://icdrf.baihongyu.com/

你可能感兴趣的文章
Go语言学习Part2:流程控制语句:for、if、else、switch 和 defer
查看>>
Go语言学习Part3:struct、slice和映射
查看>>
Go语言学习Part4-1:方法和接口
查看>>
Leetcode Go 《精选TOP面试题》20200628 69.x的平方根
查看>>
Leetcode C++ 剑指 Offer 09. 用两个栈实现队列
查看>>
Leetcode C++《每日一题》20200707 112. 路径总和
查看>>
云原生 第十一章 应用健康
查看>>
Leetcode C++ 《第202场周赛》
查看>>
云原生 第十二章 可观测性:监控与日志
查看>>
Leetcode C++ 《第203场周赛》
查看>>
云原生 第十三章 Kubernetes网络概念及策略控制
查看>>
《redis设计与实现》 第一部分:数据结构与对象 || 读书笔记
查看>>
《redis设计与实现》 第二部分(第9-11章):单机数据库的实现
查看>>
算法工程师 面经2019年5月
查看>>
搜索架构师 一面面经2019年6月
查看>>
稻草人手记
查看>>
第一次kaggle比赛 回顾篇
查看>>
leetcode 50. Pow(x, n)
查看>>
leetcode 130. Surrounded Regions
查看>>
【托业】【全真题库】TEST2-语法题
查看>>