Фрагмент для ознакомления
2
ВВЕДЕНИЕ
В любой сети, где есть больше, чем один сервер, администратору необходимо иметь перед глазами полную картину происходящего. Если количество хостов сети переваливает за несколько десятков, следить за каждым в отдельности — непосильная задача. Для решения этой задачи наблюдения применяются системы мониторинга. В этом докладе поговорим более подробно об одной из них, Zabbix.
Проект Zabbix был запущен в 1998 году как внутренняя разработка для латвийского банка.
7 апреля 2001 года система была выпущена публично под лицензией GPL, первая стабильная версия — 1.0 от 23 марта 2004. В апреле 2005 года была создана латвийская компания SIA Zabbix для управления проектом. На сегодняшний день выпущено 6 версий программы с постоянными релизами обновлений текущих версий: 2.0 (2012), 3.0 (2016) , 4.0 (2018), 5.0 (2020), 6.0 (2022).
Функционал включает в себя общие проверки для наиболее распространенных сервисов, в том числе СУБД, SSH, Telnet, VMware, NTP, POP, SMTP, FTP и т.д. Если стандартных настроек системы недостаточно, их можно изменить самостоятельно или же пользоваться дополнением через API.
Рис.1 Вариант панели Zabbix, предназначенной для отображения сводки по всей важной информации
Глава 1 ОСНОВНЫЕ ПОНЯТИЯ, ВОЗМОЖНОСТИ И ПРЕИМУЩЕСТВА ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ZABBIX
1.1 Термины и определения для процессов Zabbix.
Для описания системы мониторинга Zabbix существует несколько ключевых понятий:
узел сети
- сетевое устройство, мониторинг которого вы хотите производить, имеющее IP/DNS.
группа узлов сети
- логическая группировка узлов сети; группа может содержать узлы сети и шаблоны. Узлы сети и шаблоны в группе узлов сети никаким образом не связаны друг с другом. Группы узлов сети используются при назначении прав доступа к узлам сети различным группам пользователей.
элемент данных
- конкретный фрагмент данных, который вы хотите получать от узла сети, метрика.
триггер
- логическое выражение, которое определяет порог проблемы и используется для "оценки" данных полученных элементами данных.
Если полученные данные превышают порог, триггер переходит из состояния 'Ок' в состояние 'Проблема'. Если полученные данные ниже порога, триггер остается/возвращается в состояние 'Ок'.
событие
- одиночное возникновение того, что заслуживает внимания, например изменение состояния триггера или обнаружение/авторегистрация агента.
тег события
- предопределенный маркер для события. Его можно использовать в корреляции событий, в определении прав доступа и т.д.
корреляция событий
- гибкий и точный метод корреляции проблем с решением этих проблем.
Например, вы можете задать, что проблема, которую сообщил один триггер, может быть решена другим триггером, который может использовать даже совершенно другой метод сбора данных.
проблема
- триггер, который находится в состоянии "Проблема".
эскалация
- пользовательский сценарий выполнения операций в рамках действия; последовательность отправки оповещений/выполнений удаленных команд.
оповещение
- сообщение о некотором событии, отправленное пользователю через выбранный канал доставки.
удаленная команда
- предопределенная команда, которая автоматически выполняется на наблюдаемом узле сети при наступлении некоторых условий.
шаблон
- набор сущностей (элементов данных, триггеров, графиков, правил низкоуровневого обнаружения, веб-сценариев) готовых к присоединению к одному или нескольким узлам сети.
Задача шаблонов повысить скорость развертывания задач мониторинга узлов сети; кроме того упростить применение массовых изменений к задачам наблюдения. Шаблоны соединяются напрямую с отдельными узлами сети.
веб-сценарий
- один или несколько HTTP запросов для проверки доступности веб-сайта.
веб-интерфейс
- веб-интерфейс поставляемый с Zabbix.
панель
- раздел веб-интерфейса, который отображает сводку и визуализацию важной информации в визуальных блоках называемых виджетами.
виджет
- визуальный блок, который отображает информацию определенного вида и источника (сводка, карта, график, часы и т.д.), используется на панели.
Zabbix сервер
- главный процесс программного обеспечения Zabbix, который выполняет мониторинг, взаимодействует с прокси и агентами Zabbix, вычисляет триггеры, отправляет оповещения; центральное хранилище данных.
Zabbix прокси
- процесс, который может собирать данные от имени Zabbix сервера, перенимая часть нагрузки сервера.
Zabbix агент
- процесс разворачиваемый на наблюдаемых целях для активного мониторинга локальных ресурсов и приложений.
Zabbix агент 2
- Zabbix агент нового поколения для активного мониторинга локальных ресурсов и приложений, который позволяет использовать пользовательские плагины для выполнения функций мониторинга.
По причине того, что Zabbix агент 2 имеет схожий во многом функционал с Zabbix агентом, термин "Zabbix агент" в документации означает как Zabbix агента, так и Zabbix агента 2, если функционал не отличается. Zabbix агент 2 указывается отдельно в случае наличия разницы по функционалу.
шифрование
- поддержка шифрованной связи между компонентами Zabbix (сервером, прокси, агентом и утилитами zabbix_sender и zabbix_get) с использованием Протокола защиты транспортного уровня (TLS).
обнаружение сети
- автоматическое обнаружение сетевых устройств.
низкоуровневое обнаружение
- автоматическое обнаружение низкоуровневых объектов на конкретном устройстве (например, файловые системы, сетевые интерфейсы и т.д.).
правило низкоуровневого обнаружения
- набор определений для автоматического обнаружения низкоуровневых объектов на устройстве.
1.2 Возможности и преимущества системы мониторинга Zabbix.
Теперь перейдём к описанию непосредственных возможностей и преимуществ программного обеспечения Zabbix
1. Держать под контролем всю инфраструктуру, собирая любые метрики из любых источников:
Сетевые устройства
Облачные сервисы, контейнеры, виртуальные машины
Мониторинг операционных систем
Лог-файлы
Базы данных
Приложения
Сервисы
IoT сенсоры
Мониторинг веб-страниц
Мониторинг конечных точек HTTP/HTTPS
Поддержа всех стандартных для отрасли протоколов
Сбор данных с внешних конечных точек API
2. Мгновенно обнаруживать проблему автоматически во входящем потоке данных:
Высокопроизводительное обнаружение проблем в режиме реального времени
Гибкие возможности определения
Разделение состояния решения проблем и самих проблем
Несколько уровней значимости
Анализ Исходных данных
Защита от схлопывания
Обнаружение аномалий
Прогнозирование проблем
Обнаруженные проблемы можно классифицировать с помощью тегов для умных оповещений
Экспорт обнаруженных проблем событий в режиме реального времени в сторонние системы (Elastic, Splunk и т.д.)
3. Получать уведомления о критических проблемах, используя несколько каналов обмена сообщениями для оповещения ответственного лица или лиц о различных событиях, происходящих в вашей среде:
Системы оповещения: VictorOPS, Opsgenie, Pagerduty, SIGNL4 и др.
Email
SMS для надежных оповещений с использованием USB-модемов
Онлайн SMS-шлюзы
Платформы для общения:
Slack
MS Teams
Telegram
Express.ms
Rocket.chat
And more
Вебхуки для интеграции с внешними системами обмена сообщениями, ITSM и системами тикетинга
Показать больше