docker 部署pmm与mysql监控
一、背景
二、步骤
1.下载PMM Server Docker镜像
#版本可自选
docker create -v /opt/prometheus/data -v /opt/consul-data -v /var/lib/mysql -v /var/lib/grafana --name pmm-data percona/pmm-server:1.14.1 /bin/true
2.启动
docker run -d -p 80:80 --volumes-from pmm-data --name pmm-server --restart always percona/pmm-server:1.14.1
3.查看docker运行状态
[root@open-falcon mysql]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
59455e7fa828 percona/pmm-server:1.14.1 "/opt/entrypoint.sh" 18 hours ago Up 7 minutes 443/tcp, 0.0.0.0:81->80/tcp pmm-server
4.浏览器访问,打开浏览器http://ip地址:端口。注意,一般端口默认为80,如被占用可自定义,修改此步中的映射端口即可 docker run -d -p 80:80 --volumes-from pmm-data --name pmm-server --restart always percona/pmm-server:1.14.1。
5.安装pmm-client客户端。
cd /opt
wget https://www.percona.com/downloads/pmm-client/pmm-client-1.14.1/binary/tarball/pmm-client-1.14.1.tar.gz
tar -zxvf pmm-client-1.14.1.tar.gz
cd pmm-client-1.14.1 && ./install
##此时你会发现可以使用pmm-admin指令
6.连接PMM Server。
pmm-admin config --server 10.0.0.31
#注意,如果以上步骤docker run映射的端口不是80,比如为81,此时应该pmm-admin config --server 10.0.0.31:81
7.添加mysql监控。
#添加的用户必须要有select以上的权限
pmm-admin add mysql --user root --password xxxx --host localhost(此处host可自定义)
8.查看列表状态。
pmm-admin list
9.查看网络状态。
pmm-admin check-network
注意,以上指令只是部分,可通过pmm-admin --help查看
10.查看日志。
日志默认在/var/log/下。以pmm开头
[root@open-falcon mysql]# ls /var/log/ | grep pmm
pmm-linux-metrics-42000.log
pmm-mysql-metrics-42002.log
pmm-mysql-queries-0.log
11.配置PMM Query Analytics。
靠谱我已经配置成功了,有问题可以私聊
12.配置告警。
(1)邮件告警。
#找到这片代码块,此处使用qq邮箱
#################################### SMTP / Emailing ##########################
[smtp]
enabled = true
host = smtp.qq.com:465 #qq邮箱服务器
user = xxxxxx@qq.com
# If the password contains # or ; you have to wrap it with trippel quotes. Ex """#password;"""
password = xxxxxxxxxxxxx #此处使用qq授权码,不是qq密码,不会获取请百度
;cert_file =
;key_file =
;skip_verify = false
from_address = xxxxxx@qq.com
from_name = Grafana
# EHLO identity in SMTP dialog (defaults to instance_name)
ehlo_identity = dashboard.example.com
docker restart pmm-server #重启容器后生效
(2)钉钉告警。
三、问题总结
1.配置客户端或者mysql已成功,并且pmm-admin list状态都为ok,但是dashboard中无数据
建议查看以上/var/log下的日志,是否有端口down的状态。如果测试环境,建议清空iptables规则和关闭firewalld 较为省心。(这个问题困扰我很久)
2.配置qq邮箱告警的时候,发送失败
password处应填写授权码而不是qq密码。