Как отслеживать базы данных с удаленного сервера? - PullRequest
0 голосов
/ 03 мая 2018

Я установил Zabbix на сервер (Ubuntu 16.04), чтобы отслеживать производительность другого сервера. Я могу видеть его использование процессора, его использование памяти и т. Д.

Но этот сервер (Ubuntu 16.04) также содержит базу данных, и я хотел бы также отслеживать ее производительность (количество запросов в минуту, время выполнения и т. Д.). Я не нашел, как это сделать с помощью Zabbix.

Может ли кто-нибудь подсказать мне, как это сделать? И если Zabbix не может этого сделать, есть ли другой инструмент, который может контролировать удаленную базу данных?

Большое спасибо.

1 Ответ

0 голосов
/ 04 мая 2018

Zabbix состоит из двух компонентов

  1. Zabbix сервер, на котором хранятся все собранные данные, триггеры обрабатываются и запускаются
  2. Агент Zabbix, который можно установить в большинстве операционных систем, что позволяет подробно собирать данные из системы. Затем агент отправляет собранные данные обратно на Zabbix сервер

Так что в вашем случае было бы лучше, если бы вы могли установить агент zabbix на сервер БД, а затем использовать средства мониторинга mysql, включенные в zabbix. Таким образом, вам не нужно будет разрешать сетевой доступ к вашему серверу mysql.

Самая распространенная проблема в том, что вам понадобится пользователь базы данных с именем zabbix (или то, что вы определяете в файле конфигурации), который имеет права на чтение статистических данных mysql.

Здесь, чтобы создать пользователя mysql и назначить права

root@web01:~# mysql -u root -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 5
Server version: 5.7.17-0ubuntu0.16.04.1 (Ubuntu)

Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> create user 'zabbix_admin'@'localhost' IDENTIFIED BY 'Password';
Query OK, 0 rows affected (0.00 sec)

mysql> GRANT USAGE ON *.* TO 'zabbix_admin'@'localhost' IDENTIFIED BY 'Password';
Query OK, 0 rows affected, 1 warning (0.00 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

mysql> exit
Bye

В папке конфигурации zabbix вы затем указываете информацию для входа в систему

root@web01:~# vi /etc/zabbix/.my.cnf
#
[mysql]
user=zabbix_admin
password=Password
[mysqladmin]
user=zabbix_admin
password=Password

А в файле /etc/zabbix/zabbix_agentd.conf.d/userparameter_mysql.conf вы указываете, какие вещи контролировать (взято из шаблона) Вот еще несколько дополнительных указателей:

...