PerconaDB Monitoring
DĖMESIO! Šis aprašymas tinka tiktai Percona MySQL 5.7 Cluster tipo atšakoms ir jokioms kitoms. Nes jos yra konfigūruojamos kitaip, žiūr. straipsnį.
Monitoring setup[keisti]
Ant hosto kuriame norėsti matyti visas klasterio statistikas, reikia įdiegti docker įmage su serverio paketu, taip pat kiekviename klasterio naryje reiks įdiegti po pmm-client ir nurodyti kur eksportuoti duomenis apie MySQL informaciją. Pirmiausia tame hoste kur veiks pagrindinis monitorinimo resursas reikia įdiegti ir paruošti docker.
docker pull percona/pmm-server:latest docker create \ -v /opt/prometheus/data \ -v /opt/consul-data \ -v /var/lib/mysql \ -v /var/lib/grafana \ --name pmm-data \ percona/pmm-server:latest /bin/true
Jeigu norite leisti nestandartiniu portu, tarkime 8080, tuomet pakeiskite parametrą -p 8080:80
docker run -d \ -p 80:80 \ --volumes-from pmm-data \ --name pmm-server \ --restart always \ percona/pmm-server:latest
Clientų diegimas kiekviename klasterio naryje[keisti]
Prieš viską darydami įsitikinkite, kad iš klasterio narių turite galimybę pasiekti pagrindinį monitoringo servisą, kurį įdiegėte prieš tai, t.y galite pasiekti jo ir ir kitus resursus. Paketas jau yra PerconaDB toolkito repozitorijoje, kurią įdėjote prieš tai įdiegdami PerconaXtraDB Cluster. Pirmiausia patikrinime ar serveris yra pasiekiamas:
curl http://10.0.0.1:8080/ping
Diegiame klientą:
apt-get install pmm-client
Nustatome kur yra serveris:
pmm-admin config --server 10.0.0.1:8080 --bind-address 10.0.0.120 --client-address 10.0.0.120
- 10.0.0.120 - yra lokalus šio nario adresas
- 10.0.0.1 - yra pmm serverio adresas
pmm-admin add mysql
Norint, kad mysql monitoringas veiktų tinkamai, reiktų taip pat papildomai paruošti ir patį MySQL, jeigu pas jus yra replikos ir jos akyviai veikia, užteks sukurti vieną vartotoją - viename mysql naryje, kad veiktų visuose.
GRANT SELECT, PROCESS, SUPER, REPLICATION CLIENT, RELOAD ON *.* TO 'pmm'@' localhost' IDENTIFIED BY 'pass' WITH MAX_USER_CONNECTIONS 10; GRANT SELECT, UPDATE, DELETE, DROP ON performance_schema.* TO 'pmm'@'localhost';
Tuomet pridedame mysql monitoringą su papildomais vartotojo prisijungimo parametrais, jeigu jau buvote pridėję, tuomet jį reikia prieš tai pašalinti (pmm-admin remove mysql):
pmm-admin add mysql --user pmm --password pass
Kiekviename MySQL 5.7 (PerconaDB Branchas) naryje, redaguojame konfigūraciją ir pridedame šias eilute [mysqld] sekcijoje:
[mysqld] log_output=file slow_query_log=ON long_query_time=0 log_slow_rate_limit=100 log_slow_rate_type=query log_slow_verbosity=full log_slow_admin_statements=ON log_slow_slave_statements=ON slow_query_log_always_write_time=1 slow_query_log_use_global_control=all innodb_monitor_enable=all userstat=1
Taip pat galima pridėti ir šiuos:
pmm-admin add mongodb pmm-admin add proxysql:metrics [NAME] [OPTIONS]
Ši komanda parodys, dabar naudojamas metrikas:
pmm-admin list