Prerequisites for PMM Server¶
Before installing PMM Server, ensure your environment meets these requirements.
Quick requirements checklist¶
✓ Hardware: CPU with SSE4.2 support, 4+ cores, 8+ GB RAM, 100+ GB storage
✓ OS: Modern 64-bit Linux or container platform (Docker/Podman/Kubernetes)
✓ Network: Port 443 (or 8443 for non-privileged environments) accessible to PMM Clients and users
✓ Container runtime: Docker 17.03+ or Podman (for containerized deployments)
✓ Storage: Persistent storage solution for data retention
System requirements¶
PMM Server requirements scale with the number of monitored nodes:
Hardware specifications by deployment size¶
- CPU: 4 cores with SSE4.2 support
- Memory: 8 GB RAM
- Storage: 100 GB
- Use cases: Development, small businesses, initial deployments
- CPU: 8-16 cores with SSE4.2 support
- Memory: 16-32 GB RAM
- Storage: 200+ GB
- Use cases: Production environments, mid-sized companies
- CPU: 16+ cores with SSE4.2 support
- Memory: 32+ GB RAM
- Storage: 500+ GB
- Use cases: Large enterprises, mission-critical database fleets
For detailed sizing calculations, see Hardware and system requirements.
Architecture requirements¶
- CPU: Must support SSE4.2 instruction set (required for Query Analytics)
- x86_64: Native support for optimal performance
- ARM64: Native support starting with PMM 3.10.0. The PMM Server container image includes an ARM64 build, and Docker automatically pulls the one that matches your host.
Storage planning¶
PMM Server stores metrics data, requiring persistent storage:
- Storage type: Use persistent volumes (Docker volumes, cloud storage or host directories)
- Capacity planning:
nodes × retention_period_in_weeks × 1 GB - Quick estimate:
number_of_nodes × 4 GBfor default 30-day retention - Performance: SSD recommended for better I/O performance
Network connectivity¶
PMM Server requires these network connections:
| Connection | Port | Purpose | Required |
|---|---|---|---|
| Users > PMM Server | 443 or 8443 | Web interface access. Use port 8443 if your environment restricts privileged ports (<1024). | Essential |
| PMM Clients > PMM Server | 443 or 8443 | Metrics reporting | Essential |
| PMM Server > Internet | 443 | Updates, telemetry | Optional |
For complete port specifications, see Network and firewall requirements.
Deployment-specific prerequisites¶
Choose your deployment method and ensure it meets these specific requirements:
Version requirements:
- Docker version 17.03 or higher
- CPU with
x86-64-v2support
System resources:
- Recommended: 2+ CPU cores, 4+ GB RAM, 100+ GB disk space
Optional but recommended:
- Docker Compose for multi-container setups
Version requirements:
- Recent Podman version with systemd support
- Rootless Podman configuration
System configuration:
- Allow non-root users to bind to privileged ports (port 443)
- systemd user services enabled
Required setup commands:
# Configure privileged port access
echo "net.ipv4.ip_unprivileged_port_start=443" | sudo tee /etc/sysctl.d/99-pmm.conf
sudo sysctl -p /etc/sysctl.d/99-pmm.conf
Security advantages:
- Enhanced security isolation with rootless containers
- Better systemd integration for service management
- Fine-grained permission control
Cluster requirements:
- Kubernetes 1.19+ with supported version
- kubectl configured to communicate with your cluster
Helm requirements:
- Helm v3 installed and configured
- Access to Percona Helm charts repository
Storage requirements:
- Storage driver with snapshot support (for backups)
- Dynamic provisioning capability
- Persistent Volume support
Production considerations:
- Separate PMM Server from monitored systems
- High availability configuration for continuous monitoring
- Workload separation through node configurations and affinity rules
Security considerations¶
SSL/TLS certificates¶
- Self-signed: PMM Server generates these automatically
- Custom certificates: Prepare SSL certificates for production deployments
- Certificate authority: Consider using trusted CA certificates for public access
Access control¶
- Admin credentials: Plan initial admin username/password strategy
- Default passwords: Change immediately
- User management: Consider integration with existing authentication systems
- Network security: Plan firewall rules and network segmentation
Data protection¶
- Backup strategy: Plan for PMM Server data backup and recovery
- Encryption: Consider encryption for data at rest and in transit
- Compliance: Ensure deployment meets organizational security requirements
Before you install¶
Complete these preparation steps:
- Choose deployment method based on your environment and requirements
- Prepare infrastructure (servers, storage, networking)
- Plan capacity using sizing guidelines above
- Configure security (certificates, firewall rules, access controls)
- Prepare persistent storage for data retention
- Install required tools (Docker/Podman/Helm/kubectl as needed)
- Document configuration for maintenance and disaster recovery
Next steps¶
After confirming your environment meets these prerequisites:
- Choose your deployment method based on your infrastructure
-
Install PMM Server using your selected method:
- Docker installation
- Podman installation
- Kubernetes/Helm installation
- Configure security settings for production use
- Install PMM Clients on systems you want to monitor