监控系统-PMM
Percona Monitoring and Management (PMM)是一款开源的用于管理和监控MySQL和MongoDB性能的开源平台
通过PMM客户端收集到的DB监控数据用第三方软件Grafana画图展示出来
PMM提供了对MyISAM、InnoDB、TokuDB和PXC/Glarera的监控,另外也提供了Query Analytics的功能,可以
检视执行了哪些SQL指令,并对执行效能较差的语法进行优化。另外在新版本还支持了MySQL复制拓扑图结构构造
1 安装
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum clean all
yum makecache
yum install -y epel-release
yum install docker -y
systemctl start docker
docker pull percona/pmm-server:latest
查看镜像
[root@jenkins opt]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
docker.io/percona/pmm-server latest deac61541b67 5 months ago 1.08 GB
[root@jenkins opt]# docker version
Client:
Version: 1.13.1
API version: 1.26
Package version: docker-1.13.1-102.git7f2769b.el7.centos.x86_64
Go version: go1.10.3
Git commit: 7f2769b/1.13.1
Built: Mon Aug 5 15:09:42 2019
OS/Arch: linux/amd64 Server:
Version: 1.13.1
API version: 1.26 (minimum version 1.12)
Package version: docker-1.13.1-102.git7f2769b.el7.centos.x86_64
Go version: go1.10.3
Git commit: 7f2769b/1.13.1
Built: Mon Aug 5 15:09:42 2019
OS/Arch: linux/amd64
Experimental: false
--关闭防火墙,禁用selinux
groupadd docker
useradd -g docker docker
创建容器
[docker@jenkins ~]$ docker create \
> -v /opt/prometheus/data \
> -v /opt/consul-data \
> -v /var/lib/mysql \
> -v /var/lib/grafana \
> --name pmm-data \
> docker.io/percona/pmm-server /bin/true
fc92bd7d4bcc2e2014cbb5a03584ea269e8cea0e268aca4901a6827cf4570529
启动容器
[docker@jenkins ~]$ docker run -d -p 8090:80 --volumes-from pmm-data --name pmm-server --restart always docker.io/percona/pmm-server
8d925d326813083143c04ff6155617738624f4a9e8c6792ae6200bd78e05a214
安装pmm-client
[root@jenkins opt]# rpm -ivh pmm-client-1.17.1-1.el7.x86_64.rpm
warning: pmm-client-1.17.1-1.el7.x86_64.rpm: Header V4 RSA/SHA256 Signature, key ID 8507efa5: NOKEY
Preparing... ################################# [100%]
Updating / installing...
1:pmm-client-1.17.1-1.el7 ################################# [100%]
配置server
[root@jenkins opt]# pmm-admin config --server 192.168.19.229:8090
OK, PMM server is alive. PMM Server | 192.168.19.229:8090
Client Name | jenkins
Client Address | 192.168.19.229
创建mysql监控账号
(root@localhost:mysql.sock) [(none)]> create user 'monitor'@'%' identified by '***';
Query OK, 0 rows affected (0.47 sec)
(root@localhost:mysql.sock) [(none)]> grant all privileges on *.* to 'monitor'@'%';
Query OK, 0 rows affected (0.02 sec)
(root@localhost:mysql.sock) [(none)]> flush privileges;
Query OK, 0 rows affected (0.21 sec)
添加remote mysql实例
[root@jenkins opt]# pmm-admin add mysql --user monitor --password *** --host 10.15.7.29
[linux:metrics] OK, now monitoring this system.
[mysql:metrics] OK, now monitoring MySQL metrics using DSN monitor:***@tcp(10.15.7.29:3306)
[mysql:queries] OK, now monitoring MySQL queries from perfschema using DSN monitor:***@tcp(10.15.7.29:3306)
[root@jenkins opt]# pmm-admin list
pmm-admin 1.17.1 PMM Server | 192.168.19.229:8090
Client Name | jenkins
Client Address | 192.168.19.229
Service Manager | linux-systemd -------------- -------- ----------- -------- --------------------------------- ---------------------------------------------
SERVICE TYPE NAME LOCAL PORT RUNNING DATA SOURCE OPTIONS
-------------- -------- ----------- -------- --------------------------------- ---------------------------------------------
mysql:queries jenkins - YES monitor:***@tcp(10.15.7.29:3306) query_source=perfschema, query_examples=true
linux:metrics jenkins 42000 YES -
mysql:metrics jenkins 42002 YES monitor:***@tcp(10.15.7.29:3306)
[root@jenkins opt]# pmm-admin check-network
PMM Network Status Server Address | 192.168.19.229:8090
Client Address | 192.168.19.229 * System Time
NTP Server (0.pool.ntp.org) | 2019-08-08 06:25:51 +0000 UTC
PMM Server | 2019-08-08 06:25:50 +0000 GMT
PMM Client | 2019-08-08 14:25:52 +0800 CST
PMM Server Time Drift | OK
PMM Client Time Drift | OK
PMM Client to PMM Server Time Drift | OK * Connection: Client --> Server
-------------------- -------
SERVER SERVICE STATUS
-------------------- -------
Consul API OK
Prometheus API OK
Query Analytics API OK Connection duration | 372.087µs
Request duration | 5.621825ms
Full round trip | 5.993912ms * Connection: Client <-- Server
-------------- -------- --------------------- ------- ---------- ---------
SERVICE TYPE NAME REMOTE ENDPOINT STATUS HTTPS/TLS PASSWORD
-------------- -------- --------------------- ------- ---------- ---------
linux:metrics jenkins 192.168.19.229:42000 OK YES -
mysql:metrics jenkins 192.168.19.229:42002 OK YES -
监控系统-PMM的更多相关文章
- 实战 Prometheus 搭建监控系统
实战 Prometheus 搭建监控系统 Prometheus 是一款基于时序数据库的开源监控告警系统,说起 Prometheus 则不得不提 SoundCloud,这是一个在线音乐分享的平台,类似于 ...
- MySQL监控利器-PMM
本篇文章来简要介绍一下MySQL监控利器-PMM的部署过程. 环境: 主机名 IP 功能 系统 数据库版本 pmmclient 192.168.91.34 PMM-client RHEL7.4 p ...
- Opserver开源的服务器监控系统(ASP.NET)
Opserver是Stack Exchange下的一个开源监控系统,系统本身由C#语言开发的ASP.NET(MVC)应用程序,无需任何复杂的应用配置,入门很快.下载地址:https://github. ...
- prometheus监控系统
关于Prometheus Prometheus是一套开源的监控系统,它将所有信息都存储为时间序列数据:因此实现一种Profiling监控方式,实时分析系统运行的状态.执行时间.调用次数等,以找到系统的 ...
- 利用WCF的双工通讯实现一个简单的心跳监控系统
何为心跳监控系统? 故名思义,就是监控某个或某些个程序的运行状态,就好比医院里面的心跳监视仪一样,能够随时显示病人的心跳情况. 心跳监控的目的是什么? 与医院里面的心跳监视仪目的类似,监控程序运行状态 ...
- 分布式监控系统Zabbix-3.0.3-完整安装记录(7)-使用percona监控MySQL
前面已经介绍了分布式监控系统Zabbix-3.0.3-完整安装记录(2)-添加mysql监控,但是没有提供可以直接使用的Key,太过简陋,监控效果不佳.要想更加仔细的监控Mysql,业内同学们都会选择 ...
- 监控系统Opserver的配置调试
Stack Exchange开源其监控系统Opserver有一段时间了.之前在项目中用过他们的MiniProfile来分析页面执行效率和帮助新人了解项目,当他们开源了其监控系统的时候正好部门也在关注监 ...
- 日志监控系统中,大批量查询mysql方案
最近开发遇到一个问题:需要查询一个大时间段内的数据,分1000个小段,即为1000个点.X轴是时间,Y轴是该小时间段内统计后数据.注意:数据返回是一个list,其中每个对象返回值都是该小时间段内数据统 ...
- day26 分布式监控系统开发
本节内容 为什么要做监控? 常用监控系统设计讨论 监控系统架构设计 监控表结构设计 为什么要做监控? –熟悉IT监控系统的设计原理 –开发一个简版的类Zabbix监控系统 –掌握自动化开发项目的程序设 ...
随机推荐
- zencart简易页面ezpage后台编辑位置
zencart简易页面ezpage后台编辑位置: 后台-Tools(工具)-EZ-Pages(简易页面管理) 若编辑之后无法保存,说明includes\languages\语言包\html_inclu ...
- Redis 与 MQ 的区别
Redis是一个高性能的key-value数据库,它的出现很大程度补偿了memcached这类key-value存储的不足.虽然它是一个数据库系统,但本身支持MQ功能,完全可以当做一个轻量级的队列服务 ...
- zzzphp V1.6.0 按照功能分析漏洞
0 基础支撑功能 0.1 路由功能 0.2 模版解析 * zzzphp V1.6.0 的代码执行漏洞,模版解析功能的问题 程序解析模版时,将模版中的部分内容匹配出来直接传递给了eval,且没有经过过滤 ...
- itop4412编译内核时出现“recipe for target 'arch/arm/mach-exynos/cpu-exynos4.o' failed”的解决方法
依次执行如下命令 #su root 输入root用户密码 #cd #vim .bashrc 到达最底行,确保环境变量如下图所示 保存退出后,执行如下指令 #source .bashrc 重启Termi ...
- 题解 【POJ1187】 陨石的秘密
解析 考虑到数据范围,其实我们可以用记搜. 设\(f[a][b][c][d]\)表示还剩\(a\)个'{}',\(b\)个"[]",\(c\)个"()",深度\ ...
- 【leetcode】1283. Find the Smallest Divisor Given a Threshold
题目如下: Given an array of integers nums and an integer threshold, we will choose a positive integer di ...
- jmeter+jenkins+git+ant
摘自:https://www.cnblogs.com/syw20170419/p/10732167.html 使用场景: 多人协作,共同完成脚本的编写,脚本之间进行合并后,用远程构建运行脚本.做接口的 ...
- mysql优化(上)
磁盘组成 和 磁盘读取过程 尽量减少 i/o 操作. 表结构设计:(1)三范式 : 原子性(不可拆分).唯一性(不能有完全相同的数据).无冗余性(不能有多余的数据),对于冗余性说明一下:拿订单 ...
- HTML5上传超大文件解决方案
一.概述 所谓断点续传,其实只是指下载,也就是要从文件已经下载的地方开始继续下载.在以前版本的HTTP协议是不支持断点的,HTTP/1.1开始就支持了.一般断点下载时才用到Range和Content- ...
- AtCoder AGC019E Shuffle and Swap (DP、FFT、多项式求逆、多项式快速幂)
题目链接 https://atcoder.jp/contests/agc019/tasks/agc019_e 题解 tourist的神仙E题啊做不来做不来--这题我好像想歪了啊= =-- 首先我们可以 ...