Система мониторинга Zabbix

Система мониторинга Zabbix

Life-Hack - Linux/Хакинг/Хакер/ИБ/Osint

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

Zabbix ― это система мониторинга с веб-интерфейсом, которая позволяет собирать различные данные с устройств. С её помощью можно производить мониторинг сети, серверов, виртуальных машин, баз данных, приложений и устройств.

Архитектура Zabbix включает четыре основных инструмента, позволяющих мониторить определенную рабочую среду и собирать о ней полный пакет данных для оптимизации работы. К этим инструментам относятся:

  • сервер - ядро, хранящее в себе все данные системы, включая статистические, оперативные и конфигурационные. Дистанционно управляет сетевыми сервисами, оповещает администратора о возникающих проблемах с оборудованием, находящимся под наблюдением;
  • прокси-сервис, работающий от имени сервера и собирающий данные о доступности и производительности устройств. Данные при этом сохраняются в буфер и загружаются на сервер в отдельную БД (MySQL, PostgreSQL, SQLite или Oracle). Прокси-сервис необходим для снижения нагрузки на сервер, на процессор и на жесткий диск;
  • агент - программа (демон), которая активно отслеживает работу локальных ресурсов (накопителей, оперативной памяти, процессора) и приложений и собирает статистику по ним. Отражение текущего состояния физического сервера осуществляются Zabbix-агентом при помощи таких метрик, как загруженность ядра (Processor load), время ожидания ресурсов (CPU io wait time), объем системы подкачки (Total swap space).
  • веб-интерфейс, который является частью сервера системы и часто запускается на том же физическом узле, что и Zabbix.

В Zabbix узлы сети (host) являются основными объектами, которые мониторятся системой. Каждый хост имеет описание, адрес (dns или ip) и может быть объединен в группы для удобства наблюдения. Кроме того, каждый узел содержит набор элементов данных (items), то есть параметров, которые мониторятся системой. Эти параметры могут быть различными, например, это может быть метрика CPU, использование дискового пространства, сетевой трафик и т.д.

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

Функционал Zabbix включает в себя общие проверки для наиболее распространенных сервисов - СУБД, SSH, Telnet, VMware, NTP, POP, SMTP, FTP. Если стандартных настроек системы недостаточно, их можно изменить самостоятельно или же пользоваться дополнением через API. Также к стандартным функциям системы относятся: контроль нагрузки на процессор - касается и общих, и отдельных процессов; сбор данных об объеме свободной оперативной и физической памяти; мониторинг активности жесткого диска и мониторинг сетевой активности; пинг для проверки доступности узлов в сети.

Схема установки Zabbix включает этапы:

  • установка Zabbix Server в Linux (Ubuntu, CentOS) через пакетный менеджер:
# wget https://repo.zabbix.com/zabbix/5.4/debian/pool/main/z/zabbix-release/zabbix-release_5.4-1+debian10_all.deb
# dpkg -i zabbix-release_4.4-1+bionic_all.deb
# apt update
  • затем устанавливаются необходимые пакеты , создается база данных и устанавливаются права пользователя:
# apt install zabbix-server-mysql zabbix-frontend-php zabbix-nginx-conf zabbix-agent
# mysql -uroot mysql create database zabbix character set utf8 collate utf8_bin; mysql grant all privileges on zabbix.* to zabbix@localhost identified by 'ВашПароль'; mysql quit
  • далее проводится импорт базы данных и выполняется добавление службы в автозапуск.
# zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p Zabbix
# systemctl enable zabbix-server zabbix-agent nginx php7.2-fpm
# systemctl restart zabbix-server zabbix-agent nginx php7.2-fpm

Настройка веб-интерфейса Zabbix проводится так. В браузере открывается указанный ранее URL-адрес zabbix-сервера (к примеру, указанный домен). Нужно прописать его у себя в hosts файле или на DNS сервере). При этом важно открыть оба порта, который система Zabbix использует по умолчанию - TCP 10050 (порт пассивного агента, по нему zabbix сервер опрашивает клиентов) и TCP 10051 (порт, на котором zabbix сервер получает данные от клиентов - активный агент). 

Выбор в пользу Zabbix позволяют сделать его возможности:

  • автоматического обнаружения серверов и сетевых устройств;
  • low-level мониторинга и распределенного мониторинга, мониторинга без администратора;
  • поддержки и захвата механизмов;
  • отправки по e-mail уведомлений о предопределенных событиях;
  • контроля ресурсов и записи лог-файлов аудита.

По сравнению с другими системами мониторинга, Zabbix позволяет осуществлять конфигурирование системы посредством API, а также через интерфейс, обеспечивает возможность хранения настроек в БД, что позволяет применять все вносимые в конфигурацию изменения «на лету», имеет качественные средства визуализации и выполняет хранение истории, благодаря чему существенно упрощается ряд задач, связанных с мониторингом. Кроме прочего, Zabbix обладает мощной поддержкой параметров пользователя, таких как оповещения, пороги, реакции, а также поддержкой мониторинга логов и JMX в своей базовой комплектации.



Report Page