Zabbix 5: Database Error — Connection Refused

Zabbix

Zabbix 5: Ошибка базы Данных — Отказано в подключении

Диагностика и исправление ошибки Zabbix 5 с сообщением «Database Error — Connection Refused»

Если вы недавно развернули Zabbix 5 с помощью загружаемого пакета Appliance, а через несколько часов, дней или недель вошли в систему и столкнулись с сообщением «Ошибка базы данных — отказано в подключении», ваше сердце упадет, и ваши планы на день, скорее всего, сорваны. Вся эта работа по его настройке, настройке шаблонов, добавлению хостов и уведомлений о действиях была потрачена впустую… Ужас. Вероятно, вы уже смирились с тем, что вам снова придется потратить целый день на его настройку с нуля… Но подождите! Прежде чем вы это сделаете, читайте дальше, так как возможно, что есть довольно простое решение!

Мы предполагаем, что вы знаете, что такое Hyper-V, что ваша виртуальная машина Linux работает под управлением Hyper-V и что вы запустили свой сервер Zabbix с помощью пакета Microsoft Hyper-V 2012 Zabbix 5 Appliance. Тем не менее, некоторые из остальной части этой статьи могут быть применимы к другим средам, хотя команды Linux могут отличаться для разных операционных систем Linux.

Проблема

Если вы входите на свой сервер Zabbix с внешнего интерфейса и сталкиваетесь с сообщением ниже, это может быть по целому ряду причин, но если все остальное работало нормально ранее, то это скорее всего означает, что у вас закончилось дисковое пространство на разделе, хранящем базу данных MySQL в Linux окружении.Zabbix 5: Database Error - Connection Refused

Проверка причины

Учитывая, что ошибка может быть сгенерирована по целому ряду причин, давайте проверим дисковое пространство и посмотрим, что мы найдем. Откройте Hyper-V Manager, выберите свою виртуальную машину Zabbix и нажмите кнопку Подключиться из списка действий справа. Если компьютер не запущен, нажмите кнопку Пуск и дождитесь его загрузки.

Zabbix 5: Database Error - Connection Refused

Войдите в виртуальную машину, а теперь давайте проверим свободное место на диске, введя эту команду и нажав enter:

df -h

Вы должны увидеть что-то вроде приведенного ниже.

Zabbix 5: Database Error - Connection Refused

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

/dev/sda5 4.5G 634M 3.9G 14% /var/lib/mysql

В нашем случае наше значение «Use %» равно 14%, но если ваше значение равно или близко к 100%, значит, вы исчерпали выделенное дисковое пространство в 4,5 ГБ, и мы посмотрим, как это исправить дальше. Если ваше значение не близко к 100%, то, скорее всего, ваши проблемы кроются в чем-то другом, и, что ж, мы надеемся, что это не слишком большая головная боль — мы желаем вам удачи!

Удаление логов (журналов)

Если заполнен /dev/sda2, то стоит почистить логи.

В этой папке (/var/log/) можно удалить практически все файлы, но старайтесь сохранить структуру папок, поскольку некоторые приложения после удаления здесь папки не в состоянии создать её второй раз…

На веб-серверах могут разрастись слишком сильно журналы веб-сервера.

Для удаления логов Apache на Debian, Linux Mint, Ubuntu, Kali Linux и их производных:

sudo rm -rf /var/log/apache2/*

Для удаления логов Apache на Arch Linux, BlackArch и их производных:

 

sudo rm -rf /var/log/httpd/*

Чтобы сервер начал создавать новые файлы журналов и записывать в них, нужно перезапустить службу веб-сервера.

В зависимости от интенсивности использования системы, накопленные журналы могут занимать гигабайты. В зависимости от системы файлы могут называться по-разному, более точный анализ рекомендуется выполнять с помощью утилиты ncdu:

 

sudo ncdu /var/log/

Подготовка к расширению дискового пространства

Поскольку мы определили, что у нас не хватает места на диске для базы данных, давайте сделаем пару подготовительных действий, прежде чем мы действительно исправим проблему. Сначала выключите виртуальную машину, набрав:

poweroff

Виртуальная машина должна изящно завершиться. Далее, и это очень важно, сделайте резервную копию виртуальной машины. Каждый раз, когда вы начинаете взаимодействовать с дисковым пространством, это может повлиять на ваши данные. Чтобы было ясно, мы не ожидаем, что во время этого процесса произойдет что-то непредвиденное, но это возможно, поэтому вернитесь в Hyper-V Manager, выберите виртуальную машину, в параметрах действий щелкните правой кнопкой мыши «Экспорт», сохраните это на рабочем столе, а затем переместите с компьютера Windows на резервный диск или сетевая папка. Обратите внимание, что мы не можем использовать контрольные точки для этого, потому что для настройки дискового пространства виртуальной машины нам нужно будет удалить эти контрольные точки.

Zabbix 5: Database Error - Connection Refused

Увеличение дискового пространства виртуальной машины

Итак, первое, что мы сделаем, это увеличим дисковое пространство виртуальной машины. Это довольно прямолинейно, но мы пройдемся по этому вопросу. Вернитесь в диспетчер Hyper-V и снова убедитесь, что выбрана ваша виртуальная машина. Если у вас есть какие-либо контрольные точки в списке, они не позволят вам редактировать дисковое пространство. Итак, предполагая, что вы уверены, что экспортировали, как указано выше, для резервного копирования вашей виртуальной машины, щелкните правой кнопкой мыши на контрольных точках и выберите «Удалить контрольную точку», пока все они не исчезнут. Затем нажмите «Настройки» прямо под кнопкой «Подключиться» в настройках действий справа. Затем в левой колонке окна настроек при необходимости разверните IDE Controller и выберите «Жесткий диск».:

Zabbix 5: Database Error - Connection Refused

Нажмите кнопку Редактирования виртуального жесткого диска, и должен запуститься Мастер редактирования виртуального жесткого диска, хотя, возможно, он уже включен в опцию Поиска диска.

Zabbix 5: Database Error - Connection Refused

Виртуальный жесткий диск, который необходимо настроить, уже выбран.

Zabbix 5: Database Error - Connection Refused

Теперь нас спрашивают, что мы хотим сделать с виртуальным жестким диском, и, конечно же, мы хотим его расширить, поэтому выберите это и нажмите Далее:

Zabbix 5: Database Error - Connection Refused

Введите новый размер, который вы хотите, чтобы диск имел, и нажмите кнопку Далее. Мы увеличиваем наши с 10 ГБ до 30 ГБ:

Zabbix 5: Database Error - Connection Refused

Просмотрите изменения, которые будут внесены, и, если все выглядит хорошо, нажмите Готово, и мы закончим с этой частью!

Настройка Разделов Linux С Помощью GParted Live

Хотя мы увеличили доступное дисковое пространство на виртуальной машине, нам нужно выделить его для нашего раздела, в котором находится база данных MySQL, которая в настоящее время заполнена. Чтобы сделать это, мы будем использовать удобный маленький инструмент под названием GParted Live. На компьютере с Windows, на котором вы работали в Hyper-V Manager, загрузите загрузочный образ GParted Live отсюда. Более чем вероятно, что вам нужен второй в списке, имя файла которого заканчивается amd64.iso для 64-разрядной машины. Если вы используете 32-разрядную машину, то загрузите i686.iso версия.

Мы собираемся использовать этот загрузочный образ для запуска нашей виртуальной машины, а затем настроить ее разделы, поэтому вернитесь в Hyper-V Manager, откройте окно настроек виртуальной машины и в левой колонке разверните IDE Controller 1, если необходимо, и выберите DVD Drive. Как показано ниже, перейдите к файлу изображения, который вы только что загрузили, и выберите его. Последнее, что нужно проверить, — это то, что в левой колонке вверху в настройках BIOS указано «Загрузка с компакт-диска». Если это не так, перейдите туда и настройте его так, чтобы порядок загрузки был следующим: CD, IDE, Устаревший сетевой адаптер, дискета.

Zabbix 5: Database Error - Connection Refused

Нажмите кнопку ОК в окне настроек и запустите свою виртуальную машину. Теперь вместо загрузки в вашу ОС Linux он загружается с DVD-привода, содержащего программное обеспечение GParted Live. Нажмите enter на этом экране, чтобы выбрать параметр по умолчанию.

Zabbix 5: Database Error - Connection Refused

Снова просто нажмите enter на следующем экране, касающемся ключевой карты:

Zabbix 5: Database Error - Connection Refused

Затем вас спросят, какой язык вы предпочитаете. Нажмите enter для английского языка США по умолчанию или введите выбранный вами вариант, а затем нажмите enter.

Zabbix 5: Database Error - Connection Refused

И, наконец, снова нажмите enter для параметра по умолчанию, когда вас спросят, какой режим вы предпочитаете:

Zabbix 5: Database Error - Connection Refused

И мы в деле! Вы должны смотреть на что-то похожее на приведенное ниже, хотя ваши номера дискового пространства, скорее всего, будут другими:

Zabbix 5: Database Error - Connection Refused

На данный момент следует отметить несколько моментов:

Добавленные нами 20 ГБ дискового пространства отображаются как нераспределенные
Раздел, который мы видели при проверке вашего дискового пространства в начале, был /dev / sda5, и мы можем видеть это в этом списке с меткой mysql
Этот раздел является частью /dev / sda4, поэтому нам нужно сначала расширить /dev / sda4, а затем расширить /dev / sda5
Обратите внимание на «0 ожидающих операций» в левом нижнем углу окна — мы будем настраивать действия для разделов, а затем должны будем применить эти действия в конце.
Щелкните правой кнопкой мыши на разделе /dev/sda4 и выберите в меню Изменить размер/Переместить:

Zabbix 5: Database Error - Connection Refused

Перетащите стрелку вправо до упора вправо или введите максимальное значение размера, указанное в поле Новый размер, и нажмите Изменить размер /Переместить:

Zabbix 5: Database Error - Connection Refused

Обратите внимание, что теперь у нас есть 1 незавершенная операция в левом нижнем углу. Сделайте то же самое, что и выше, для /dev/sda5. Наконец, в меню Редактирования выберите «Apply All Operations».

Zabbix 5: Database Error - Connection Refused

Нажмите кнопку Применить в приглашении, чтобы подтвердить действие. Это должно завершиться в течение нескольких секунд, но это будет зависеть от того, что именно вы сделали и насколько велики ваши разделы. Нажмите закрыть в запросе подтверждения завершения и выключите компьютер из меню Действий главного меню виртуальной машины:

Zabbix 5: Database Error - Connection Refused

После подтверждения запроса на завершение работы вам будет предложено «remove the live-medium» и т.д. — Просто нажмите enter, чтобы продолжить. Теперь снова запустите виртуальную машину, и на этот раз она загрузится с жесткого диска в Zabbix. Как только он загрузится, войдите в систему и давайте снова проверим наши диски с помощью команды:

df -h

Теперь вы должны увидеть, что ваш раздел / dev / sda5 увеличился в размере, а ваш «% использования» уменьшился.

Zabbix 5: Database Error - Connection Refused

Перейдите к интерфейсному адресу вашего сервера Zabbix, и вы сможете войти в систему без проблем!

Как решить похожую проблему на VMWare

Резюме

К счастью, нам не пришлось перестраивать наш сервер Zabbix с нуля, что, как вы, возможно, теперь понимаете, в конечном итоге привело бы к той же проблеме с нехваткой места в этом разделе. Мы надеемся, что это поможет всем, кто использует Zabbix и сталкивается с этой проблемой.

Источник
Добавить комментарий