Guides - Deploying Percona Monitoring and Management (PMM) through the Linode Marketplace

Quickly deploy a Compute Instance with many various software applications pre-installed and ready to use.

Create a Linode account to try this guide with a $100 credit.
This credit will be applied to any valid services used during your first 60 days.

Percona Monitoring and Management (PMM) is an open-source tool which provides a GUI powered by Grafana for monitoring and managing MySQL, MariaDB, PostgreSQL, and MongoDB databases. You can use PMM to easily observe important metrics, logging, and statistics related to your databases and the hosts they run on. Additionally, it includes a number of tools which can help to optimize your database’s performance, manage all database instances, and track and identify potential security threats. Linode’s Percona (PMM) Marketplace App deploys a Linode with PMM installed and ready for you to begin monitoring your databases.

PMM Architecture Overview

The PMM tool uses a client-server model which makes it easy to scale monitoring across several databases hosted on various remote hosts. See the table below to better understand how each PMM component fits into the context of Linode’s Percona (PMM) Marketplace App.

ComponentDescription
PMM ServerThe Percona (PMM) Marketplace App deploys an instance of the PMM Server, which includes the Grafana web interface to visualize all the data collected from the databases it monitors.
PMM ClientYou will need to install the PMM Client on any Linode that hosts a database that you would like to monitor. The PMM Client will help you connect to the PMM Server and relay host and database performance metrics to the PMM Server.
Note
For a more detailed information on PMM’s architecture see Percona’s official documentation.

Deploying a Marketplace App

The Linode Marketplace allows you to easily deploy software on a Compute Instance using the Cloud Manager. See Get Started with Marketplace Apps for complete steps.

  1. Log in to the Cloud Manager and select the Marketplace link from the left navigation menu. This displays the Linode Create page with the Marketplace tab pre-selected.

  2. Under the Select App section, select the app you would like to deploy.

  3. Complete the form by following the steps and advice within the Creating a Compute Instance guide. Depending on the Marketplace App you selected, there may be additional configuration options available. See the Configuration Options section below for compatible distributions, recommended plans, and any additional configuration options available for this Marketplace App.

  4. Click the Create Linode button. Once the Compute Instance has been provisioned and has fully powered on, wait for the software installation to complete. If the instance is powered off or restarted before this time, the software installation will likely fail.

To verify that the app has been fully installed, see Get Started with Marketplace Apps > Verify Installation. Once installed, follow the instructions within the Getting Started After Deployment section to access the application and start using it.

Note
Estimated deployment time: PMM should be fully installed within 2-5 minutes after the Compute Instance has finished provisioning.

Configuration Options

  • Supported distributions: Debian 10
  • Recommended minimum plan: All plan types and sizes can be used. Percona recommends roughly 1 GB of storage on your PMM Server for each database node you would like to monitor. For more information on Percona’s system requirements see their official documentation.

Percona (PMM) Options

  • Admin Password (required): The password you will use to log in to the monitoring dashboard.

Getting Started after Deployment

Access your PMM Server’s Grafana Dashboard

After the PMM Server has finished installing, you will be able to access its Grafana dashboard over http:// and your Linode’s IPv4 address. To find your Linode’s IPv4 address:

  1. Click on the Linodes link in the sidebar. You will see a list of all your Linodes.

  2. Find the Linode you just created when deploying your app and select it.

  3. Navigate to the Networking tab.

  4. Your IPv4 address will be listed under the Address column in the IPv4 table.

  5. Copy and paste the IPv4 address into a browser window. Ensure you are using http://.

  6. You will see the Grafana login screen:

  7. Enter the following default values for username and password, then click the Log In button:

    EntryDefault Value
    Usernameadmin
    PasswordThe admin password you selected when you create the app.
  8. You will then see the PMM Home Dashboard actively monitoring your server:

Installing the PMM Client

To begin monitoring a database node, you will need to install the PMM Client on the Linode that hosts your database and connect the node to the PMM Server. For instructions on setting up a database on Linode that you can connect to your PMM Server, see our guides on:

Note
The PMM Server deployed with Linode’s Percona (PMM) Marketplace App is compatible with PMM Client version 2.
  1. Connect to your database Linode via SSH.

  2. Update your system’s software.

    Debian or Ubuntu:

    sudo apt-get update && apt-get upgrade
    

    CentOS:

    sudo yum update
    
  3. Configure Percona repositories using the percona-release tool. First you’ll need to download and install the official percona-release package from Percona::

    Debian or Ubuntu:

    wget https://repo.percona.com/apt/percona-release_latest.generic_all.deb
    sudo dpkg -i percona-release_latest.generic_all.deb
    

    CentOS:

    sudo yum install https://repo.percona.com/yum/percona-release-latest.noarch.rpm
    
    Note

    If you have previously enabled the experimental or testing Percona repository, don’t forget to disable them and enable the release component of the original repository as follows:

    sudo percona-release disable all
    sudo percona-release enable original release
    
  4. Install the PMM Client (version 2):

    Debian or Ubuntu:

    sudo apt-get update
    sudo apt-get install pmm2-client
    

    CentOS:

    sudo yum install pmm2-client
    
  5. Connect your database node to the PMM Server. Replace admin_password with your PMM Server’s Grafana password, and 192.0.2.0 with your PMM Server’s IPv4 address.

    Note
    Follow the steps in Find Your Linode’s IP Address to retrieve your PMM Server’s IPv4 address.
    pmm-admin \
    config \
    --server-insecure-tls \
    --server-url=https://admin:admin_password@192.0.2.0:443
    

    Once complete, you should see a similar output:

    Checking local pmm-agent status...
    pmm-agent is running.
    Registering pmm-agent on PMM Server...
    Registered.
    Configuration file /usr/local/percona/pmm2/config/pmm-agent.yaml updated.
    Reloading pmm-agent configuration...
    Configuration reloaded.
    Checking local pmm-agent status...
    pmm-agent is running.

Monitor a Database Instance

Once your database node and your PMM Server are communicating, the final step is to add your database instance to be monitored by your PMM Server. These steps are completed on your database node.

  1. Connect to your Linode via SSH.

  2. Add your database instance to be monitored by your PMM Server. This command will add a MySQL database instance to be monitored. Replace db_user with your database’s user name, and db_user_password with that user’s password. You can also replace mysql with the database type that your node is hosting (i.e. postgresql or mongodb). See Percona’s Using PMM Client documentation for details.

     pmm-admin \
     add mysql \
     --username=db_user \
     --password=db_user_password
    

    Your Percona dashboard should now be monitoring your MySQL service.

    Note
    You can also add a database remote instance node using the Grafana interface. In order to do this, your node must be configured with a public DNS name. This method of adding a remote database instance will not provide host-level metrics.

Software Included

The Percona (PMM) Marketplace App installs the following required software on your Linode:

SoftwareDescription
DockerDocker is used to containerize PMM.
PMM ServerPMM Server is the central part of PMM that aggregates collected data and presents it in the form of tables, dashboards, and graphs in a web interface.
GrafanaGrafana is the visualization tool used by PMM to provides charts, graphs, and alerts for the databases that are being monitored.
Note
Currently, Linode does not manage software and systems updates for Marketplace Apps. It is up to the user to perform routine maintenance on software deployed in this fashion.

Next Steps

The Percona Monitoring Management Tool is very powerful and can be configured to monitor and display various pieces of your database instances. Once you have completed the basic configurations outlined in this guide, you should review Percona’s documentation to learn more about the PMM tool. Here are some suggested topics:

This page was originally published on


Your Feedback Is Important

Let us know if this guide made it easy to get the answer you needed.