Установка и настройка Zabbix

Содержание

Zabbix — это свободная система мониторинга и отслеживания статусов компьютерной сети, облачных ресурсов, сервисов, приложений, серверов и сетевого оборудования в реальном времени. Zabbix — полноценное решение для мониторинга крупных компьютерных сетей, был разработан Алексеем Владишевым при активной поддержке Zabbix SIA. Zabbix умеет находить все типы сетевых устройств используя различные методы, проверять состояние оборудования и приложений, отправлять заданные сообщения о тревоге и визуализировать сложные взаимосвязи. Он основан на модели клиент-сервер и способен отслеживать миллионы показателей, таких как загрузка ЦП, использование сети и потребление дискового пространства десятками тысяч серверов.

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

Возможности Zabbix 5

Более подробно вы можете изучить возможности на официальном сайте Что нового в Zabbix 5.0 LTS. Я хочу отметить важные для меня возможности:

Шаблоны Zabbix в версии 5 стали более сложными с кучей макросов и автообнаружений.

Системные требования Zabbix 5.2 и выше

Шаг 1 — Предварительные требования

Очень важно иметь точную дату и время системы на сервере с запущенным Zabbix. ntpd один из наиболее популярных демонов синхронизации времени хоста с временем на остальных серверах. Настоятельно рекомендуется поддерживать синхронизированное время на всех системах, где работают Zabbix компоненты.

Шаг 2 — Подключение официального репозитория Zabbix и исправление ошибок:)

В этом руководстве я буду объяснить, как установить сервер Zabbix в системе Ubuntu 20.04 LTS.

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

После выбора конфигурации — ниже появятся команды для подключения репозитория, в моем случае такие:

И здесь бабамс. Получаем ошибку: N: Skipping acquire of configured file 'main/binary-i386/Packages' as repository 'http://repo.zabbix.com/zabbix/5.2/ubuntu focal InRelease' doesn't support architecture 'i386'

Самое интересное изучил штук 7 руководств по установке Zabbix 5 на Ubuntu и нигде такой ошибки нет! Вопрос, а кто в интернете пишет эти руководства, на том же digitalocean и других гуру администрирования, это копипаст какой-то. Ладно как всегда иду на новозеландские англоязычные форумы и нахожу ответ не по Заббиксу, но решение проблемы понятно. Кому интересно это связано с мультиархитектурностью ядра Linux и поддержкой одновременно приложений i386 и amd64. Ниже команды для анализа вашего сервера по поддержке 32 и 64:

Вот команда для удаления мульти-архитектуры (только если у вас нет 32-битных приложений), но запускать ее не надо. Я ее указал просто для полного раскрытие этой ошибки.

РЕШЕНИЕ: Правим файл /etc/apt/sources.list.d/zabbix.list, который нам установила команда dpkg -i zabbix-release_5.2-1+ubuntu20.04_all.deb и добавляем ключ [arch=amd64]. Мой измененный файл:

И снова запускаем

Шаг 3 — Установка LAMP

Ставим стандартно LAMP: Apache и MySQL.

Настраиваем пароль и безопасность сервера MySQL:

Шаг 4 — Установка Zabbix сервер, веб-интерфейс и агент

После добавления репозитория Apt установим пакеты сервера Zabbix, где пакет zabbix-server-mysql включает Zabbix сервер с поддержкой MySQL, пакет zabbix-frontend-php предоставляет веб-интерфейс для Zabbix сервера.

Шаг 5 — Настройка базы данных MySQL для Zabbix

Импортируем схему базы данных для Zabbix сервера. Логинемся на сервер MySQL с учетной записью root и создаем базу данных MySQL и пользователя с помощью следующих команд.

Импорт начальной схему и данных Заббикс производим от пользователя MySQL созданного выше.

Настроим подключение Заббикса к базе данных, для это следует отредактировать файл /etc/zabbix/zabbix_server.conf и задать пароль для подключения к MySQL. Остальные 3 параметра уже настроены, если вы конечно не извращались с именем пользователя и базы данных.

Шаг 6 — Автозапуск Zabbix и Apache

Добавляем в автозагрузку и запускаем процессы Zabbix сервера, агента и вебсервера Apache.

Система установлена, дальнейшая настройка через веб-установщик Zabbix, по адресу:

Шаг 7 — Настройка PHP 7 под требования Zabbix

Почти во всех руководствах по настройке PHP идет глупый копипаст На самом деле кроме часового пояса не надо ничего менять. Разработчики Zabbix за вас уже всё сделали в файле /etc/zabbix/apache.conf.

В файле конфигурации PHP /etc/php/7.4/apache2/php.ini и /etc/zabbix/apache.conf меняем часовой пояс в соответствии с вашими требованиями. Обязательно сделайте копию php.ini.

Кроме часового пояса — ничего НЕ трогайте в php.ini и apache.conf.

Шаг 8 — Настройка брандмауэра для Zabbix

В этом случае я использую UFW, вы должны были на первом шаге его настроить первоначальная настройка сетевого фильтра. Далее нам нужно разрешить порты протокола HTTP, HTTPS и зарезервированные порты для работы с Zabbix агентами.

Проверяем есть ли строки в файле services, если нет дописываем

Команды для UFW

В итоге должна получится такая настройка фаервола:

Шаг 9 — SSL сертификат (опционально)

Есть хорошие правила, которые позволяют настраивать безопасно и не попадать на деньги:

Моя настоятельная рекомендация установить SSL сертификат на Веб интерфейс управления Заббикс, воспользуйтесь этой инструкцией. Там же вы увидите как быстро и правильно создать виртуальный домен Apache с поддержкой HTTP, HTTPS.

Шаг 10 — Запуск веб-установщика Zabbix 5

(в моем случае будет конечно https), чтобы начать первоначальную настройку Zabbix. Жмем Next — проверяем зависимости PHP, если все колонки OK — жмем Next. На странице Configure DB connection вводим пароль MySQL пользователя zabbix, который был создан на Шаг 5.

На странице Zabbix server details введите имя хоста или IP-адрес хоста и номер порта сервера Zabbix, а также имя установки (необязательно). Мои настройки на скриншоте.

Жмем Next — проверяем суммарную информаци. Жмем Next — полeчаем сообщение о создании конфигурационного файла /usr/share/zabbix/conf/zabbix.conf.php. Жмем Finish и переходим на страницу авторизации.

Учетные данные для доступа к веб- интерфейсу Zabbix по умолчанию

Сразу меняйте пароль, переходите на страницу Administration Users Admin жмем Change Password.

Поздравляю, Вы установили Zabbix!

Шаг 11 — Защита Zabbix (опционально)

Мой Zabbix сервер имеет реальный IP и значит его видит весь мир. Разрешим доступ к веб интерфейсу только с определённых доверенных IP. В мой конфигурации я использую Apache/2.4.41 и буду использовать директиву Require ip. Если вы используете другой веб- сервер, вам следует изучить документации того веб сервера, который используете.


Источник: wiki.dieg.info