DOC / 1520 SysAdminHub.ru

Основы Zabbix: хосты, элементы данных и триггеры

Основы Zabbix: хосты, элементы данных и триггеры

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

Хост
  ↓
Шаблон
  ↓
Элемент данных (Item)
  ↓
Полученное значение
  ↓
Триггер (Trigger)
  ↓
Событие / проблема
  ↓
Действие / уведомление

На практике возможностей значительно больше: Low-Level Discovery, preprocessing, dependent items, макросы, действия, эскалации и другие механизмы. Но начинать знакомство с Zabbix лучше именно с хостов, шаблонов, элементов данных и триггеров.

Хосты в Zabbix

Хост (Host) — это объект, который мы хотим мониторить. Хостом может быть физический или виртуальный сервер, маршрутизатор, коммутатор, гипервизор, приложение, база данных, сайт или другой объект инфраструктуры.

Например, если необходимо начать мониторинг Windows Server, сначала создаётся хост, представляющий этот сервер.

К хосту затем привязываются:

  • интерфейсы;
  • шаблоны;
  • элементы данных;
  • триггеры;
  • макросы;
  • правила обнаружения и другие объекты мониторинга.

Большую часть этих настроек необязательно создавать непосредственно на каждом хосте — их можно наследовать из шаблонов.

Создание и настройка хоста в Zabbix

Группы хостов

Хосты объединяются в группы. Это упрощает управление инфраструктурой, фильтрацию объектов и настройку прав доступа.

Например, можно создать группы:

Windows Servers
Linux Servers
Network Devices
VMware
Databases

Один хост может входить сразу в несколько групп.

Интерфейсы хоста

Интерфейс определяет, как Zabbix может обращаться к контролируемому объекту для соответствующего типа проверки.

Для хоста доступны основные типы интерфейсов:

  • Agent — для Zabbix Agent;
  • SNMP — для SNMP-мониторинга;
  • JMX — для Java-приложений;
  • IPMI — для аппаратного мониторинга через IPMI.

Типы интерфейсов хоста в Zabbix Agent SNMP JMX IPMI

При этом далеко не каждый способ получения данных требует отдельного интерфейса хоста.

Например, Zabbix может получать данные через HTTP agent, выполнять внешние проверки, принимать данные от sender или использовать другие механизмы.

Шаблоны Zabbix

Шаблон (Template) — это готовый набор настроек мониторинга, который можно подключить сразу к нескольким хостам.

Шаблон может содержать:

  • элементы данных;
  • триггеры;
  • графики;
  • правила Low-Level Discovery;
  • прототипы элементов и триггеров;
  • макросы;
  • другие настройки мониторинга.

Например, вместо ручного создания десятков элементов для каждого Windows Server можно подключить к серверам один подходящий шаблон.

Шаблоны мониторинга в Zabbix

Главное преимущество шаблонов — стандартизация. Если одинаковый шаблон используется на десятках серверов, изменения можно централизованно внести в одном месте.

Официальные и собственные шаблоны

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

Кроме того, можно создавать собственные шаблоны под конкретную инфраструктуру.

При этом поведение официального шаблона часто можно адаптировать предусмотренными в нём пользовательскими макросами, фильтрами LLD и другими настройками без изменения самого шаблона.

Элементы данных (Items)

Элемент данных (Item) определяет, что именно Zabbix должен получить или вычислить.

Например:

  • загрузку процессора;
  • объём доступной оперативной памяти;
  • свободное место на диске;
  • сетевой трафик;
  • состояние службы;
  • ответ HTTP-сервиса;
  • значение SNMP OID;
  • результат пользовательской проверки.

Именно элементы данных формируют историю метрик, с которой затем работают графики, триггеры и другие механизмы Zabbix.

Тип элемента данных

Тип Item определяет способ получения значения.

Среди часто используемых вариантов:

  • Zabbix agent;
  • Zabbix agent (active);
  • SNMP agent;
  • SNMP trap;
  • Simple check;
  • HTTP agent;
  • IPMI agent;
  • JMX agent;
  • SSH agent;
  • Dependent item;
  • Calculated;
  • Zabbix trapper.

Создание элемента данных Item в Zabbix

Ключ элемента данных

Важным параметром Item является Key. Он идентифицирует элемент данных внутри хоста.

Например:

vm.memory.size[available]

Этот ключ используется для получения объёма доступной оперативной памяти.

Другой пример:

vm.memory.size[pavailable]

Он возвращает доступную память в процентах.

В общем виде ключ может выглядеть так:

ключ[параметр1,параметр2]

Ключ элемента должен быть уникальным в пределах конкретного хоста.

Для SNMP-проверки отдельно указывается SNMP OID, определяющий SNMP-объект, значение которого необходимо получить.

Интервал получения данных

Для элемента также определяется частота выполнения проверки.

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

История и тренды

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

History содержит непосредственно собранные значения, а Trends используются для долгосрочного хранения агрегированных данных числовых элементов.

Срок хранения напрямую влияет на объём базы данных, поэтому хранить подробную историю всех метрик несколько лет обычно не требуется.

Триггеры Zabbix

Само по себе получение метрики ещё не означает мониторинг проблемы. Для автоматического анализа значений используются триггеры (Triggers).

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

Например:

Свободное место на диске < 10%

или:

Сервис недоступен несколько проверок подряд

Создание триггера в Zabbix

Почему недостаточно простого порога

Одна из типичных ошибок начинающего администратора — создавать триггер на каждое мгновенное превышение порога.

Например:

CPU > 90%

Кратковременный скачок CPU до 100% может быть совершенно нормальным. Поэтому чаще полезнее анализировать значение за определённый период.

Условная логика может выглядеть так:

Средняя загрузка CPU за 5 минут > 90%

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

Expression

Условие срабатывания задаётся выражением Expression.

Для анализа значений используются функции Zabbix, например:

  • last() — последнее значение;
  • avg() — среднее значение;
  • min() — минимальное значение;
  • max() — максимальное значение.

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

Настройка Expression триггера в Zabbix

Имя триггера и Event name

Название триггера должно позволять быстро понять характер проблемы.

Например, вместо:

Error

гораздо полезнее:

Недостаточно свободного места на диске C:

Поле Event name позволяет отдельно определить название события. В нём можно использовать дополнительный контекст и макросы, чтобы сообщение о проблеме было информативнее.

Operational data

Operational data позволяет вывести рядом с проблемой актуальные технические значения.

Например, вместо одного сообщения:

Высокая загрузка CPU

администратор может сразу видеть дополнительную информацию о текущем значении метрики.

Это сокращает количество переходов между разделами Zabbix при первичной диагностике.

Что происходит после срабатывания триггера

Важно различать несколько связанных понятий.

Элемент данных получает значение, после чего Zabbix вычисляет выражение триггера. При изменении его состояния создаётся событие (Event), а проблемное состояние отображается в системе как Problem.

Дальше уже может сработать Action, которая определяет необходимые действия.

Например:

Item получил значение
        ↓
Trigger обнаружил проблему
        ↓
Создано событие
        ↓
Появилась Problem
        ↓
Action
        ↓
Telegram / Email / ITSM / скрипт

Как связаны хост, шаблон, Item и Trigger

Разберём на простом примере мониторинга Windows Server.

Создаём хост:

SRV-01

Подключаем к нему шаблон мониторинга Windows.

Из шаблона сервер получает элементы данных, один из которых собирает информацию о свободном месте на диске:

SRV-01
  ↓
Windows Template
  ↓
Item: свободное место C:
  ↓
Получено значение: 8%
  ↓
Trigger: свободно меньше допустимого порога
  ↓
Problem
  ↓
Уведомление администратору

При этом порог необязательно жёстко прописывать непосредственно в выражении. В нормальном шаблоне для таких значений удобно использовать пользовательские макросы.

Например:

{$VFS.FS.PFREE.MIN.WARN}

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

Что лучше создавать в шаблоне, а что на хосте

Если элемент данных или триггер нужен только одному уникальному серверу, его можно создать непосредственно на хосте.

Но если одна и та же проверка потребуется нескольким системам, лучше вынести её в шаблон.

Например:

Проверка только SRV-01
→ можно создать на хосте

Проверка всех Windows Server
→ лучше добавить в шаблон

Так конфигурацию проще сопровождать и масштабировать.

Типичные ошибки начинающих

При первых настройках Zabbix часто встречаются одни и те же проблемы.

Создание всего непосредственно на хостах

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

Решение: использовать шаблоны.

Слишком частый сбор данных

Интервал в несколько секунд не делает мониторинг автоматически лучше.

Решение: выбирать частоту получения данных исходя из реальной скорости реакции, необходимой для конкретной метрики.

Триггер на каждый кратковременный скачок

Это приводит к большому количеству ложных или малополезных событий.

Решение: анализировать продолжительность состояния, средние значения и несколько последовательных проверок там, где это оправдано.

Жёстко заданные пороги

Один порог не всегда подходит для всех серверов.

Решение: использовать пользовательские макросы.

Мониторинг всего подряд

Большое количество собираемых метрик само по себе не делает мониторинг качественным.

Решение: сначала определить, что действительно характеризует работоспособность системы и требует реакции администратора.

Часто задаваемые вопросы

Что такое хост в Zabbix?

Хост — это объект мониторинга. Им может быть сервер, маршрутизатор, виртуальная машина, приложение или другой компонент инфраструктуры, данные которого необходимо собирать и анализировать.

Чем хост отличается от шаблона?

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

Что такое Item в Zabbix?

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

Что такое Trigger в Zabbix?

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

Триггер сам отправляет уведомление?

Нет. Триггер определяет проблемное состояние и участвует в создании события. Автоматические уведомления и другие реакции на события настраиваются с помощью Actions и их операций.

Зачем нужны пользовательские макросы?

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

Нужно ли устанавливать Zabbix Agent на каждый хост?

Нет. Способ получения данных зависит от объекта мониторинга. Zabbix поддерживает Agent, SNMP, JMX, IPMI, HTTP, внешние проверки и другие механизмы.

Заключение

Хосты, шаблоны, элементы данных и триггеры — фундамент Zabbix. Хост представляет контролируемый объект, шаблон позволяет централизованно назначить ему настройки, Item получает метрику, а Trigger анализирует её и определяет проблемное состояние.

После понимания этой логики становится гораздо проще разбираться с более продвинутыми возможностями Zabbix: Low-Level Discovery, dependent items, preprocessing, пользовательскими макросами, Actions, Proxy и автоматизацией.

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

Если вы хотите глубже разобраться в Zabbix на практических примерах, обратите внимание на курс Zabbix 6. Мониторинг IT инфраструктуры предприятия. В курсе последовательно разбираются Zabbix Server, Agent, Proxy, шаблоны, триггеры, уведомления и другие механизмы мониторинга.

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

ORIGINAL / ATTRIBUTION

Источник материала

Материал взят с https://sysadminhub.ru/. Оригинальная статья и авторство указаны по ссылке ниже.

Оригинал статьи на SysAdminHub.ru ↗

https://sysadminhub.ru/other/zabbix/getting-started-with-zabbix-hosts-items-and-triggers

Материал проверен 10.10.2026. При изменении программного обеспечения сверяйтесь с актуальной документацией.
← Вернуться в базу знаний