Как мониторить MySQL или MariaDB с помощью Netdata в Linux
Netdata - это бесплатное простое и масштабируемое приложение с открытым исходным кодом для мониторинга производительности и состояния системы в режиме реального времени для Unix-подобных систем, таких как Linux, FreeBSD и MacOS.
Он собирает различные метрики и визуализирует их, позволяя вам наблюдать за операциями в вашей системе. Он поддерживает различные плагины для мониторинга текущего состояния системы, запущенных приложений и служб, таких как сервер базы данных MySQL, а также многое другое.
В этой статье мы объясним, как отслеживать производительность сервера базы данных MySQL с помощью Netdata в дистрибутивах на основе RHEL.
В конце этой статьи вы сможете наблюдать за визуализацией пропускной способности, запросов, обработчиков, блокировок, проблем, временных, соединений, бинлога, потоков вашего сервера базы данных MySQL из веб-интерфейса мониторинга netdata.
Шаг 1: Установите сервер базы данных MySQL в Linux
Если у вас не установлены MySQL или MariaDB в вашем дистрибутиве на основе RHEL, вы можете легко установить один из них перед настройкой Netdata для мониторинга.
Установка сервера баз данных MySQL
sudo yum localinstall https://dev.mysql.com/get/mysql80-community-release-el9-1.noarch.rpm
sudo yum install mysql-community-server -y
sudo systemctl start mysqld
sudo systemctl enable mysqld
sudo grep 'temporary password' /var/log/mysqld.log
sudo mysql_secure_installation
Установка сервера баз данных MariaDB
sudo yum install mariadb-server -y
sudo systemctl start mariadb
sudo systemctl enable mariadb
sudo mysql_secure_installation
Чтобы собирать статистику производительности с сервера базы данных MySQL/MariaDB, netdata необходимо подключиться к серверу базы данных. Поэтому создайте пользователя базы данных с именем "netdata", чтобы дать ему возможность подключаться к серверу базы данных на локальном хосте без пароля.
mysql -u root -p
CREATE USER 'netdata'@'localhost';
GRANT USAGE on *.* to 'netdata'@'localhost';
FLUSH PRIVILEGES;
exit;
Шаг 2: Установите Netdata для мониторинга производительности MySQL
К счастью, у нас уже есть однострочный скрипт кикстарта, предоставленный разработчиками netdata, для безболезненной установки его из дерева исходных текстов в репозитории github.
Скрипт kickstarter загружает еще один скрипт для определения вашего дистрибутива Linux; устанавливает необходимые системные пакеты для сборки netdata; затем загружает последнее дерево исходных данных NetData; Собирает и устанавливает его в вашу систему.
Эта команда поможет вам запустить скрипт на кикстартере и позволит установить необходимые пакеты для всех плагинов netdata, включая плагины для MySQL/MariaDB.
wget -O /tmp/netdata-kickstart.sh https://get.netdata.cloud/kickstart.sh && sh /tmp/netdata-kickstart.sh
Если вы не управляете своей системой от имени root, вам будет предложено ввести пароль пользователя для команды sudo, а также вам будет предложено подтвердить ряд функций, просто нажав [Enter].
После того как скрипт завершит сборку и установку netdata, вы можете запустить службу netdata и включить ее запуск при загрузке системы.
sudo systemctl start netdata
sudo systemctl enable netdata
По умолчанию Netdata прослушивает порт 19999, вы будете использовать этот порт для доступа к веб-интерфейсу. Итак, откройте порт на системном брандмауэре.
sudo firewall-cmd --permanent --add-port=19999/tcp
sudo firewall-cmd --reload
Шаг 3: Настройте Netdata для мониторинга MySQL/MariaDB
Конфигурации по умолчанию достаточно, чтобы вы могли начать мониторинг сервера базы данных MySQL/MariaDB. В случае, если вы прочитали документацию и внесли какие-либо изменения в вышеуказанный файл, вам необходимо перезапустить службу netdata для внесения изменений.
sudo systemctl restart netdata
Затем откройте веб-браузер и используйте любой из следующих URL-адресов для доступа к веб-интерфейсу netdata.
http://domain_name:19999
OR
http://SERVER_IP:19999
На панели управления netdata найдите «MySQL local» в списке плагинов справа и нажмите на него, чтобы начать мониторинг вашего сервера MySQL/MariaDB. Вы сможете наблюдать за визуализациями пропускной способности, запросов, обработчиков, блокировок, а также galera, как показано на следующем скриншоте.
Репозиторий Netdata на Github: https://github.com/netdata/netdata
Это всё! В этой статье мы объяснили, как отслеживать производительность сервера базы данных MySQL/MariaDB с помощью Netdata в системах на базе RedHat. Используйте форму для комментариев ниже, чтобы задать вопросы или поделиться с нами дополнительными мыслями.