Компании заинтересованы в бесперебойной работе оборудования, устройств и веб-ресурсов, поскольку даже небольшие сбои и неисправности способны привести к ощутимым финансовым потерям. Чтобы своевременно реагировать на проблемы или вовсе не допускать возникновения внештатных ситуаций, важно контролировать функционирование серверов и сетевого оборудования. Сделать это проще, если знать, что такое система мониторинга Zabbix.
- Цели и задачи Zabbix
- Как работает Zabbix, и его архитектура
- Установка и настройка Zabbix
- Какую версию выбрать. Что нового в Zabbix 5.
- Сколько стоить развернуть Zabbix
- Почему стоит выбрать Zabbix, в чем его преимущества
- Статьи по теме
- Интерфейс программы и триггеры
- Требования к серверу
- Установка Zabbix на Windows
- Архитектура и возможности Zabbix
- Как пользоваться Zabbix
- Заключение
Цели и задачи Zabbix
Zabbix – одна из наиболее распространённых систем мониторинга ИТ-инфраструктуры. Её применяют для выявления и предотвращения потенциальных проблем с оборудованием или в работе сайта, домена приложений.
Ключевыми преимуществами программы считаются открытый исходный код, а также совместимость с несколькими видами операционных систем. Возможно осуществлять с помощью zabbix мониторинг служб windows, также он работает на Linux, FreeBSD, Mac OS X и других платформах.
Благодаря программе проводят мониторинг сети и различных устройств, анализируя большое количество данных. Например, она позволяет оценить работоспособность сервера, облачных ресурсов, базы данных и т.д.
Система характеризуется широким функционалом, поэтому используется для различных целей.
Поскольку Zabbix обрабатывает внушительный объём информации, удаётся минимизировать риск возникновения технических проблем. Например, если каждую неделю времени запуска увеличивается на 1 секунду, это выраженная тенденция, которая, несомненно, приведёт к проблеме. Предприняв какие-либо действия, можно предотвратить сбои в работе оборудования или сервисов.
13 мая 2021
Zabbix 5: сущность и принципы применения
Сегодня знакомимся с архитектурой Zabbix системы и лучшими ее практиками под руководством старшего системного инженера Logrocon Ивана Худорожкова. В конце страницы вы найдете видео с лекцией по нижеизложенным материалам.
Что такое Zabbix?
У Zabbix есть 4 основных инструмента, с помощью которых можно мониторить определенную рабочую среду и собирать о ней полный пакет данных для оптимизации работы.
Схема Zabbix 5
Функционал включает в себя общие проверки для наиболее распространенных сервисов, в том числе СУБД, SSH, Telnet, VMware, NTP, POP, SMTP, FTP и т.д. Если стандартных настроек системы недостаточно, их можно изменить самостоятельно или же пользоваться дополнением через API.
Стандартные функции системы:
Для описания системы мониторинга Zabbix существует два ключевых понятия:
Сам Zabbix-агент способен отражать текущее состояние физического сервера, собирая совокупность данных. У него достаточно много метрик. С их помощью можно проверить загруженность ядра (Processor load), время ожидания ресурсов (CPU iowait time), объем системы подкачки (Total swap space) и многое другое.
Хотя мы и обсуждаем агенты Zabbix в качестве активных или пассивных, некий агент на самом деле не является тем или иным — само направление коммуникации определяется на уровне его элемента. Некий агент способен (и при определении по умолчанию делает это) работать в обоих режимах в одно и то же время. Тем не менее, мы будем вынуждены выбирать какой именно тип элемента применять — активный или пассивный. Говоря кратко — рекомендуется применение активных элементов.
Чтобы понять почему, давайте сопоставим как осуществляется такое подключение. В случае пассивного агента это очень просто:
Одно значение означает одно подключение.
Активный агент слегка более сложный. Помните — в таком активном режиме сам агент подключается к своему серверу; следовательно этот агент вначале подключается к своему серверу Zabbix и запрашивает некий список элементов для мониторинга. Этот сервер затем выдаёт отклик с элементами, их интервалы и всю прочую связанную с этим информации.
В Zabbix существует целых 17 способов, дающих возможность собирать информацию. Указанные ниже, входят в число наиболее часто применяемых.
У проверок есть заданные шаблоны (Templates), которые упрощают создание новых. Кроме обычных операций существует возможность регулярно проверять доступность веб-сервера с помощью имитации запросов браузера.
Проверки через пользовательский параметр
Это логические выражения со значениями FALSE, TRUE и UNKNOWN, которые используются для обработки данных. Их можно создать вручную. Перед использованием триггеры возможно протестировать на произвольных значениях.
У каждого триггера существует уровень серьезности угрозы, который маркируется цветом и передается звуковым оповещением в веб-интерфейсе.
— среднее значение за определенный интервал в секундах или количество отсчетов. — разность между максимумом и минимумом с определенным интервалом или количеством отсчетов. — разница между последним и предпоследним значением. — количество отсчетов, удовлетворяющих критерию. — дата. — день недели от 1 до 7. — у параметра есть значения, где 0 — последнее и предпоследнее значения равны, 1 — различаются. — любое (с конца) значение элемента данных. — максимум и минимум значений за указанные интервалы или отсчеты. — время в формате UNIX. — предпоследнее значение. — сумма значений за указанный интервал или количество отсчетов. — текущее время в формате HHMMSS.
Триггеры обладают еще одной важной функцией для мониторинга — прогнозированием. Она предугадывает возможные значения и время их возникновения. Прогноз составляется на основе ранее собранных данных.
Анализируя их, триггер выявляет будущие проблемы, предупреждает администратора о возникшей вероятности. Это дает возможность предотвратить пики нагрузки на оборудование или заканчивающееся место на жестком диске.
Функционал прогнозирования добавили с обновлением системы 3.0, вышедшим в феврале 2016 года.
Действие (Action) – представляет собой заданную реакцию на событие (Event). Действие может устанавливаться автоматически или вручную как для одного из событий, так и для целой группы.
Операции нужны для последующих автоматических действий после отработки триггера. Пользователь может указать для событий операцию или группу операций.
Zabbix стремится поставлять растущий список полезных готовых шаблонов. Готовые шаблоны заранее настроены и, таким образом, являются полезным способом ускорения развертывания задач мониторинга. Шаблоны хранятся в xml файле.
Есть несколько типов шаблонов:
Что можно обнаружить:
Задать собственные типы низкоуровневого обнаружения возможно с применением формата JSON. Типы проверок, для которых можно указать список портов и интервал для них:
Если хост пропадает или обнаруживается, для события можно привязать любое действие — условия и операцию для них.
Функция буферизации через прокси используется в том случае, когда существующая инфраструктура достаточно большая, а выделенный сервер не способен нести такую нагрузку. Прокси выступает промежуточным звеном, которое собирает информацию с агентов в буфер, а после отправляет данные на сервер.
Прокси используется еще в нескольких случаях — если агенты находятся далеко друг от друга или ограничены локальной сетью. Это сказывается на доступности агентов и величине пингов.
Zabbix прокси функционирует как демон. Для его использования обязательно наличие отдельной базы данных.
Система мониторинга Zabbix располагает удобным веб-интерфейсом, в котором сгруппированы элементы управления. Консоль предусматривает просмотр собранных данных, их настройку. Для безопасности входа и работы осуществляется автоматическое отсоединение через 30 минут пользовательского бездействия.
На главном экране всегда представлена информация о состоянии узлов сети и триггеров.
Настраивайте панели под себя и под требования проекта. Ищите узкие места заранее, стройте на них триггеры и оповещения, выводите информацию о них на панели.
Разбирайте проблемы при поступлении, от маленьких до больших.
Всегда после подключения нового шаблона проверяйте поступление данных.
Используем комплексные экраны для большего обхвата и понимания происходящего с инфраструктурой на проекте.
Не брезгуйте пользоваться Zabbix, как дополнительной инвентаризационной книжной.
А использование обнаружения сервисов даст таблицу с работающими ресурсами прямо сейчас.
Не бойтесь создавать скрипты и пользоваться ими в проблемных ситуациях, это сохранит вам потом уйму времени.
Проверяйте как себя чувствует сама система мониторинга, не допустите что бы ценные данные не были потеряны или система не могла нормально их собирать.
Проверяйте последние 100 триггеров, обрабатывайте самые частые и продумывайте пути решения новых проблем.
Так же очень хорошо использовать мониторинг появления проблем с безопасностью в открытом коде и коде самой системы. Можно использовать данные открытые источники о проблемах, по типу https://vulners.com/.
Стройте карты сетей для большего понимания куда ходит трафик и где может понадобиться помощь монтажников 🙂
Так же стоит изредка, но верно проверять журнал действий системы оповещения, тут можно обнаружить проблему с доставкой уведомления или работы скрипта.
В любом хосте, состоящем более чем из одного сервера, администратору необходимо иметь перед глазами полную картину происходящего. Для упрощения этой задачи в крупных сетях применяются системы мониторинга. К таким системам относится универсальный инструмент Zabbix, который способен отслеживать динамику работы серверов и сетевого оборудования, быстро реагировать на внештатные ситуации и предупреждать возможные проблемы с нагрузкой. Система мониторинга Zabbix также может собирать статистику в указанной рабочей среде и действовать в определенных случаях заданным образом.
Как работает Zabbix, и его архитектура
Архитектура Zabbix включает четыре основных инструмента, позволяющих мониторить определенную рабочую среду и собирать о ней полный пакет данных для оптимизации работы. К этим инструментам относятся:
Основная логическая единица архитектуры Zabbix — это узлы сети (host), сервера, находящиеся под наблюдением. Каждому серверу присваивается описание и адрес — dns или ip. Допустимо применять оба, причем с возможностью выбирать, что использовать для соединения. Узлы можно объединять в группы, например, по веб-серверам или серверам баз данных, для вывода только определенных серверов при наблюдении. При этом каждый узел имеет несколько элементов данных (items) — параметров, по которым ведется мониторинг.
Сбор совокупности данных системой Zabbix проводится наиболее часто следующими способами:
Функционал Zabbix включает в себя общие проверки для наиболее распространенных сервисов — СУБД, SSH, Telnet, VMware, NTP, POP, SMTP, FTP. Если стандартных настроек системы недостаточно, их можно изменить самостоятельно или же пользоваться дополнением через API. Также к стандартным функциям системы относятся: контроль нагрузки на процессор — касается и общих, и отдельных процессов; сбор данных об объеме свободной оперативной и физической памяти; мониторинг активности жесткого диска и мониторинг сетевой активности; пинг для проверки доступности узлов в сети.
У проверок есть заданные шаблоны (Templates), которые упрощают создание новых вычислений. Есть несколько типов шаблонов — стандартизированные шаблоны для сетевых устройств, настройка шаблонов HTTP, настройка шаблонов IPMI, настройка шаблонов ODBC.
Для обработки данных в Zabbix используются триггеры — логические выражения со значениями FALSE, TRUE и UNKNOWN, которые можно создать вручную и протестировать на произвольных значениях перед использованием. У каждого триггера существует уровень серьезности угрозы, который маркируется цветом и передается звуковым оповещением в веб-интерфейсе. Например:
В системе мониторинга триггеры применяются для выявления возможных проблем и предупреждения администратора о степени вероятности их возникновения. Это дает возможность предотвратить пики нагрузки на оборудование или заканчивающееся место на жестком диске.
Действия (Action) — представляет собой заданную реакцию на событие (Event). Действие может устанавливаться автоматически или вручную как для одного из событий, так и для целой группы. Параметры действий:
Установка и настройка Zabbix
Система Zabbix отличается простотой установки и настройки. Ее сервер, прокси и агент написаны на С#, веб-интерфейс — на PHP. При этом установка Zabbix Server и Zabbix Proxy возможна только на Linux- системах, а Zabbix-агент — практически на любых ОС и платформах.
Инсталляционный пакет Zabbix Server состоит из:
Схема установки Zabbix включает этапы:
# 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
# systemctl restart zabbix-server zabbix-agent nginx php7.2-fpm);
Настройка веб-интерфейса Zabbix проводится так. В браузере открывается указанный ранее URL-адрес zabbix-сервера (к примеру, указанный домен). Нужно прописать его у себя в hosts файле или на DNS сервере). При этом важно открыть оба порта, который система Zabbix использует по умолчанию — TCP 10050 (порт пассивного агента, по нему zabbix сервер опрашивает клиентов) и TCP 10051 (порт, на котором zabbix сервер получает данные от клиентов — активный агент).
Какую версию выбрать. Что нового в Zabbix 5.
На сегодняшний день востребованными являются версии Zabbix 4.2, Zabbix 4.4 и Zabbix 5.0. Версия Zabbix 4.2 имеет возможности:
Zabbix 4.4 оснащена:
LTS-релиз Zabbix 5.0, который будет поддерживаться в течение 5 лет, отличается от версий 4.2 и 4.4 следующими характеристиками:
Кроме того, Zabbix 5.0 имеет оптимизированный для широких экранов пользовательский интерфейс, обеспечивает возможность копирования виджетов с панели и экспорта графиков, фильтрацию по тегам, поддержку модулей для расширения интерфейса Zabbix, поддержку пользовательских макросов для IPMI для имени пользователя и пароля.
Все перечисленные факторы делают Zabbix 5.0 оптимальным и предпочтительным решением для организации систем мониторинга.
Сколько стоить развернуть Zabbix
Стоимость работ по развертыванию и настройке систем Zabbix зависит от типа решения (легкий, базовый, расширенный, профессиональный вариант или индивидуальный пакет), а также от сложности инсталляции и требований заказчика (описания архитектуры, списка метрик, наблюдаемых устройств, систем и приложений, необходимости удаленного доступа).
Расценки на данные работы составляют от 82 000 до 737 000 рублей.
Почему стоит выбрать Zabbix, в чем его преимущества
Выбор в пользу Zabbix позволяют сделать его возможности:
По сравнению с другими системами мониторинга, Zabbix позволяет осуществлять конфигурирование системы посредством API, а также через интерфейс, обеспечивает возможность хранения настроек в БД, что позволяет применять все вносимые в конфигурацию изменения «на лету», имеет качественные средства визуализации и выполняет хранение истории, благодаря чему существенно упрощается ряд задач, связанных с мониторингом. Кроме прочего, Zabbix обладает мощной поддержкой параметров пользователя, таких как оповещения, пороги, реакции, а также поддержкой мониторинга логов и JMX в своей базовой комплектации.
Руководство по программному обеспечению Zabbix https://www.zabbix.com/documentation/current/ru/manual
Статьи по теме
Самый простой способ установить Zabbix – выбрать готовый образ.
Развернуть образ можно через VirtualBox. В верхнем меню нужно выбрать кнопку «Импортировать», затем указать нужный образ и нажать «Продолжить».
Параметры уже настроены по умолчанию, поэтому достаточно нажать кнопку «Импорт», а после завершения процесса «Запустить».
Затем вводим учётные данные root / zabbix в консоли VirtualBox и вбиваем команду:
# ip a
Данные о функционировании устройств направляется на Zabbix-сервер. Здесь они обрабатываются, после чего перенаправляются в базы данных.
Для каждого параметра задаётся периодичность сбора информации. Например, программа будет проверять температуру устройства, логи или другие показатели раз в 3 часа.
Чтобы видеть отклонения от нормы, в системе настраивают триггеры. Так называют условия, отображающие корректность работы устройства или системы. Например, процессор должен запускаться максимум за 8 секунд. Если время увеличивается хотя бы на секунду, это значит, что условия не соблюдаются. Триггер срабатывает, пользователь получает уведомление о сбое.
Оповещения возможно приостановить, при этом их всё равно можно будет посмотреть. Кроме того, допустима их отправка после завершения обслуживания, которая задаётся для узлов или группы.
Активировать мониторинг серверов zabbix можно с помощью веб-сценариев. Они формируются в формате шаблонов и применяются к различным узлам или группам. Существует стандартный комплект метрик и триггеров, которые упрощают использование программы.
Интерфейс программы и триггеры
Последняя версия zabbix сервера имеет интуитивно понятный интерфейс. В нём отображены несколько элементов управления, демонстрирующие состояние узлов сети и триггеров.
В консоли есть информация о работоспособности системы, настройках параметров. Для удобства пользователей предусмотрены группировка данных и гистограммы.
В случае отсутствия действий со стороны пользователя в течение 30 минут система автоматически отсоединяется в целях информационной безопасности.
Чтобы отразить разный уровень угрозы, используются разные цвета и звуковые оповещения. Серым цветом отображены угрозы без классификации. Голубой – это стандартное информирование. Жёлтым выделяется предупреждение. Оранжевым подсвечивается средняя угроза. Более высокая угроза выделяется светло-красным. Красный цвет означает серьёзную проблему, требующей срочной реакции.
Функции триггеров определяют особенности показателей, такие как периодичность проверок, разница между значениями и т.д.
Реакцией на предупреждение об опасности или другое событие является действие (Action). Его можно выполнять вручную или задать для автоматического исполнения.
Также для событий возможно прописать операции или группу операций. Например, Remote command — это команда для удаленного управления.
Требования к серверу
Основополагающие системные требования Zabbix – это память и операционная система. Программа совместима с большинством платформ. Для администрирования большого количества ресурсов требуется больше памяти и места на жёстком диске.
Фактические параметры зависят от количества активных элементов данных и частоты обновления этих элементов. Если подключенных устройств менее 100, достаточно недорогого VPS. Для мониторинга до 500 устройств предпочтительнее выбрать CPU 2 ядра ОЗУ 2 ГБ.
Установка Zabbix на Windows
Сначала создаём в панели управления Selectel сервер с ОС Windows. Для этого в разделе «Серверы» жмём на кнопку «Создать сервер».
В конфигурационный файл в папке conf нужно внести изменения.
Агент устанавливаем в виде сервиса и запускаем его. Для этого выполним zabbix_agentd с реквизитами:
Теперь агента нужно добавить в разделе Configuration, подраздел Hosts. В верхнем правом углу жмём кнопку «Create Host».
Вводим данные сервера и открываем вкладку Templates. Выбираем подходящий шаблон и сохраняем изменения.
Метрики будут доступны по пути Monitoring — Latest Data.
Архитектура и возможности Zabbix
Система разделена на 5 компонентов, что позволяет одновременно отслеживать работу большого количества устройств, исключив перегрузки.
Основной сервер – собирает и обрабатывает информацию. Через него происходит дистанционное управлением сетевыми сервисами. В случае обнаружения проблем с оборудованием основной сервер направляет оповещения администратору.
В базах данных хранится собранная информация. Срок хранения назначает пользователь в соответствии со своими целями. Система совместима с несколькими наиболее востребованными базами, такими как , PostgreSQL, SQL Server, Oracle и другими.
Можно сказать про zabbix agent, что это программа, осуществляющая мониторинг и формирующая статистику работы локальных ресурсов. Она умеет самостоятельно получать данные автоматически или только по запросу от сервера. Этот элемент очень важен, однако его можно заменить другими инструментами, поэтому его использование носит лишь рекомендательный характер.
Прокси управляет агентами и выполняет предобработку данных, тем самым минимизируя нагрузку на Zabbix-сервер. Этот компонент тоже не обязательный и актуален только для организаций, которым необходимо контролировать одновременно большой комплекс устройств.
Веб-интерфейс нужен для понятного отображения информации.
Как пользоваться Zabbix
Каждое устройство, предназначенное для проверки – это «узлы сети». Комплекс метрик, определяющих сбор данных с этих узлов, называют «элементами данных». В автоматическом режиме они настраиваются через подключение шаблона или вручную.
Заббикс мониторинг предполагает 17 способов сбора информации. Рассмотрим самые популярные из них.
Заключение
Zabbix – удобный инструмент для мониторинга большого количества ресурсов, а также контроля инфраструктуры и приложений. Он помогает предотвратить внушительное количество потенциальных проблем и сбоя, обеспечивая беспрерывную работу, поэтому актуален для компаний любого масштаба.
Установку и базовую настройку системы провести довольно легко. Но для дополнительных настроек и интеграции требуются профильные знания. Подробные инструкции по настройки с перечнем необходимых команд можно найти на сайте разработчика.