前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >MySQL 监控 第02期:PMM 监控 MySQL

MySQL 监控 第02期:PMM 监控 MySQL

作者头像
数据库交流
发布2022-04-25 09:05:57
3K0
发布2022-04-25 09:05:57
举报
文章被收录于专栏:悦专栏

作者简介

马听,多年 DBA 实战经验,对 MySQL、 Redis、ClickHouse 等数据库有一定了解,专栏《一线数据库工程师带你深入理解 MySQL》、《Redis 运维实战》作者。

上一节内容,我们讲解了 Prometheus+Grafana 监控 MySQL,我们应该发现了,这种方案部署比较繁琐,并且监控项较少,这一节内容,我们就来聊聊另外一种 MySQL 监控方案:PMM(Percona Monitoring and Management )。

PMM 是一款免费的开源监控工具,可以用来监控 MySQL、MongoDB 和 PostgreSQL 等数据库。虽然还是依赖 Prometheus 和 Grafana,但它是对这些组件做了二次开发,监控数据更加丰富,部署也方便很多。

特别对于 MySQL,还有特定对 InnoDB、TokuDB、PXC 和慢查询语句的监控 dashboard,可以说非常适合做为 MySQL 的企业级监控方案。

1 架构图

首先来看下 PMM 监控 MySQL 的整体架构图:

如上图,MySQL 和 Linux 操作系统的监控数据均由 PMM Client 获取,并传给 PMM Server,最终通过 Grafana 展示。

2 实验环境介绍

实验环境大致如下:

  • 被监控的 MySQL 机器:192.168.150.123(MySQL 版本:8.0.22);
  • PMM Server 机器/Docker 机器:192.168.150.253(PMM 版本:2.14.0,Docker 版本:1.13.1,PMM 要求 Docker 的版本是 1.12.6 或更高的版本);
  • 服务器版本均为:CentOS 7.4;
  • 防火墙、Selinux 均关闭。

3 安装并启动 Docker

安装 Docker

代码语言:javascript
复制
yum install -y docker

启动 Docker

代码语言:javascript
复制
systemctl start docker

4 PMM Server 安装

拉 PMM Server 的镜像

代码语言:javascript
复制
docker pull percona/pmm-server:latest

创建 PMM 数据容器

代码语言:javascript
复制
docker create --volume /srv --name pmm-data percona/pmm-server:2 /bin/true

创建PMM服务器容器

代码语言:javascript
复制
docker run --detach --restart always -p 8080:80 -p 443:443 --volumes-from pmm-data --name pmm-server percona/pmm-server:2

访问 web 界面:192.168.150.253:8080,可看到如下界面,用户名密码都为 admin。

用户名密码:admin/admin

登录之后,可进入如下界面:

到这里,PMM Server 端就安装完成了。

5 PMM Client 安装

在 https://www.percona.com/downloads/pmm2/ 选择对应的 pmm-client,点击下载,如下图:

将下载的 rpm 包传到 PMM Client 需要部署的机器上,然后进行安装:

代码语言:javascript
复制
yum install pmm2-client-2.14.0-6.el7.x86_64.rpm -y

确定是否安装成功:

代码语言:javascript
复制
pmm-admin --version

6 PMM Client 连接 PMM Server

在 安装好 PMM Client 的机器上,执行下面的命令连接 PMM Server:

代码语言:javascript
复制
pmm-admin config --server-insecure-tls --server-url=https://admin:admin@192.168.150.253:443
  • 192.168.150.253 表示 pmm server 的 IP;
  • admin/admin 是 PMM 的用户名密码,与登录 PMM 界面的账号密码一致。

执行完成后,会有如下显示:

7 配置 MySQL 监控

在 MySQL 中创建 pmm 用于取监控数据的用户:

代码语言:javascript
复制
CREATE USER 'pmm_user'@'localhost'  IDENTIFIED BY 'PmmIHBN66QWE!';
GRANT SELECT, PROCESS, SUPER, REPLICATION CLIENT, RELOAD ON *.* TO 'pmm_user'@'localhost';

在 PMM Client 所在的机器,执行下面的命令,将 MySQL 添加到 PMM 中:

代码语言:javascript
复制
pmm-admin add mysql --username pmm_user --password 'PmmIHBN66QWE!' mysql-192.168.150.123 localhost:3306

查看添加的服务:

代码语言:javascript
复制
pmm-admin list

8 打开监控页面

再次打开监控界面:192.168.150.253:8080,登录后,就可以看到监控数据了。

按下图选择对应的 dashboard 和 Service Name,可以看到 MySQL 的监控数据:

按下图选择对应的 dashboard 和 Service Name,可以看到 MySQL 的慢查询:

按下图选择对应的 dashboard 和 Node Names,可以看到操作系统的监控数据:

到这里,通过 PMM 监控 MySQL 的内容就讲完了。

专栏《MySQL 监控》系列文章推荐

第01期:Prometheus+Grafana 监控 MySQL

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-03-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 悦专栏 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云数据库 SQL Server
腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档