PMM监控MySQL

一、PMM-SERVER

1. 安装docker
yum install -y docker-io
2. 拉取pmm-server镜像
docker pull percona/pmm-server:latest
3. 创建持久化容器
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
4. 启动pmm-server
docker run -d \
   -p 8888:80 \     #将docker的80端口映射到宿主机的8888端口
   --volumes-from pmm-data \
   --name pmm-server \
   --restart always \
   percona/pmm-server:latest

查看运行状态

成都创新互联是一家专业提供东兰企业网站建设,专注与网站建设、成都网站建设H5建站、小程序制作等业务。10年已为东兰众多企业、政府机构等服务。创新互联专业网络公司优惠进行中。

[root@localhost ~]# docker ps -a
CONTAINER ID        IMAGE                       COMMAND                CREATED             STATUS              PORTS                           NAMES
983cb32aa7ca        percona/pmm-server:latest   "/opt/entrypoint.sh"   4 days ago          Up 4 days           443/tcp, 0.0.0.0:8888->80/tcp   pmm-server          
670aaeb497cf        percona/pmm-server:latest   "/bin/true"            4 days ago                                                              pmm-data    
5. 关闭匿名登陆,并调整时区
[root@localhost docker]# docker exec -it pmm-server /bin/bash    #进入docker容器
[root@983cb32aa7ca opt]# vi /etc/grafana/grafana.ini
#################################### Anonymous Auth ##########################
[auth.anonymous]
# enable anonymous access
#enabled = True

[root@983cb32aa7ca opt]# cat /etc/localtime 
TZif2UTCTZif2UTC
UTC0
[root@983cb32aa7ca opt]# cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime 
cp: overwrite '/etc/localtime'? y
6. 登陆dashboard

浏览器中输入: xx.xx.xx.xx:8888

二、PMM-CLIENT

1. 在需要监控的机器上安装pmm-client
yum install http://www.percona.com/downloads/percona-release/redhat/0.1-6/percona-release-0.1-6.noarch.rpm   #配置percona源

yum install pmm-client #安装pmm-client
2. 配置pmm-server地址

--server 后接的是pmm-server的地址和端口
-c 后边接的是配置文件,默认配置文件为/usr/local/percona/pmm-client/pmm.yml

pmm-admin config --server xx.xx.xx.xx:8888 -c /usr/local/percona/pmm-client/pmm.yml             

以下是配置文件的内容

cat /usr/local/percona/pmm-client/pmm.yml

server_address: xx.xx.xx.xx:8888
client_address: xx.xx.xx.xx
bind_address: xx.xx.xx.xx
client_name: monitor-node1
3. 添加linux系统监控
pmm-admin add linux:metrics 
4. 添加MySQL监控

在MySQL实例中创建监控用户:

GRANT SELECT, PROCESS, SUPER, REPLICATION CLIENT, RELOAD ON *.* TO 'pmm'@'127.0.0.1' IDENTIFIED BY 'pmm' WITH MAX_USER_CONNECTIONS 10;
GRANT SELECT, UPDATE, DELETE, DROP ON performance_schema.* TO 'pmm'@'127.0.0.1';

添加MySQL监控

pmm-admin add mysql --host 127.0.0.1 --user pmm --password pmm --port 3306 instance3306   ##此命令是监控MySQL实例状态以及慢查询分析,如果不想监控慢日志使用mysql:metrics即可

三、遇到的问题

1. purge报错

某台机器下线,需要清理pmm-server中关于这台机器的数据,执行purge命令后报错

[root@localhost ~]# pmm-admin purge linux:metrics
panic: interface conversion: interface {} is nil, not map[string]interface {}

goroutine 1 [running]:
github.com/percona/pmm-client/pmm.(*Admin).PurgeMetrics(0xbe4e60, 0x7ffc82a0674b, 0xd, 0xc4201f68b8, 0xc4201abb68, 0x7ff262)
    /tmp/go/src/github.com/percona/pmm-client/pmm/main.go:427 +0x5a4
main.glob..func39(0xbde460, 0xc4200a1730, 0x1, 0x1)
    /tmp/go/src/github.com/percona/pmm-client/pmm-admin.go:1179 +0xd1
github.com/percona/pmm-client/vendor/github.com/spf13/cobra.(*Command).execute(0xbde460, 0xc4200a16e0, 0x1, 0x1, 0xbde460, 0xc4200a16e0)
    /tmp/go/src/github.com/percona/pmm-client/vendor/github.com/spf13/cobra/command.go:654 +0x2a2
github.com/percona/pmm-client/vendor/github.com/spf13/cobra.(*Command).ExecuteC(0xbdeb20, 0xc4201abdd0, 0x49b302, 0x0)
    /tmp/go/src/github.com/percona/pmm-client/vendor/github.com/spf13/cobra/command.go:729 +0x2d4
github.com/percona/pmm-client/vendor/github.com/spf13/cobra.(*Command).Execute(0xbdeb20, 0xc0263c, 0x92bf0f)
    /tmp/go/src/github.com/percona/pmm-client/vendor/github.com/spf13/cobra/command.go:688 +0x2b
main.main()
    /tmp/go/src/github.com/percona/pmm-client/pmm-admin.go:1398 +0x18dc

疑似为bug,官方表名会在以后版本修复:https://jira.percona.com/browse/PMM-2894

2. _PMM System Summary面板无法显示MySQL信息汇总

报错如下:

Server summary:mysql summary - Exit Status 1

解决办法:将MySQL相关命令软连接到/usr/bin/

ln -s /usr/local/mysql/bin/* /usr/bin/

参考地址:https://www.percona.com/forums/questions-discussions/percona-monitoring-and-management/47268-server-summary-mysql-summary-exit-status-1


名称栏目:PMM监控MySQL
网页链接:http://scyanting.com/article/pdpgjg.html