Last week, I was pleased to present at Percona Live Amsterdam 2015 regarding the importance of Performance Schema and how to begin approaching visualizing the data that is available to diagnose performance issues and fine tune your MySQL environment. You can download the slides from the Percona Live conference page. The session highlighted using the ELK ( Elasticsearch+ Logstash+ Kibana) stack to assist visualizing event data, in addition to graphite+graphana to visualize time-series data. As many people who attend conferences are aware, the availability of internet access is sketchy at best. To combat this, the visualization stack that I created was strictly local utilizing Docker, specifically the Docker Toolbox. The docker-compose.yml file that creates the stack is fairly straightforward. Since the session was about the upcoming changes to the Performance Schema in MySQL 5.7, I chose to use MySQL's official 5.7 Docker image: https://gist.github.com/dtest/23fc9d36a612ff98072f#file-mysql-docker-compose-yml
The rest of the docker-compose.yml file follows similar guidelines, and I won't explain each aspect here. You can find the full docker-compose.yml file and the Dockerfiles for each component of the stack in the dtest/visualize-mysql github repository.
The dashboards for the presentation are not automatically loaded, so you can find some basic dashboards in the dashboards directory of the repository. Unfortunately, I did not export them before discarding the machine so have lost some of the fine-tuning changes I had made. I do intend to recreate them and even try out the newer versions of the ELK stack available. The goal here is to show how easy it is to setup a local environment using Docker and existing images on the Docker Hub to get started with your own projects.
Ready to optimize your MySQL Database for the future?