Percona 监控¶
在这篇文章中
Note
Percona Monitoring and Management 2 (PMM2) 是一个高级开源平台,用于监控和管理数据库性能。它为观察各种数据库(包括 MySQL、MongoDB、PostgreSQL 等)的运行情况提供了全面的解决方案。该平台针对高效的资源利用率进行了优化,并支持容器化,简化了部署和更新。PMM2 帮助数据库管理员和开发人员识别性能问题、优化查询,并确保企业级数据库管理系统的稳定运行。
Percona 监控:主要功能¶
- Comprehensive Monitoring:实时收集和分析各种数据库(包括 MySQL、MongoDB、PostgreSQL)的性能指标。
- Data Visualization:可自定义的仪表板,清晰直观地展示关键性能指标。
- Query Analysis:对 SQL 查询进行详细分析和优化,包括执行计划审查。
- Historical Analytics:跟踪长期性能趋势,以识别异常并规划资源。
- Alerting System:可自定义的通知,用于报告关键情况和偏离正常值的情况。
- Security Management:内置基于角色的访问控制 (RBAC) 系统,并支持 SSL/TLS。
- Scalability:与大型分布式数据库系统高效协作。
- Integration and Extensibility:提供 API 以与其他工具集成,并支持创建自定义指标。
部署规格¶
| ID | 软件名称 | 兼容操作系统 | 虚拟机 | 物理机 | vGPU | GPU | 最低CPU(核) | 最低内存(GB) | 最低硬盘(GB) | 自定义域名 | 是否启用 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 147 | Percona Monitoring and Management | Ubuntu 22.04 | + | + | + | + | 1 | 1 | - | 否 | 订购 |
Note
除非另有说明,默认情况下,我们会从开发者网站或操作系统存储库安装软件的最新发布版本。
部署 Percona 监控后的入门指南¶
购买订单后,您将收到一封通知电子邮件,告知服务器已准备就绪。邮件中将包含 VPS IP 地址、登录名和密码。我们的客户通过 服务器控制面板和 API — Invapi 来管理他们的设备。
您可以在服务器控制面板的 Configuration >> Tags 选项卡或发送的电子邮件中找到授权数据:
- 访问 Percona 监控 Web 界面的链接: 位于 webpanel 标签中;
- 登录名:
admin; - 密码:
admin。
在 Percona 监控面板成功授权后,出于系统安全考虑,强烈建议更改管理员密码。更改密码菜单将自动出现:

更改密码后,您将被重定向到 Percona 监控 Web 界面的主页:

顶部面板允许您配置时间间隔、环境和其他显示参数。Overview 部分显示关键指标:
- 监控数据库的类型和数量;
- 数据库实例和节点的数量;
- CPU、RAM 和虚拟内存使用情况;
- 节点和数据库正常运行时间;
- 磁盘空间使用情况和读写活动;
- 数据库连接数和每秒查询数;
- 更新状态和问题。
底部的图表显示 CPU 异常和 CPU 负载较高的服务器。左侧边栏允许您在不同的监控部分之间切换。
Note
有关 Percona 监控基本设置的详细信息,请参阅 开发者文档。
使用 Certbot 为容器化应用程序配置 SSL 证书¶
Note
为 PMM 服务器颁发 SSL 证书的过程基于使用托管 PMM 的 Docker 容器以及用于从 Let’s Encrypt 自动获取证书的 Certbot 工具。有关从 Let's Encrypt 即时颁发和更新 SSL 证书过程的更多详细信息,请参阅文章 Free Domain Certbot
如果您需要重建包含应用程序的容器,确保 SSL 证书的保留及其与容器环境的正确集成至关重要。下面概述的过程详细介绍了 Certbot 的手动安装和配置,以及 SSL 证书的颁发和使用,即使容器配置发生变化,也能确保与应用程序的安全连接。
步骤 1:安装 Certbot
首先,您需要在容器内安装 Certbot。为此,请在服务器上运行以下命令:
步骤 2:颁发证书
安装 Certbot 后,您可以继续颁发证书。运行以下命令,指定您的域名和用于接收通知的电子邮件:
将 <your_email> 替换为您的有效电子邮件地址以接收有关证书状态的通知,并将 <your_domain> 替换为您的域名(例如,example.com)。
Note
如果您不想指定电子邮件,可以添加 --register-unsafely-without-email 标志,但不建议这样做,因为您将无法接收有关证书续期截止日期的通知。
步骤 3:移动证书
要将证书与容器中的 Nginx 集成,您需要将证书文件移动到正确的目录。运行以下命令:
docker exec -i pmm-server cp /etc/letsencrypt/live/<your_domain>/cert.pem /srv/nginx/certificate.crt
docker exec -i pmm-server cp /etc/letsencrypt/live/<your_domain>/privkey.pem /srv/nginx/certificate.key
docker exec -i pmm-server cp /etc/letsencrypt/live/<your_domain>/fullchain.pem /srv/nginx/ca-certs.pem
docker exec -i pmm-server cp /etc/letsencrypt/ssl-dhparams.pem /srv/nginx/dhparam.pem
步骤 4:重启 Nginx
要应用新证书,您需要重启容器内的 Nginx 服务。为此,请运行: