MySQL-MongoDB开源监控利器之PMM
简介
PMM是一款管理和监控MySQL,MongoDB性能的开源平台。其由percona公司开发,支持和咨询。
PMM是免费和开源的解决方案,可以运行在自己的环境中提供最大的安全性和可靠性。它提供了全面的基于时间的分析mysql和mongodb服务器来确保您的数据尽可能高效地工作。
PMM架构如下:
具体介绍可查看:https://www.percona.com/doc/percona-monitoring-and-management/architecture.html#id13
安装部署:
1、安装PMM Server:
参考地址:percona官方部署文档
PMM Server现在官方只提供了Docker镜像,不过官方回应,现在正计划做VM镜像及AWS EC2镜像,所以机器需要部署docker服务,简单的docker服务安装直接用Yum就可以了。
docker安装:
yum install docker
service docker start
创建数据容器:
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.2.0 /bin/true
如果此步报错,则需要*下载,因国内GFW问题,通过docker pull percona/pmm-server 先把docker pmm-server的镜像拉取下来,再创建容器
创建pmm-server容器:
docker run -d \
-p 80:80 \
--volumes-from pmm-data \
--name pmm-server \
--restart always \
percona/pmm-server:1.2.0
此时输入机器IP,就可以看到如下页面了。http://ip:port,需要注意如果你的端口不是80,比如上面的是-p 8080:80
,那么需要输入http://ip:8080。
上面是可以输入的网址,192.168.100.1是我本地的IP
升级PMM服务器:
docker stop pmm-server # 先停
docker rm pmm-server # 再删,如果如要保留收集数据,不要执行此操作
docker run -d \
-p 80:80 \
--volumes-from pmm-data \
--name pmm-server \
--restart always \
--init \
percona/pmm-server:1.2.0
2、安装pmm client
参考地址:percona官方部署文档
sudo yum install pmm-client
3、配置连接到pmm-server
参考地址:percona官方部署文档
sudo pmm-admin config --server server端IP地址 --bind-address=client地址 --client-address=client地址
增加数据项
sudo pmm-admin add mysql --user=*** --password=*** --port=3306
sudo pmm-admin add mongodb --uri mongodb://username:aaa@qq.com:port/?authMechanism=SCRAM-SHA-1
列出当前监控项
pmm-admin list
添加一台机器中的其它实例:
pmm-admin add mysql:metrics mysqldocker –user root –password root –host 10.237.81.193 –create-user
监控报警的设置:http://andylhz2009.blog.51cto.com/728703/1905267
待解决:PMM可以监控主从复制的情况,不过需要创建用户,官方参考地址
Orchestrator is a MySQL replication topology management and visualization tool. You can access it using the /orchestrator URL after PMM Server address. Alternatively, you can click the MySQL Replication Topology Manager button on the main PMM Server landing page.
To use it, create a MySQL user for Orchestrator on all managed
instances:GRANT SUPER, PROCESS, REPLICATION SLAVE, RELOAD ON . TO
‘orc_client_user’@’%’ IDENTIFIED BY ‘orc_client_password’;
NoteThe credentials in the previous example are default. If you use a
different user name or password, you have to pass them when running
PMM Server using the following options:-e ORCHESTRATOR_USER=name -e ORCHESTRATOR_PASSWORD=pass
可能我还不太熟,尝试了一下,并没有找到可以输入参数的地方,这里先标记一下,以后再解决,哪位大神找到了,也请给我留一下言。