苍穹环境中的PMM安装配置指南

栏目:云苍穹知识作者:金蝶来源:金蝶云社区发布:2024-09-23浏览:1

苍穹环境中的PMM安装配置指南

1 PMM简介

PMM  全称 Percona Monitoring and Management,是一款开源的监控平台,主要用于监控主机、MySQL 、PG、mongoDB性能。同时,也可以通过扩展其内置的Grafana模块,监控中间件、k8s、容器等组件。本文主要介绍PMM在苍穹环境下的主机、数据库监控功能安装配置。


PMM架构如下:

PMM client:部署在每个监控主机(如数据库主机)上,搜集主机、数据库、SQL慢查询等数据。

PMM Server:汇集数据并展示。提供表,dashboards和graph的web界面。


2 PMM安装

2.1 PMM Server(服务端)安装

(1).登录gPaaS master主机(推荐)或 苍穹应用master主机 

(2).将pmm server服务镜像(点击下载)上传到主机上

(3). 导入镜像:docker load -i pmm-server-v2.41.1.tar

(4).创建持久化数据容器:docker create --volume /srv --name pmm-data kcr.kingdee.com/gpaas/pmm-server:2.41.1 /bin/true

(5).运行pmm server容器:

docker run --detach --restart always --publish 8093:443 --volumes-from pmm-data  --name pmm-server kcr.kingdee.com/gpaas/pmm-server:2.41.1

注:8093 为主机开放的访问端口,可根据需要自行修改

(6). 浏览器登录pmm server控制台

      注:192.168.1.2 为主机的IP,8093为上述运行容器设置的主机映射端口

  • 默认登录账户:admin,默认登录密码:admin


注:由于PMM server端负责了大量数据库的性能数据清洗和分析,建议在原k8s主机资源配备基础上,增加至少2核 CPU,8G内存和500G磁盘的资源

2.2 PMM Client agent(客户端代理)安装

(1).使用root权限账户登录苍穹数据库主机(目前PMM只能监控PG或MySQL) 

(2).将pmm client二进制安装包(点击下载)上传到主机上

(3). 解压安装包:tar xfz pmm2-client-2.41.1.tar.gz && cd pmm2-client-2.41.1

(4).在主机上设置pmm安装目录环境变量:export PMM_DIR=/usr/local/percona/pmm2

(5).执行client安装:./install_tarball

(6).设置主机环境变量:PATH=$PATH:$PMM_DIR/bin

(7). 配置Client agent: 

pmm-agent setup --config-file=/usr/local/percona/pmm2/config/pmm-agent.yaml --server-address=192.168.1.2:8093 --server-insecure-tls --server-username=admin --server-password=admin 172.25.2.3 generic PG_172.25.2.3

注:server-address为前面步骤设置的pmm server地址, server-username 和 server-password 为 前面步骤设置的pmm server登录账户密码,172.25.2.3为数据库主机的IP地址,PG_172.25.2.3 为该数据库主机的标签(用于多数据库监控时的界面检索,建议配置规则为:数据库缩写+数据库主机IP地址后两位);其他参数按照上述进行配置即可

(8). 运行Client agent:  nohup pmm-agent --config-file=${PMM_DIR}/config/pmm-agent.yaml &

(9). 检查client agent运行状态:pmm-admin status


注:若部署了多台苍穹数据库,则每台数据库主机都需要执行上述1-9步骤来安装pmm client agent;客户端的安装需要在原数据库主机基础上, 增加至少1核 CPU,2G内存资源


2.3 PMM Client service(客户端服务) 配置

2.3.1 PG数据库的服务配置

(1). 登录任一一台PG数据库主机 

(2). 将PG服务增加值PMM Server端进行监控:

pmm-admin add  postgresql --host=172.25.2.3 --password=Cosmic@2321 --port=5432 --username=cosmic PG_Service_172.25.2.3 --query-source="pgstatements"

注:host 为PG数据库主机IP, username、password、port 为PG数据库的登录账户密码(注意账户需要有最高的管理员权限;若PG数据库为安装器安装,建议使用安装时配置的PG账户),PG_Service_172.25.2.3 为该数据库服务的标签(用于多数据库监控时的界面检索,建议配置规则为:数据库缩写+Service+数据库主机IP地址后两位); 其他参数按照上述进行配置即可


2.3.2 MySQL数据库的服务配置

(1). 登录任一一台MySQL数据库主机 

(2). 由于安装器不支持MySQL数据库安装,需要先手工创建一个具有足够权限的账户:

#CREATE USER 'pmm'@'%' IDENTIFIED BY 'Cosmic@2321' WITH MAX_USER_CONNECTIONS 10;

#GRANT SELECT, PROCESS, SUPER, REPLICATION CLIENT, RELOAD, BACKUP_ADMIN ON *.* TO 'pmm'@%; 

(3).将MySQL服务增加值PMM Server端进行监控:

pmm-admin add mysql --host 172.25.2.3 --username pmm --password Cosmic@2321 --port 3306  MySQL_Service_172.25.2.3

注:host 为数据库主机IP, username、password、port 为数据库的登录账户、密码、端口(注意账户需要有最高的管理员权限;),MySQL_Service_172.25.2.3为该数据库服务的标签(用于多数据库监控时的界面检索,建议配置规则为:数据库缩写+Service+数据库主机IP地址后两位); 其他参数按照上述进行配置即可

(4). 开启MySQL慢查询(以便pmm能监控sql执行情况)

编辑/etc/my.cnf:

slow_query_log=ON

log_output=FILE

long_query_time=0

log_slow_admin_statements=ON

log_slow_slave_statements=ON


3 PMM使用

上述配置完后,即可浏览器登录pmm server 监控数据库数据。主要使用场景如下:

(1). SQL查询分析(核心场景)

Load –在时间范围内合计的总压力大小,在对应SQL计算得到负载百分比,并提供分布曲线。

Count-在时间范围内的执行次数,即QPS,并提供曲线。

Latency-时间延迟,根据执行次数计算平均时间,并提供曲线。


(2). 数据库主机、应用指标查询(也可通过gPaaS 监控服务中的主机、数据库页面进行查询)。部分指标如下:

  • CPU


    System  内核态占用率,高:内存拷贝、大量系统调用,可以使用strace跟踪处理。

    User 用户态CPU占用,高:用户态CPU占用,普遍较高,可使用ltrace分析或者JDK的top+jstack分析。

    Softirq 代码调用了中断INT,导致CPU响应中断处理程序。

    Iowait 大量CPU时间用于IO的拷贝处理,从内核空间拷贝到用户空间、或者在等待IO完成。需要重点关注。

  • 内存

    MySQL:数据库骤然的内存下降或者跃升,提示数据库服务重启或者OOM,正在执行大SQL。

    PostgreSQL:Used变化不明显,骤然上升提示work_mem使用增加(排序、去重、分组等)。

  • 数据库服务


    提供总览性监控,例如各种Buffer、临时文件、元组等监控。


苍穹环境中的PMM安装配置指南

1 PMM简介PMM 全称 Percona Monitoring and Management,是一款开源的监控平台,主要用于监控主机、MySQL 、PG、mongoDB性能。同时...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息