Как крупные, так и небольшие компании постоянно анализируют работу и продуктивность устройств, которые используются при создании продукта. Поэтому существует множество мониторинговых программ. Одной из самых популярных систем такого рода является Zabbix. В этой статье мы расскажем, что такое система мониторинга Zabbix, что можно мониторить с её помощью и как эта система работает.
Итак, Zabbix ― что это за программа и какие возможности она даёт? Это система с веб-интерфейсом, которая позволяет собирать различные данные с устройств. С её помощью можно производить мониторинг сети, серверов, виртуальных машин, баз данных, приложений и устройств. Zabbix может получать данные о состоянии устройства: объёме памяти, скорости работы процессора, температуре машины, логах и др. Помимо этого, система способна наблюдать за бизнес-метриками ― к примеру скоростью продажи продукта. 11 марта 2023 года вышла последняя версия Zabbix-сервера ― Zabbix 6.4.
Как работает Zabbix
Чтобы система могла одновременно наблюдать за сотнями устройств без перегрузок, разработчики разделили всю систему на несколько компонентов:
Мониторинг серверов Zabbix
- 1. Основной сервер. Это мозг программы. Он получает, обрабатывает и анализирует данные.
- 2. Базы данных. В них вся информация, полученная с сервера, собирается и хранится в течение установленного пользователем времени.
- 3. Веб-интерфейс. Позволяет легко получать доступ к настройкам Zabbix.
- 4. Агент. Zabbix agent ― что это? Он работает на сервере в режиме демона. Агент может быть как в активном режиме (сам запрашивает список нужных параметров), так и в пассивном (ждёт запросов от сервера). Это необязательный элемент системы Zabbix, так как сервер может получать информацию с устройства при помощи других инструментов, с которыми можно познакомиться на официальном сайте Zabbix.
- 5. Прокси. Отвечает за управление агентами. Это тоже необязательный компонент, но он снижает нагрузку на Zabbix-сервер. Прокси берёт на себя функцию предобработки данных, полученных агентами. Этот компонент актуален для тех компаний, которые мониторят сотни устройств с Zabbix-агентами.
Как пользоваться системой Zabbix
Информация с устройств попадает на Zabbix-сервер и обрабатывается им. Далее результаты обработки попадают в базу данных, где пользователь видит информацию в структурированном виде. Можно выбрать любую базу данных: MySQL, PostgreSQL в облаке, SQLite или Oracle. Для каждой метрики устанавливается пользовательский интервал. Пользовательские интервалы ― это промежутки времени, в которых собирается информация с устройства или системы. Например, программа может измерять температуру устройства каждые два часа.
Заббикс-мониторинг состояния любой системы чаще всего устанавливается, чтобы предупредить возможные технические проблемы. Благодаря Zabbix можно не только быстро узнавать об ошибках, но и предвидеть проблемы. Для этого в системе устанавливаются триггеры. Триггеры ― это условия, которые указывают, что в работе устройства или системы возникли проблемы. При срабатывании триггера Zabbix уведомляет пользователя о проблемах и может сам исправить ошибку, выполняя заранее прописанные действия для определённого триггера. Допустим мы установили, что процессор запускается в течение 7 секунд. Если запуск происходил хотя бы 8 секунд, то в программе сработает триггер и она уведомит пользователя о проблеме.
Для того, чтобы активировать мониторинг, нужно определить web-сценарии. В Zabbix web-сценарии позволяют собирать данные с узлов сети. Они настраиваются в виде шаблонов, которые можно применить к разным узлам или группам.
Приостановить отправку уведомлений о проблемах можно в настройках периода обслуживания. При этом оповещения, созданные в этот период, будут доступны для просмотра. Также их можно будет отправить после завершения обслуживания. В Zabbix период обслуживания можно настроить для отдельного узла или для группы.
Так как Zabbix собирает большие объёмы данных, он может предвидеть проблемы с устройством. Вернёмся к примеру с запускающимся процессором. Представим, что обычно запуск происходит в течение 4 секунд. Через неделю время запуска ― 5 секунд, ещё через неделю ― 6 секунд. Есть тенденция к увеличению времени запуска, и скоро сработает триггер. Заметив эту тенденцию, можно предотвратить проблему.
Чтобы пользователям было проще настраивать мониторинг, разработчики предлагают шаблоны со стандартным набором метрик и триггеров. Например, для Linux-сервера предлагают мониторинг памяти, состояния процессора и сети. Есть также специальный шаблон, который осуществляет мониторинг интернет-канала Zabbix.
Подробная установка Zabbix на Linux-системы описаны в статьях:
В них описана пошаговая установка Zabbix, а также есть Zabbix agent настройка.
Zabbix: требования к серверу
Основные системные требования Zabbix ― это память и поддерживаемая платформа. Zabbix хорошо работает на большинстве платформ: Linux и другие операционные системы Unix, IBM AIX, FreeBSD, NetBSD, OpenBSD, HP-UX, Mac OS X, Solaris и Windows. С памятью тоже все просто. Чем больше данных вы хотите мониторить и хранить, тем больше оперативной памяти и места на жёстком диске понадобится. Подробнее о системных требованиях можно узнать на официальном сайте Zabbix.
Активные и пассивные агенты
Как мы писали выше в структуре системы мониторинга есть агент, с помощью которого можно получать данные. Он может работать в пассивном или активном режиме.
При пассивном режиме Zabbix-сервер в соответствии с настройками отправляет запросы агенту. Затем данные собираются и отправляются снова на Zabbix-сервер. Недостатки пассивного режима:
- не работает, если узел находится за NAT,
- большая нагрузка на сервер.
При активном режиме сам агент сначала запрашивает у Zabbix-сервера список данных, которые нужно собрать. Частота запросов устанавливается пользователем в соответствии с количеством узлов и объёмом данных, которые нужно получить. Чем чаще происходят запросы, тем больше нагружается сервер. Как только агент получает данные, он отправляет их на Zabbix-сервер для обработки.
Недостаток активного режима ― нужно самостоятельно создавать шаблоны для запросов, в то время как для пассивного режима есть готовые решения и нужно только выбрать подходящие параметры.
Какой агент лучше выбрать? Если сеть небольшая, подойдет пассивный агент. Если же сеть большая и на сервере много постоянно меняющихся данных, лучше использовать активный режим. Zabbix agent Linux установка подробно описана в документации. Для установки агента Zabbix инструкция на русском доступна по ссылке.
В этой статье мы разобрали, что такое мониторинговая система Zabbix и как она работает. Теперь администрировать бизнес будет проще.
Помогла ли вам статья?
Спасибо за оценку. Рады помочь 😊