I've played with https://github.com/prometheus/mysqld_exporter in labs to monitor some labsdb boxes, e.g. https://prometheus.wmflabs.org/grafana/dashboard/db/mysql-labsdb-cluster reads from https://prometheus.wmflabs.org prometheus server which asks several mysqld_exporter endpoints, one per labsdb box.
tracking here what's missing:
- package mysqld_exporter into prometheus-mysqld-exporter package
- add puppetization for mysqld_exporter
- pick a sample of db hosts to monitor
- read only mysql user access to sample db hosts
- enable all relevant flags from https://github.com/prometheus/mysqld_exporter#collector-flags to configuration (Note: some flags will have to be handled separately due to privacy concerns)
- add monitored db hosts to prometheus config