9.Prometheus: еще больше метрик от MySQL-сервера

Thank you for reading this post, don't forget to subscribe!

Счи­та­ем, что у нас уста­нов­ле­на и настро­е­на систе­ма мони­то­рин­га Prometheus, ее ком­по­нен­ты node_exporter и mysqld_exporter, а так­же Grafana для отоб­ра­же­ния мет­рик и созда­ния дашбордов.

Percona пред­ла­га­ет исполь­зо­вать целый набор пред­уста­нов­лен­ных даш­бор­дов, кото­рый нахо­дит­ся в откры­том досту­пе здесь. Сра­зу сто­ит отме­тить, что часть этих даш­бор­дов будут рабо­тать толь­ко если вы исполь­зу­е­те Percona Server вер­сии > 5.5.10.

Далее необ­хо­ди­мо убе­дить­ся, что в MySQL у вас вклю­че­ны (=ON) переменные:

  • userstat
  • query_response_time_stats

и mysqld_exporter запу­щен с допол­ни­тель­ны­ми ключами:

  • -collect.info_schema.query_response_time=true
  • -collect.info_schema.tables=true
  • -collect.info_schema.tablestats=true
  • -collect.auto_increment.columns=true
  • -collect.binlog_size=true
  • -collect.info_schema.processlist=true
  • -collect.info_schema.userstats=true

С помо­щью сле­ду­ю­щих запро­сов выстав­ля­ем необ­хо­ди­мые пра­ва поль­зо­ва­те­лю, кото­рый опре­де­лен в пере­мен­ной DATA_SOURCE_NAME ком­по­нен­та mysqld_exporter:

Пред­уста­нов­лен­ные даш­бор­ды в сво­их настрой­ках исполь­зу­ют мет­ку alias для рабо­ты с несколь­ки­ми хоста­ми. Убе­ди­тесь, что в кон­фи­гу­ра­ци­он­ном фай­ле /etc/prometheus/prometheus.yml вы тоже ее исполь­зу­е­те, например:

[codesyntax lang="php"]

[/codesyntax]

В кон­це кон­фи­гу­ра­ци­он­но­го фай­ла /etc/grafana/grafana.ini необ­хо­ди­мо рас­ком­мен­ти­ро­вать сле­ду­ю­щие строки:

Уста­нав­ли­ва­ем дашборды:

Пере­за­пус­ка­ем Grafana:

В репо­зи­то­рии Percon’ы суще­ству­ют так­же гото­вые docker-обра­зы с настро­ен­ной связ­кой Prometheus и Grafana.