The PMM platform is based on a simple client-server model that enables efficient scalability. It includes the following modules:
The modules are packaged for easy installation and usage. It is assumed that the user should not need to understand what are the exact tools that make up each module and how they interact. However, if you want to leverage the full potential of PMM, internal structure is important.
PMM is a collection of tools designed to seamlessly work together. Some are developed by Percona and some are third-party open-source tools.
The overall client-server model is not likely to change, but the set of tools that make up each component may evolve with the product.
The following diagram illustrates how PMM is currently structured:
PMM Client packages are available for most popular Linux distributions:
There are also generic tarball binaries that can be used on any Linux system.
For more information, see Installing PMM Client.
PMM Client packages consist of the following:
pmm-adminis a command-line tool for managing PMM Client, for example, adding and removing database instances that you want to monitor. For more information, see Managing PMM Client.
percona-qan-agentis a service that manages the Query Analytics (QAN) agent as it collects query performance data. It also connects with QAN API in PMM Server and sends over collected data.
node_exporteris a Prometheus exporter that collects general system metrics. For more information, see https://github.com/prometheus/node_exporter.
mysqld_exporteris a Prometheus exporter that collects MySQL server metrics. For more information, see https://github.com/percona/mysqld_exporter.
mongodb_exporteris a Prometheus exporter that collects MongoDB server metrics. For more information, see https://github.com/percona/mongodb_exporter.
proxysql_exporteris a Prometheus exporter that collects ProxySQL performance metrics. For more information, see https://github.com/percona/proxysql_exporter.
PMM Server runs on the machine that will be your central monitoring host. It is distributed as an appliance via the following:
For more information, see Running PMM Server.
PMM Server consists of the following tools:
Query Analytics (QAN) enables you to analyze MySQL query performance over periods of time. In addition to the client-side QAN agent, it includes the following:
percona-qan-agentrunning on a PMM Client.
Metrics Monitor (MM) provides a historical view of metrics that are critical to a MySQL or MongoDB server instance. It includes the following:
All tools can be accessed from the PMM Server web interface (landing page). For more information, see Using the Percona Monitoring and Management Platform.
PMM is designed to be scalable for various environments. Depending on the size and complexity of your infrastructure, you can deploy it in several ways.
If you have just one MySQL or MongoDB server, you can install and run both modules (PMM Client and PMM Server) on this one database host.
It is more typical to have several MySQL and MongoDB server instances distributed over different hosts. In this case, you can run PMM Server on a dedicated monitoring host, and install PMM Client on every database host that you want to monitor. Data from hosts will be aggregated on the PMM Server.
For general inquiries, please send us your question and someone will contact you.