docker安装管理和监控MySQL和MongoDB性能的开源平台Percona

Posted 简一_hz

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了docker安装管理和监控MySQL和MongoDB性能的开源平台Percona相关的知识,希望对你有一定的参考价值。

 

先秀一张安装好的Percona监控页面,是不是很华丽 

Percona监控和管理(PMM)是一个用于管理和监控mysql和MongoDB性能的开源平台。 它由Percona与托管数据库服务,支持和咨询领域的专家合作开发。 PMM是一个免费的开源解决方案,您可以在自己的环境中运行,以实现最大的安全性和可靠性。 它为MySQL和MongoDB服务器提供全面的基于时间的分析,以确保您的数据尽可能高效地工作。 
包含以下模块: 
1)PMM Client安装在您要监视的每个数据库主机上。它收集服务器指标,一般系统指标和查询分析数据,以获得完整的性能概述。收集的数据发送到PMM服务器。 
2)PMM Server是PMM的核心部分,它聚合收集的数据,并以Web界面的表格,仪表板和图形的形式呈现。

废话不多说,正式进入安装过程 
首先是服务器端的安装: 
一.查找pmm server镜像

docker search pmm-server
NAME                            DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
node                            Node.js is a javascript-based platform for...   5142      [OK]       
redis                           Redis is an open source key-value store th...   4820      [OK]       
httpd                           The Apache HTTP Server Project                  1533      [OK]       
owncloud                        ownCloud is a self-hosted file sync and sh...   857       [OK]       
rancher/server                  Rancher Server Container                        463                  
itzg/minecraft-server           Minecraft server with select-able version       444                  [OK]
mysql/mysql-server              Optimized MySQL Server Docker images. Crea...   395                  [OK]
percona                         Percona Server is a fork of the MySQL rela...   318       [OK]       
zookeeper                       Apache ZooKeeper is an open-source server ...   314       [OK]       
couchbase                       Couchbase Server is a NoSQL document datab...   279       [OK]       
jetty                           Jetty provides a Web server and javax.serv...   226       [OK]       
websphere-liberty               Official IBM WebSphere Application Server ...   177       [OK]       
hwdsl2/ipsec-vpn-server         VPN server with IPsec/L2TP and Cisco IPsec      148                  [OK]
php-zendserver                  Zend Server - the integrated PHP applicati...   131       [OK]       
atlassian/confluence-server     Official Confluence Server image – create,...   128                  [OK]
percona/pmm-server              Percona Monitoring and Management - PMM Se...   47                   
aheil/teamspeak3-server         Self updating TeamSpeak3-Server                 42                   [OK]
notary                          Notary server and signer cooperatively han...   13        [OK]       
perconalab/pmm-server           PMM Server dev repo                             5                    
pvpin/pmmp                      Run latest PMMP server in Docker.               1                    [OK]
jorgeandrada/mariadb-pmm        Mariadb with percona-toolkit and pmm clien...   0                    [OK]
zytek/pmm-server-ecs            pmm-server ready to be deployed to ECS wit...   0                    
rzarouali/ocm-pmm-server        extended Percona pmm that includes dashboa...   0                    [OK]
fluxcapacitor/prediction-pmml                                                   0                    
arvenil/dev-pmm-server                                                          0                    

 这里使用名为percona/pmm-server的镜像 
二.拉取镜像,等待下载完成

docker pull percona/pmm-server

三.执行以下命令创建PMM数据容器 
注意不要删除创建的数据容器,除非你想把采集到的数据全部清空 
请事先创建好以下文件夹 
/opt/prometheus/data 
/opt/consul-data 
/var/lib/mysql 
/var/lib/grafana

docker create \\
   -v /opt/prometheus/data \\
   -v /opt/consul-data \\
   -v /var/lib/mysql \\
   -v /var/lib/grafana \\
   --name pmm-data \\
   percona/pmm-server /bin/true

 

四.创建PMM服务器容器 
同时设置登录用户名(SERVER_USER)和密码(SERVER_PASSWORD), 根据需要进行修改. 默认使用80端口, 如果需要可以更改.

docker run -d -p 80:80 \\
  --volumes-from pmm-data \\
  --name pmm-server \\
  -e SERVER_USER=test \\
  -e SERVER_PASSWORD=test \\
  --restart always \\
  percona/pmm-server
  • 截止到这里监控的服务器端就ok了,别忘记开放防火墙的80端口访问哦。 

客户端的安装,即你的mysql数据库所在的服务器: 

# 下载仓库文件
wget https://repo.percona.com/apt/percona-release_latest.generic_all.deb
# 安装
sudo dpkg -i percona-release_latest.generic_all.deb
# 更新
sudo apt-get update

 我是Ubuntu系统的,其他系统可参照官网进行设置: 

https://www.percona.com/doc/percona-repo-config/percona-release.html

# 安装客户端
sudo apt-get install pmm-client
  • 在每个需要性能统计的服务器上安装pmm-client, 并且使用下面的命令连接到服务器并向服务器上报数据:
pmm-admin config --server xxx.xxx.xx.x --server-user test --server-password test
  • 获取MySQL的性能数据, 需要让 pmm-admin 过一次MySQL的登陆验证, 这里我直接使用了MySQL的Unix Socket:
pmm-admin add mysql --user root --password root --socket /var/run/mysqld/mysqld.sock

参考文章:https://segmentfault.com/a/1190000012030650 
http://blog.csdn.net/wh211212/article/details/72190471 

以上是关于docker安装管理和监控MySQL和MongoDB性能的开源平台Percona的主要内容,如果未能解决你的问题,请参考以下文章

docker管理监控方案

Docker系列:容器监控工具Weave Scope安装

基于docker部署prometheus监控平台

从零搭建java后台管理系统mysql和redis安装

zabbix监控mongod

云原生之Docker实战Docker管理的ctop资源监控工具