Monitor MySQL
From the Introduction section, you know it is not feasible to instrument MySQL with Prometheus metrics directly. To expose MySQL metrics in Prometheus format, you need to deploy MySQL exporter instead.
This tutorial walks you through an example of how to monitor MySQL metrics and visualize them.
Prerequisites
- Please make sure you enable the OpenPitrix system. MySQL and MySQL exporter will be deployed from the App Store.
- You need to create a workspace, a project, and a user account for this tutorial. For more information, see Create Workspace, Project, Account and Role. The account needs to be a platform regular user and to be invited as the project operator with the
operator
role. In this tutorial, you log in asproject-operator
and work in the projectdemo
in the workspacedemo-workspace
.
Hands-on Lab
Step 1: Deploy MySQL
To begin with, you deploy MySQL from the App Store and set the root password to testing
. Please make sure you are landing on the Overview page of the project demo
.
- Go to App Store.
- Find MySQL and click Deploy.
- Make sure MySQL is deployed in
demo
and click Next.
- Uncomment the
mysqlRootPassword
field and click Deploy.
- Wait until MySQL is up and running.
Step 2: Deploy MySQL exporter
You need to deploy MySQL exporter in demo
on the same cluster. MySQL exporter is responsible for querying MySQL status and reports the data in Prometheus format.
- Go to App Store and find MySQL exporter.
- Deploy MySQL exporter in
demo
again.
- Make sure
serviceMonitor.enabled
is set totrue
. The built-in MySQL exporter sets it totrue
by default, so you don’t have to manually modifyserviceMonitor.enabled
.
Warning
Don’t forget to enable the SericeMonitor CRD if you are using external exporter helm charts. Those charts usually disable ServiceMonitor by default and require manual modification.
- Modify MySQL connection parameters. MySQL exporter needs to connect to the target MySQL. In this tutorial, MySQL is installed with the service name
mysql-a8xgvx
. Setmysql.host
tomysql-a8xgvx
,mysql.pass
totesting
, anduser
toroot
as below. Note that your MySQL service may be created with a different name.
- Click Deploy and wait until MySQL exporter is up and running.
Step 3: Create Dashboard
After about two minutes, you can create a monitoring dashboard for MySQL and visualize metrics in real time.
- Navigate to Custom Monitoring under Monitoring & Alerting and click Create.
- In the dialogue that appears, name the dashboard as
mysql-overview
and choose MySQL template. Click Create to continue.
- Save the template by clicking Save Template in the top right corner. A newly-created dashboard displays in the dashboard list as below.
Tip
For more information about dashboard strings, see Visualization.