您现在的位置是:首页 > 正文

pmm最新版本v2.40.0尝鲜体验

2024-02-01 05:23:24阅读 3

1 概述

PMM 是一款免费开源的企业级的数据库监控工具,可用来监控 MySQL、MongoDB 和 PostgreSQL 等数据库。除了指标监控,针对MySQL还具备SQL语句的性能监控。
官方地址是https://docs.percona.com/percona-monitoring-and-management,最新版本为v2.40.0。

2 架构

在这里插入图片描述
在这里插入图片描述

pmm是server-agent架构。
master端是同时具备多个数据库的。pg是关系型数据库用于存储pmm元数据,vm是时序数据库用于存储指标数据,clickhouse用于存储SQL分析相关的数据。
master端是包含一个agent守护进程和N个expoter。


2 部署

2.1 环境

版本信息如下:
a、操作系统:centos 7.6
b、主机IP:192.168.0.70
c、docker版本:20.10.5-3

2.2 安装docker

yum install -y yum-utils device-mapper-persistent-data lvm2
yum install yum-utils -y
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum list docker-ce --showduplicates
yum install docker-ce-cli-20.10.5-3.el7 docker-ce-20.10.5-3.el7 -y

mkdir -p /etc/docker
cat > /etc/docker/daemon.json << EOF
{
      "registry-mirrors": ["https://bxsfpjcb.mirror.aliyuncs.com", "https://registry.docker-cn.com"],
      "max-concurrent-downloads": 10,
      "log-driver": "json-file",
      "log-level": "warn",
      "log-opts": {
          "max-size": "100m",
          "max-file": "3"
      },
       "live-restore": true,
      "exec-opts": ["native.cgroupdriver=systemd"]
}
EOF

systemctl daemon-reload
systemctl enable docker.service
systemctl restart docker

2.3 部署pmm-server

docker run -d --name pmm -p 8080:80 -p 8443:443 percona/pmm-server:2.40.0

在浏览器访问http://主机:8080即可进入grafana界面。
在这里插入图片描述
另外,此版本的pmm-server中的grafana的数据库默认已是pg。


2.4 下载和安装pmm-client

wget https://downloads.percona.com/downloads/pmm2/2.40.0/binary/redhat/8/x86_64/pmm2-client-2.40.0-6.el8.x86_64.rpm
rpm -i pmm2-client-2.40.0-6.el8.x86_64.rpm

pmm agent的工作目录是/usr/local/percona/pmm2,二进制命令位于/usr/local/percona/pmm2/bin目录下。
在这里插入图片描述


2.5 注册pmm-client

export MYHOST=192.168.0.70
pmm-admin config --server-insecure-tls --server-url=https://admin:admin@$MYHOST:8443

pmm-admin命令执行成功后,pmm-agent的运行是由systemd来管理的,各种exporter都是pmm-agent的子进程。
在这里插入图片描述


2.6 部署mysql实例

部署2个MySQL实例,分别是5.7版本和8.0版本。

docker run -p 3306:3306 --name mysql-demo1 -e MYSQL_ROOT_PASSWORD=password -d mysql:5.7
docker run -p 3307:3306 --name mysql-demo2 -e MYSQL_ROOT_PASSWORD=password -d mysql:8.0

分别进入2个MySQL实例创建新账号,用于pmm组件对MySQL的访问。

CREATE USER 'pmm_user'@'%' IDENTIFIED BY 'password';
GRANT SELECT, PROCESS, SUPER, REPLICATION CLIENT, RELOAD ON *.* TO 'pmm_user'@'%';
flush privileges;

2.7 添加mysql实例到pmm

# 使用performance schema作为SQL分析模块的数据源
# 要求MySQL 5.6.9或以上
export MYHOST=192.168.0.70
pmm-admin add mysql --query-source=perfschema --username pmm_user --password 'password' mysql-demo1 $MYHOST:3306
pmm-admin add mysql --query-source=perfschema --username pmm_user --password 'password' mysql-demo2 $MYHOST:3307

在这里插入图片描述


3 grafana界面

在这里插入图片描述
在这里插入图片描述


小结

本文通过docker方式部署pmm-server和数据库实例、通过二进制方式部署pmm-agent,可让DBA工程师快速初窥pmm监控。

网站文章

  • web安全第九天:服务器端请求伪造漏洞SSRF

    web安全第九天:服务器端请求伪造漏洞SSRF

    web安全第十天:服务器端请求伪造漏洞SSRF

    2024-02-01 05:23:15
  • 初学kafka命令(topics)

    创建kafka topicbin/kafka-topics.sh --create --topic topicname --replication-factor 1 --partitions 1 --zookeeper localhost:2181查询topic,进入kafka目录:bin/kafka-topics.sh --list --zookeeper localhost:2181查...

    2024-02-01 05:23:08
  • 【C语言】——打印杨辉三角(递归)

    【C语言】——打印杨辉三角(递归)

    觉得我分享的文章不错的话,可以关注一下哦,嘻嘻嘻🌞🌞

    2024-02-01 05:22:40
  • Java任务超时处理机制实现

    1问题描述 在应用软件的开发中,经常会遇到这样的一种需求:需要实现一个方法来执行某种任务,而这个方法的执行时间不能超过指定值,如果超时,则调用者不管这个方法将来是否可能执行成功,都要中断它的执行,或者让这个方法返回。这就是超时处理问题。 根据执行任务的方法是否异步,可以把问题从两个方面分析:如果方法顺序执行,则方法执行时整个程序的控制权在执行任务的方法中,方法调用者对于

    2024-02-01 05:22:33
  • 一个字节是几位?

    一个字节为8位。字节含义:字节是计算机信息技术用于计量存储容量的一种计量单位,也表示一些计算机编程语言中的数据类型和语言字符。数据存储是以“字节”(Byte)为单位,数据传输是以大多是以“位”(bit...

    2024-02-01 05:22:27
  • 【MATLAB】如何安装配置MinGW-w64 C/C++编译器 热门推荐

    【MATLAB】如何安装配置MinGW-w64 C/C++编译器 热门推荐

    【MATLAB】如何安装配置MinGW-w64 C/C++编译器 win10 + matlab2018b 具体方法: 1.打开你的matlab,选择“附加功能”,选择“获取附加功能” 2.在“附加功能...

    2024-02-01 05:22:00
  • 25.理一理关于tensorflow的各种骚操作

    1.tf.squeezehttps://www.jianshu.com/p/a21c0bc10a382.tf.casthttps://blog.csdn.net/dcrmg/article/details/797478143.tf.expand_dims https://www.cnblogs.com/helloworld0604/p/90017...

    2024-02-01 05:21:53
  • ‘mysql‘ 不是内部或外部命令,也不是可运行的程序或批处理文件终极大坑

    ‘mysql‘ 不是内部或外部命令,也不是可运行的程序或批处理文件终极大坑

    ‘mysql’ 不是内部或外部命令,也不是可运行的程序或批处理文件的解决方案‘mysql’ 不是内部或外部命令,也不是可运行的程序或批处理文件的解决方案,关于这个问题其实还是很好解决的,网上一搜全都有...

    2024-02-01 05:21:46
  • Python-Django篇----用Python搭建自己的服务(一)(2):配置文件介绍并运行本地服务

    Python-Django篇----用Python搭建自己的服务(一)(2):配置文件介绍并运行本地服务

    从这一篇文章开始呢,就涉及到代码的编写了,因为写的是Python嘛,所以建议大家去弄一个PyCharm,当然,也可以直接用命令行编写,我这里呢就用编译器方便介绍。 首先呢,我们看上篇文章中创建的项目文件, 主要呢我们就关心一下settings和urls文件就行了,wsgi就是个web服务的网端接口配置文件,我们不太care这东...

    2024-02-01 05:21:16
  • python 文件、文件夹详细操作

    python 文件、文件夹详细操作

    一、文件操作1、文件操作流程2、文件打开模式3、文件循环4、文件的修改5、flush方法6、whit语句7、其它操作二、文件夹 /1、提要2、判断路径或文件3、路径名、文件名分割4、工作目录及创建文件...

    2024-02-01 05:21:09