美文网首页数据库技术和框架linux运维
mysql监控工具-PMM,让你更上一层楼(上)

mysql监控工具-PMM,让你更上一层楼(上)

作者: 运维家 | 来源:发表于2022-02-25 21:16 被阅读0次

    声明:本文乃“运维家”原创,转载请注明出处,更多内容请关注公众号“运维家”。

    主旨

    不多说,数据库监控重中之重,必须掌握一个监控工具,主流的监控工具有zabbix,nagios,prometheus,很多很多,但是监控内容都太泛,功能太多,这里介绍一个监控工具,PMM,下面看看如何搭建和使用吧。 环境
    linux环境mysql环境docker环境
    PS:以上环境如果有哪个不会安装,请查看之前的文章,都有专门来介绍安装以上环境的 概念 PMM(Percona Monitoring and Management)是percona一款开源的用于管理和监控MySQL 和MongoDB性能的开源平台,通过PMM客户端收集到的DB监控数据用第三方软件Grafana画图展示出来,包括两个部分:
    PMM client:部署在每个监控数据库主机。搜集主机,数据库和查询分析数据等。PMM Server:汇集数据并展示。提供表,dashboards和graph的web界面。

    client介绍:

    PMM client 包含以下内容:pmm-admin:提供命令行交互界面管理pmm client,包括新增、删除数据库实例等pmm-mysql-query-0: 管理 mysql QAN代理的服务,从数据库实例搜集查询性能数据并发送到pmm server上的QAN APIpmm-mongdb-query-0:管理mongdb QAN代理的服务node_exporter:搜集系统性能数据,基于prometheus exportermysqld_exporter:mysql性能搜集mongodb_exporter:mongodb性能搜集proxysql_exporter:ProxySQL性能数据搜集
        server介绍:
    PMM部署支持docker、虚拟机部署,本文是基于docker来进行部署的PMM server包含以下内容:QAN(Query Analytics):分析mysql数据库的查询性能,相对于qan agent,它包含:  —qan api:后端存储和获取由agent采集的查询性能数据  —qan web:提供数据展示metrics monitor:提供mysql和mongodb的历史性能数据查询:  —prometheus:第三方的时序数据库,连接到pmm client的exporter并汇集数据。consul给pmm client提供api用于远程list,添加,删除prometheus上的配置主机,并存储监控的元数据  —grafana:第三方的图形展示界面Orchestrator:提供mysql复制的拓扑工具和图形界面  
    端口开通

    MPP server 和 MPP client 之间必须开通的端口:

    MPP server:80/443MPP client:42000/42001/42002/42003/42004
    下载server镜像并启动
    [yunweijia@localhost ~]$ sudo docker search pmm-serverNAME                              DESCRIPTION                                     STARS     OFFICIAL   AUTOMATEDpercona/pmm-server                PMM Server (https://www.percona.com/doc/perc…   92                   perconalab/pmm-server             PMM Server dev repo                             6                    perconalab/pmm-server-fb                                                          1                    perconalab/pmm-server-openshift                                                   1                    pdawn/pmm-server                  pmm server                                      0                    [OK]# 我们在这里下载最新的镜像[yunweijia@localhost ~]$ sudo docker pull percona/pmm-server[yunyunjia@localhost ~]$

    为了确保数据的安全性,我们创建持久化的pmm镜像:

    [yunweijia@localhost ~]$ sudo 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参数解释:docker create:该命令指示Docker守护程序从映像创建容器-v:该选项初始化数据卷的容器--name:该选项为你可以用于引用Docker网络中的容器的容器分配一个自定义名称

    上面我们指定了目录,那么我们就要创建这些目录:

    [yunweijia@localhost ~]$ sudo mkdir -pv /opt/prometheusmkdir: 已创建目录 "/opt/prometheus"[yunweijia@localhost ~]$ sudo mkdir -pv /opt/prometheus/datamkdir: 已创建目录 "/opt/prometheus/data"[yunweijia@localhost ~]$ sudo mkdir -pv /var/lib/mysqlmkdir: 已创建目录 "/var/lib/mysql"[yunweijia@localhost ~]$ sudo mkdir -pv /var/lib/grafanamkdir: 已创建目录 "/var/lib/grafana"[yunweijia@localhost ~]$

    启动容器:

    [yunweijia@localhost ~]$ sudo docker run -d -p 443:443 --volumes-from pmm-data --name pmm-server --restart always percona/pmm-server:latestae3a4427c08eaab5eb697369ec7d23e1362b03d1a1035660c01ac98b9db761fb[yunweijia@localhost ~]$ sudo docker psCONTAINER ID   IMAGE                       COMMAND                CREATED         STATUS                            PORTS                                        NAMESae3a4427c08e   percona/pmm-server:latest   "/opt/entrypoint.sh"   4 seconds ago   Up 4 seconds (health: starting)   0.0.0.0:80->80/tcp, :::80->80/tcp, 443/tcp   pmm-server[yunweijia@localhost ~]$
    MPP server访问

    https://IP地址

    例如:https://192.168.112.130

    界面如下:

    默认用户名密码是:admin/admin 输入完毕之后会让你重置密码,以防止忘记重置密码后,其他人用默认密码尝试登录,我在这里新建的密码是:abc123,需要输入两遍哦,重置完毕之后就进入了系统界面,如下:

    至此,PMM server部署完毕,下一篇我们将介绍PMM client的搭建,以及如何进行监控mysql,并前端显示。 老板们,点个关注哈,下一篇更精彩。 运维家 早上9点9分,更新有关于linux和python的内容,我希望关注我的老板们每天都能有收获,都能有进步。也欢迎各位老板后台留言改进的内容,或者想看的内容。 34篇原创内容 公众号

    本文使用 文章同步助手 同步

    相关文章

      网友评论

        本文标题:mysql监控工具-PMM,让你更上一层楼(上)

        本文链接:https://www.haomeiwen.com/subject/mgdfrrtx.html