Table of Contents

Руководство по Zabbix 1.8

1. Введение

1 Обзор системы Zabbix

1.1 Что такое Zabbix?

Zabbix создан Алексеем Владышевым и в настоящее время активно разрабатывается и поддерживается Zabbix SIA.

Zabbix это открытое решение распределенного мониторинга корпоративного класса.

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

Zabbix поддерживает опрос данных (пуллер) и получение данных (траппер). Все отчеты и статистика Zabbix, также как и параметры настроек, доступны через веб-интерфейс. Веб-интерфейс обеспечивает чтобы состояние вашей сети и жизнедеятельность ваших серверов можно было оценить из любого места. Хорошо настроенный Zabbix может играть важную роль в мониторинге ИТ инфраструктуры. Это так же важно как для малых организаций с несколькими серверами, так и для крупных компаний с множеством серверов.

Термины 'pooler' и 'trapper' практически не переводимы на русский язык, поэтому в дальнейшем будут использоваться понятия пуллер и траппер соответственно.
В Zabbix эти термины обозначают:
Pooler - форк процессов ”zabbix_server” и ”zabbix_proxy”, который собирает с Zabbix агентов данные по элементам данных или например с SNMP устройств и др.
Trapper - форк процессов ”zabbix_server” и ”zabbix_proxy”, который слушает порт (обычно 10051) и принимает данные от Zabbix агентов по активным проверкам или данные от zabbix_sender.

Zabbix бесплатный. Zabbix написан и распространяется под лицензией GPL General Public License версии 2. Это означает, что его исходный код свободно распространяется и доступен широкой публике.

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

1.2 Что предлагает Zabbix?

Zabbix предлагает:

  • автоматическое обнаружение серверов и других устройств в сети
  • распределенный мониторинг с централизованным администрированием через ВЕБ
  • поддержка обеих механизмов пуллеров и трапперов
  • серверное программное обеспечение для Linux, Solaris, HP-UX, AIX, FreeBSD, OpenBSD, OS X
  • родные агенты с высокой производительностью (клиентское программное обеспечение для Linux, Solaris, HP-UX, AIX, FreeBSD, OpenBSD, OS X, Tru64/OSF1, Windows NT4.0, Windows 2000, Windows 2003, Windows XP, Windows Vista)
  • мониторинг без агентов
  • безопасная аутентификация пользователей
  • гибкая система прав доступа пользователей
  • Web-интерфейс
  • гибкая система уведомлений по e-mail о предопределенных событиях
  • высокоуровневый (класса “Бизнес”) вид контроля ресурсов
  • журнал аудита

1.3 Почему Zabbix?

  • Открытое программное обеспечение
  • агенты с высокой эффективностью для UNIX и WIN32 платформ
  • легко изучаемый
  • увеличивает рентабельность (простои очень дорого обходятся)
  • низкая стоимость обслуживания
  • очень простое конфигурирование
  • централизованная система мониторинга. Вся информация (конфигурация и данные о производительности) хранятся в реляционной базе данных
  • высокоуровневое дерево предоставляемых услуг
  • очень простая установка
  • поддержка SNMP (v1,v2,v3). Оба режима пуллера и траппера.
  • возможность визуализации
  • встроенный механизм очистки устаревших дынных

1.4 Пользователи Zabbix

Много организаций разных размеров по всему миру полагаются на Zabbix как на главную систему мониторинга.

 

2 Цели и принципы

2.1 Основные цели в развитии Zabbix

Есть несколько целей, которых Zabbix пытается достигнуть:

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

2.2 Основные принципы в развитии Zabbix

  • быть удобным для пользователей
  • придерживаться простоты
  • использовать мало вычислительных ресурсов насколько это возможно
  • обеспечивать быструю реакцию
  • документировать каждый аспект программного обеспечения
 

4. Что нового в Zabbix 1.8

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

1 Заметные улучшения

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

2 Новые функции и улучшения для интерфейса

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

Поскольку Веб-интерфейс - самая заметная для пользователя часть Zabbix 1.8, мы начнём обзор с рассмотрения новых (и улучшенных старых) функций именно веб-интерфейса.

2.1 Гистограммные отчёты

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

Новая категория отчётности и гистограммные отчёты, позволяет взглянуть на данные с различных точек зрения. Желаете взглянуть на еженедельные значения температуры в серверной комнате за последние два месяца? Нужно сравнить загрузку веб-сервера по каждому первому месяцу каждого квартала этого года? Всё это (и даже больше!) возможно с использованием новой функции гистограммных отчётов.

2.2 Полная поддержка Юникода

Хотя предыдущие версии Zabbix и обладали многоязыковым интерфейсом (предоставляя желаемый пользователем язык интерфейса), всё же мультиязычность не была по-настоящему глобальной и неотъемлемой частью Zabbix, поскольку самая популярная кодировка Unicode поддерживалась не в полной мере.

Теперь Zabbix 1.8 полностью поддерживает Unicode/UTF-8, что позволяет использовать реальную мультиязычность или использовать нужную локализацию при установке.

2.3 Улучшенная навигация по периодам времени

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

Эта полоса прокрутки обеспечивает легкое перемещение и изменение периода времени. Кроме того, ссылки слева дают возможность выбрать предустановленные, часто используемые периоды времени и перемещаться вперед/назад в периоде времени. Даты справа в действительности это ссылки на всплывающий календарь и они дают возможность установить конкретное время начала/конца периода времени.

Вы обратили внимание на ссылку динамически/фиксировано в нижнем правом углу? Её можно использовать для фиксации продолжительности периода времени при изменении начала/конца периода времени.

В дополнение к скриншотам вы можете посмотреть видео использования навигации по временным периодам в графиках.

2.4 Улучшенные графики

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

2.4.1 Улучшенная линия времени в графиках

На графиках или гистограммах в Zabbix время как обычно отображается на оси X. И это представление также было улучшено в новой версии.

Сравнение 1.6 и 1.8:

Подписи оси X в 1.6
Подписи оси X в 1.8

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

2.4.2 Поддержка градиентных линий в графиках

Графики в Zabbix поддерживают несколько стилей линий, и 1.8 дополнен еще одним - градиентная линия. Понять, как это работает, легче на наглядном примере:

2.4.3 Использование шрифта DejaVu для графики

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

2.5 Улучшенное редактирование карт

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

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

Редактирование карт в версии Zabbix 1.8 было значительно улучшено путем добавления поддержки метода “drap and drop”, а также путем отображения деталей выбранного элемента карты во всплывающей форме.

Вы можете просмотреть видео редактирования карты.

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

Фоновая карта CC-BY-SA Openstreetmap.

2.6 Изменение раскладки меню конфигурации

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

Раскладка меню конфигурации была переделана в версии 1.8. Вместо отдельных разделов для элементов данных, графиков, триггеров и т.д., разделы объединены в одну группу настроек узлов сети, где очень удобно получить доступ ко всем записям и ко многим другим разделам.

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

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

2.7 Интерфейс визуального редактирования триггера

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

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

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

Это дает возможность ввести данные для теста и проверки полученного выражения триггера.

2.8 Новые и улучшенные фильтры

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

2.8.1 Фильтры элементов данных

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

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

2.8.2 Фильтр в аудите

Ответственность является важной в любой системе с более чем одним пользователем (также как и на многих системах с одним пользователем). Интерфейс Zabbix записывает все осуществленные действия в журнал аудита.

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

2.8.3 Фильтр последних данных

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

Сейчас на этой странице имеется возможность фильтровать по именам элементов данных.

2.8.4 Переделан вид "Состояние триггеров"

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

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

2.8.5 Другие улучшенные фильтры

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

2.9 Улучшенное редактирование комплексных экранов

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

Редактирование комплексных экранов было значительно улучшено в версии 1.8. Это включает:

  • Поддержку Drag and drop. Перетягивание элемента на пустую ячейку переместит элемент в эту ячейку, перетягивание элемента на занятую ячейку объединит эти элементы. Вы можете посмотреть видео об этой функции (сайт также разрешает скачать видео в формате .ogg).
  • Использование специальных иконок по краям экрана, теперь строки и колонки могут быть вставлены и удалены в произвольных местах.

2.10 Глобальный поиск

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

Результаты поиска позволяют осуществлять быстрый переход к найденным объектам и их элементам:

2.11 Мелкие улучшения интерфейса

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

2.11.1 Понятное отображение ошибок

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

2.11.2 Ссылки истории переходов теперь сохраняются

В верхней части интерфейса имеется история недавно посещенных страниц.

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

2.11.3 Добавлена поддержка страниц для отображения списков

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

Zabbix 1.8 поддерживает разбиение длинных списков на несколько страниц. Количество записей на каждой странице настраивается в профиле пользователя.

Настройки количества строк на странице в профиле пользователя
Лимит записей в действиях
2.11.4 Теперь выделенные строки подсвечиваются

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

Маленькое, но долгожданное улучшение в версии 1.8 - выбранные строки теперь подсвечиваются.

2.11.5 Возможность отображения имени сервера

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

Это имя также отображается и в заголовке страницы.

2.11.6 Более гибкое присоединение элементов данных

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

Наследуемые присоединенные элементы данных теперь являются более гибкими в Zabbix 1.8 - например, возможно изменить параметры community SNMP или разрешенные узлы сети для элементов данных типа траппер, в элементах данных наследуемых от шаблонов.

2.11.7 По умолчанию выбран IP адрес

В форме создания узла сети теперь IP адрес выбран по умолчанию.

2.11.8 В интерфейс добавлен режим отладки

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

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

2.11.9 Иконки помощи ведут к онлайн руководству

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

3 API

Начиная с первой версии 1.8, Zabbix предоставляет JSON-RPC API. Эта функция уже позволяет выполнять большинство изменений конфигурации, что дает мощное средство для автоматизированного или сложного управления настройками.

Хотя API само по себе не захватывающее нововведение для обычных пользователей, но оно дает возможность для создания различных утилит. Одна утилита уже создана - утилита командной строки Zabbix или Zabcon.

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

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

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

4 Улучшения для крупных установок

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

4.1 Улучшение производительности

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

4.1.1 Увеличение производительности сервера Zabbix и прокси

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

4.1.1.1 Гораздо эффективный пуллер

Сотни пуллеров могут быть выполнятся для большего параллелизма и производительности. Пуллеры не обращаются напрямую к базе данных и используют очень мало ресурсов ЦПУ и памяти.

4.1.1.2 Добавлен модуль кэширования данных конфигурации

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

Введена специальная внутренняя проверка, zabbix[wcache,*] для мониторинга состояния этого кэша.

4.1.2 Рисунки веб-интерфейса пережаты с использованием pngcrush

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

4.1.3 Элементы данных с динамическим индексом SNMP используют одно подключение

Zabbix поддерживает мониторинг метрик SNMP, которые имеют динамические идентификаторы.

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

4.2 Улучшение автоматического управления узлами сети

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

4.2.1 Улучшения сетевого обнаружения

Сетевое обнаружение, доступное в предыдущих версиях претерпело множество улучшений.

4.2.1.1 Поддержка диапазонов портов

Для сервисов, где это уместно, добавлена поддержка диапазонов портов.

4.2.1.2 Новые операции для действия

На основании событий обнаружения добавлено две новые операции, тем самым увеличив доступные операции для сетевого обнаружения до 10:

  • Включить узел сети
  • Отключить узел сети

4.2.1.3 Поддержка масок для диапазонов IP

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

4.2.1.4 Поддержка мультисетевых устройств

Если узел сети предоставляет некоторый сервис по нескольким IP адресам, то он будет добавлен как несколько узлов сети в версии Zabbix до 1.8. Начиная с версии 1.8, можно использовать различные критерии уникальности для сервисов, например system.uname у Zabbix агента или любой другой SNMP OID, который может вернуть идентификатор узла сети.

4.2.1.5 Поддержка SNMPv3

Сетевое обнаружение в Zabbix 1.8 поддерживает все соответствующие функции SNMPv3.

4.2.2 Авто регистрация активных агентов

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

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

4.3 Поддержка макросов на глобальном, шаблонном и узловом уровнях

Добавлена поддержка пользовательских макросов (или переменных). Они могут быть определены глобально для системы Zabbix, к шаблону и к узлу сети. Например, определив следующий макрос на уровне узла сети вы можете задавать пользовательские пороги для узла сети, даже если все узлы сети связаны с одним шаблоном:

В этом случае, выражение триггера из шаблона будет:

{ca_001:system.cpu.load[,avg1].min({$CPULOAD_PERIOD})}>{$MAX_CPULOAD}

5 Разное

5.1 Обслуживание узлов сети

Была добавлена функция обслуживания узлов сети и групп узлов сети в Zabbix.

Узлы сети, которые находятся в обслуживании отображаются вот таким образом в Мониторинг → Триггеры.

Если проблема произошла в течении периода обслуживания и не была устранена, тогда оповещение будет отправлено после того как период обслуживания завершится.

Если элемент данных с типом Журнал (лог) был добавлен к узлу сети, находящемся в периоде обслуживания, то только новые записи из файла журнала будут собраны после окончания периода обслуживания.

5.2 Улучшен журнал аудита

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

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

Точные изменения внесенные в элемент данных
Точные изменения внесенные в триггер

5.3 Новые макросы

Zabbix имеет очень полезные переменные - называемые макросами - для использования в именах элементов данных, уведомлениях и в других местах. В Zabbix 1.8 увеличено количество доступных макросов, а также увеличено количество мест где их можно использовать.

5.3.1 В уведомлениях

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

  • {NODE.*[1..9]}
  • {ITEM.LOG.*[1..9]}
  • {ITEM.VALUE} and {ITEM.VALUE[1..9]}
  • {ITEM.LASTVALUE[1..9]}
  • {HOST.CONN[1..9]} {HOST.DNS[1..9]} {IPADDRESS[1..9]}
  • {TRIGGER.KEY[1..9]}
  • {HOSTNAME[1..9]}
  • {ITEM.NAME[1..9]}
  • {PROFILE.*[1..9]}
  • {EVENT.ACK.STATUS}
  • {EVENT.ACK.HISTORY}
  • {TRIGGER.EVENTS.UNACK}
5.3.2 В подписях на картах

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

  • {TRIGGERS.UNACK}

5.4 Расширенный редактор регулярных выражений

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

5.5 Поддержка IPv6 для мониторинга по SNMP

В дополнение к улучшению сетевого обнаружения, была реализована поддержка IPv6 для мониторинга по SNMP.

5.6 Изменения в поддержке версий PHP

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

5.6.1 Добавлена поддержка PHP 5.3

2009.06.30 был выпущен PHP 5.3.0. Потребовалось некоторое время для поддержки требований веб-интерфейса Zabbix.

5.6.2 Прекращена поддержка PHP 4

Последний выпуск исправлений ошибок 2008.01.03 и последняя версия с исправлениями безопасности 2008.08.07, в PHP4 больше не вносятся исправления ошибок.

Zabbix 1.8 требует PHP 5.0 или более позднюю версию.

6 Незначительные улучшения

Мы называем эти улучшения незначительными, но для кого-то одного они могут быть самыми значительными изменениями в Zabbix 1.8.

6.1 Поддержка простой аутентификации в веб-мониторинге

Веб-мониторинг теперь поддерживает простую аутентификацию через HTTP. Эту возможность можно настроить для каждого сценария.

6.2 Новые и улучшенные метрики наблюдения

Хотя Zabbix может быть расширен, но встроенные проверки требуют меньше ресурсов и проще в использовании. В Zabbix 1.8 добавлено несколько новых проверок и улучшено старые.

6.2.1 Новые элементы данных

Появилось несколько новых элементов данных.

  • icmppingloss
  • net.tcp.dns.query
6.2.1.1 Поддержка переключений ЦПУ в Linux

Ключ system.cpu.switches может быть использован для узлов сети на Linux.

6.2.1.2 Добавлен ключ для служб Windows

Добавлен ключ для служб Windows, который может возвращать список служб в указанном состоянии.

6.2.2 Элементы данных ICMP имеют новые параметры

Элементы данных ICMP в Zabbix теперь более гибкие. Элемент данных icmpping теперь имеет следующие параметры:

  • цель - IP хоста или DNS имя;
  • количество - количество пакетов;
  • интервал - время между успешными пакетами в миллисекундах;
  • размер - размер пакета в байтах;
  • время ожидания - время ожидания в миллисекундах.

Теперь можно использовать ключ так:

icmpping[10.10.10.10,5,300,128,100]

Это позволяет отправить 5 пакетов по 128 байт хосту с IP 10.10.10.10 и с интервалом 300 мс между пакетами, и с использованием времени ожидания 100 мс.

Элемент данных icmppingsec приобрел все описанные выше параметры, и один дополнительный:

  • режим - один из min, max, avg.

По умолчанию режим установлен в avg.

6.2.3 Параметр 'maxlines' для элементов данных типа лог

Для ключей log и eventlog теперь доступен новый параметр - maxlines. Он указывает максимальное количество строк в секунду, которые агент может отправить Zabbix серверу или прокси.

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

6.2.4 Новые фильтры Журнала событий Windows

Записи в Журнале событий Windows теперь возможно отфильтровать по типу, источнику и ID события на стороне агента.

6.2.5 Проверки по SSH и telnet

Теперь SSH и telnet можно использовать для прямого безагентного мониторинга. SSH поддерживает оба метода аутентификации через пароль и ключ.

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

В настоящее время SSH и telnet не могут быть использованы в действиях, эта функция будет доступна в следующих версиях.

6.2.6 Поддержка устройств LVM swap

Теперь поддерживаются устройства LVM, такие как swap устройства в Linux.

6.2.7 Изменен номер первого ЦПУ для Linux

Номер первого ЦПУ в Linux теперь обозначается как 0, что является согласованным с другими операционным системами.

6.2.8 Поддержка знака положительного числа для десятичных значений

Сейчас если значению входящего десятичного числа (с плавающей точкой) предшествует знак +, то он поддерживается и распознается как положительное число.

6.3 Новые типы данных

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

  • Восьмеричный
  • Шестнадцатеричный

6.4 Клиентские утилиты перемещены в директорию bin

Клиентские утилиты Zabbix zabbix_get и zabbix_sender были перемещены из sbin в bin.

6.5 Улучшены примеры файлов конфигурации

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

6.6 Добавлены страницы помощи

Добавлены страницы помощи (manpages) для всех процессов Zabbix.

6.7 Средства передачи уведомлений могут быть выбраны в операциях действий

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

6.8 Поддержка оттиска времени для zabbix_sender

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

6.9 Ручное разблокирование пользователей

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

Нажмите на ссылку Заблокирован, чтобы разблокировать этого пользователя.

6.10 Естественная поддержка Oracle

Предыдущая версия Zabbix была зависима от библиотеки третьей стороны, которая называется sqlora8. Эта библиотека более не разрабатывается. Поддержка Oracle в настоящее время реализована с использованием родного Oracle Call Interface, который значительно улучшает производительность и стабильность системы Zabbix при использовании Oracle в качестве базы данных.

6.11 Отображение состояние узла сети через прокси

Если узел сети контролируется через прокси, то состояние узла сети будет правильно отображаться и обновляться в веб-интерфейсе Zabbix.

6.12 Мониторинг лог-файла с ротацией

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

6.13 Онлайн документация

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

6.14 Отображение подробной информации о доступности

Вместо того чтобы просто отображать общее состояние узла сети, в веб-интерфейсе 1.8 отображаются три отдельных состояния методов мониторинга - Zabbix агент, SNMP и IPMI.

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

В теме по умолчанию для обозначения состояния Доступен используется зеленый цвет, а в теме Черная&Синяя для этого использует синий цвет.

Что нового в дальнейших релизах

Смотрите подробную информацию о новых возможностях и улучшениях в других релизах линейки 1.8:

Установка и обновление

Смотрите раздел установки для получения новых инструкций.

Смотрите раздел обновление для обновления Zabbix с более старых версий.

Перед процедурой обновления, прочтите важные замечания.

 

5 Что нового в Zabbix 1.8.1

5.1 Вычисляемые элементы данных

В Zabbix 1.8.1 добавлена поддержка нового типа элементов данных - вычисляемые элементы данных. Этот тип позволяет использовать уже полученные данные других элементов данных, делая на ходу все виды расчетов.

5.2 Новые элементы данных

  • добавлена поддержка system.stat[] для ОС AIX
  • добавлена поддержка net.if.* для ОС Windows;
  • добавлена поддержка net.if.list для ОС Windows;
  • добавлена поддержка kernel.maxproc[] для Linux 2.6;
  • добавлена возможность исключение некоторых сервисов из результата выполнения ключа services[] для Windows.

5.3 Улучшения веб-интерфейса

5.3.1 Развертывание одиночной проблемы в картах сети

Сейчас имеется опция для каждой карты, определяющая отображение одиночных проблем. Если опция отмечена, будет использовано предыдущее поведение - отображается имя триггера, если проблема одна. Если опция отключена, тогда одиночная проблема отображается как “1 проблема”

И воздействие, которое эта опция оказывает на карты:

Развертывание одиночной проблемы включено Развертывание одиночной проблемы отключено
5.3.2 Лучше представлены узлы сети с правами только чтения

Узлы сети, к которым пользователь не имеет прав на запись (но имеет права на чтение) отключены в свойствах групп узлов сети и недоступны для операций пользователю. В предыдущих версиях узлы сети не отображались вовсе.

5.3.3 Виджет состояний узлов сети в dashboard

Добавлен новый виджет на dashboard - состояние узла сети. Он отображает группы узлов сети с количеством узлов сети в каждой группе и количество с хотя бы одной проблемой в каждой группе. Поля окрашены в соответствии с цветом триггера с наивысшей важностью.

5.3.4 Изменения в отчетности состояния Zabbix

Начиная с версии 1.8.1, dashboard widget “Состояние Zabbix” и отчет доступны только пользователям с типом Суперадминистратор Zabbix. Кроме того, этот отчет/widget отображает любые найденные проблемы с установкой или настройкой PHP.

5.3.5 Подсветка элементов данных при редактировании триггера

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

5.3.6 Фильтр неподтвержденных событий

Добавлена новая опция в фильтр для страницы Мониторинг → Триггеры - “Показывать триггеры с неподтвержденными событиями”. Эта опция скрывает триггеры для всех подтвержденных событий.

5.3.7 Обновления переводов

Следующие языки были обновлены:

  • Русский;
  • Японский;
  • Французский.

5.4 Другие изменения

  • Исправлен индекс базы данных, значительно улучшилась синхронизация нод. Смотрите заметки по релизу по инструкции обновления. Исправленный индекс используется по умолчанию и в новых установках.
  • Изменилась версия API на 1.1.
 

6 Что нового в Zabbix 1.8.2

6.1 Изменения в веб-интерфейсе

6.1.1 Фильтрация в Dashboard

Zabbix dashboard теперь может быть отфильтрован. Кнопка настройки, расположенная в верхнем правом углу, рядом с кнопкой полного экрана, это кнопка настройки - .

После нажатия этой кнопки, будет отображена страница настройки фильтра. По умолчанию фильтрация отключена и ни одна из опций не доступна.

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

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

6.1.1.1 Фильтр группы узлов сети

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

Этот фильтр распространяет свое действие на виджеты Состояние системы, Состояние узлов сети, Последние 20 проблем и на Веб мониторинг.

Если фильтр групп узлов сети включен, но группы не выбраны, то никакие данные не будут отображаться в зависящих виджетах в dashboard

6.1.1.2 Фильтр обслуживания

По умолчанию, все данные для всех узлов сети, находящихся в состоянии обслуживания, отображаются в dashboard. Уберите опцию Отображать узлы сети в обслуживании, чтобы скрыть эту информацию.

Этот фильтр распространяет свое действие на виджеты Состояние системы, Состояние узлов сети, Последние 20 проблем и на Веб мониторинг.

6.1.1.3 Фильтр важностей триггеров

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

Этот фильтр распространяет свое действие на виджеты Состояние системы, Состояние узлов сети, Последние 20 проблем. Для виджета Состояние системы, будут скрыты соответствующие столбцы.

6.1.1.4 Индикация фильтра

Нажмите Сохранить и Вы вернетесь в dashboard. Для индикации активного состояния фильтра кнопка настройки подсвечивается - .

Кроме того, в зависимости от состояния фильтра, подсказка на кнопке объясняет состояние фильтра.

Фильтр dashboard отключенФильтр dashboard включен
6.1.2 Изменения в выборе периода времени

Начиная с версии 1.8.2, имеются два изменения:

6.1.2.1 Выбор периода времени перемещен наверх

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

Раскрытая полоса прокрутки периодаСкрытая полоса прокрутки периода
6.1.2.2 Улучшения в выборе периода времени в событиях и в журнале аудита

Вместо очень ограниченного фильтра времени “Начиная с”, обе страницы (события и журнал аудита/действий) теперь имеют стандартную полосу прокрутки периода времени.

Выбор интервала в событияхВыбор интервала в аудите
6.1.3 Экспорт и импорт карт и комплексных экранов
6.1.3.1 Экспорт и импорт карт

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

И на этой же странице вы можете найти кнопку импортирования:

При импортировании, есть возможность выбрать перезаписывать существующие карты и добавлять ли новые:

6.1.3.2 Экспорт и импорт комплексных экранов

Была добавлена поддержка функций экспорта и импорта комплексных экранов. Комплексные экраны теперь можно экспортировать из соответствующей страницы настроек:

И на этой же странице можно найти кнопку импортирования:

При импортировании возможно выбрать опцию перезаписывать или нет существующие карты, а также добавлять новые:

6.1.4 Более настраиваемый вид элемента "Состояние триггеров"

Элемент экрана “Состояние триггеров” теперь разделен на два новых элемента:

  • Состояние триггеров узла сети;
  • Состояние триггеров группы узлов сети.

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

6.1.5 Обновления переводов

Следующие переводы были добавлены:

  • Украинский.

Следующие переводы были обновлены:

  • Бразильский Португальский;
  • Французский;
  • Русский.
6.1.6 Изменились требования к веб-интерфейсу
  • Параметр max_input_time в PHP теперь должен быть не менее 300;
  • Параметр upload_max_filesize в PHP теперь должен быть не менее 2MB;
  • Параметр mbstring.func_overload более не требуется.
6.1.7 Различные изменения в веб-интерфейсе
  • Обслуживание узлов сети теперь отображается в dashboard изменением цвета имени узла сети:

  • Теперь отображается еще один уровень присоединенных шаблонов в дополнение к присоединенным напрямую шаблонам. Для каждого присоединенного напрямую шаблона в скобках отображаются шаблоны которые соединены с ним самим.

  • Веб-интерфейс теперь всегда использует часовой пояс PHP. Более не используется время браузера. Это должно решить проблемы с различием во времени, с рабочим временем в графиках, если браузер имеет отличный от PHP часовой пояс и другие проблемы.
  • Версия API увеличена до 1.2.
  • Добавлена возможность замены уже соединенных шаблонов при массовом обновлении узлов сети.

6.2 Улучшения триггеров

В Zabbix 1.8.2, некоторые функции и выражения триггеров получили новые возможности.

6.2.1 Сдвиги времени в триггерах

Функции триггеров min, max, avg, last и count теперь поддерживают опциональный параметр - time_shift. Этот параметр позволяет посчитать данные для указанного периода времени в прошлом.

Например, avg(3600,86400) вернет среднее значение за час одним днем ранее. Эта функция дает возможность сравнить среднюю загрузку сегодня со средней загрузкой за то же время вчера:

{host:system.cpu.load.avg(3600)}/{host:system.cpu.load.avg(3600,86400)}>2

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

6.2.2 Расширена поддержка суффиксов в выражениях триггеров

Была добавлена поддержка новых суффиксов. Новые суффиксы для чисел:

  • T - тера;

Новые суффиксы времени:

  • s - секунды; если используется, то работает также как сырое значение (raw values);
  • m - минуты;
  • h - часы;
  • d - дни;
  • w - недели.

Эти усовершенствования позволяют записывать выражения, которые легче понять и обслуживать, например следующие выражения:

{host:zabbix[proxy,zabbix_proxy,lastaccess]}>120
{host:system.uptime[].last()}<86400

может быть изменено на:

{host:zabbix[proxy,zabbix_proxy,lastaccess]}>2m
{host:system.uptime.last()}<1d

6.3 Улучшения элементов данных

6.4 Другие изменения

  • В предыдущих версиях, Zabbix сервер мог переподключится к базе данных MySQL, если она была временно недоступна. Начиная с версии 1.8.2, эта функция поддерживается и для PostgreSQL, Oracle и SQLite баз данных.
  • Администраторы Zabbix теперь могут выбрать только те группы - в которых они являются членами и только пользователей из этих групп для осуществления операций. Кроме того, администраторы не имеют доступа к действиям, в которых имеются пользователи или группы пользователей для этой операции с которыми администратор не в одной группе, или не является членом группы, соответственно.
6.4.1 Новые параметры конфигурации
  • Демоны Zabbix сервер и прокси теперь имеют новую опцию - LogSlowQueries. Небольшая полезность при отладке производительности.
  • Демон Zabbix агента имеет новый параметр конфигурации - UnsafeUserParameters. Этот параметр позволяет отменить проверку безопасности и принимать все символы в аргументах пользовательских параметров.
  • Демон Zabbix server также приобрел новый параметр конфигурации - MaxHousekeeperDelete. Ранее, очисткой базы данных от старых данных всегда удалялось 500 записей за один запуск. Это количество теперь может быть изменено. Если установлено в 0, то никакой лимит не применяется.
6.4.2 Оптимизация производительности
  • Синхронизация нод получила более улучшенную производительность.
  • Различные разделы интерфейса используют меньше памяти и работают намного лучше.
6.4.3 Более надежный модуль эскалаций

Начиная с версии 1.8.2 любые старые эскалации удаляются для конкретного триггера при добавлении нового. Этот метод должен предотвратить множественные сообщения о восстановлении (они также используют модуль эскалаций), бесконечные эсклации из-за неправильной настройки и других проблем.

6.4.4 Улучшения zabbix_sender

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

 

6.3 Установка и обновление. Заметки

6.3.1 Установка

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

6.3.2 Совместимость версий

Старые агенты от Zabbix 1.0, Zabbix 1.1.x, Zabbix 1.4.x и Zabbix 1.6.x могут быть использованы совместно с Zabbix 1.8. Не требуется никаких изменений в конфигурации на стороне агента.

Старые версии Zabbix прокси 1.6.x не могут работать совместно с Zabbix 1.8, они должны быть обновлены.

6.3.3 Важные замечания

6.3.3.1 Для версии 1.8

  • Все узлы сети теперь должны принадлежать по крайней мере одной группе.
  • Номер ЦПУ для ключа system.cpu.util в системах Linux теперь начинается с 0.
  • Теперь ключ vfs.fs.size возвращает данные в байтах для всех операционных систем.
  • Теперь ключ vfs.fs.size учитывает зарезервированное дисковое пространство для root пользователя.
  • Комментарии в конце строк файла конфигурации больше не разрешены (возможно только лишь для численных параметров).

6.3.3.2 Для версии 1.8.3

  • Параметр service.ntp для ключей элементов данных net.tcp.service и net.tcp.service.perf переименован в ntp. Старый синтаксис продолжает поддерживаться.
  • При попытке запустить демона, скомпилированного с поддержкой IPv6, на системах без поддержки IPv6 будет выдана ошибка:
Listener failed with error: socket() for [[(null)]:10051] failed with error 97: Address family not supported by protocol.

6.3.3.3 Для версии 1.8.5

  • Был изменен метод вызова внешних команд у демонов Zabbix для того, чтобы можно было завершать работу вышедших из под контроля процессов. Вместо использования ранее стандартного метода popen, Zabbix теперь явно вызывает /bin/sh для выполнения желаемой команды.
  • При попытке запустить Zabbix демона, скомпилированного в системе Linux с ядром 2.6.27 или более поздней версии, на системах с ядром 2.6.26 или более ранней версии будет сообщено об ошибке:
    socket() for [[-]:10050] failed with error 22: Invalid argument

6.3.3.4 Для версии 1.8.6

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

6.3.3.5 Для версии 1.8.8

  • В базе данных Zabbix в некоторых случаях возможно есть узлы сети и прокси с одинаковыми именами. Начиная с версии 1.8.8, Zabbix сервер завершает свою работу, если обнаружит подобную ситуацию.

6.3.3.6 Для версии 1.8.9

Завершение работы при обнаружении дубликатов узлов сети, введенное в версии 1.8.8, было удалено.

6.4 Изменения в требованиях к системе

Дополнительные или повышенные требования к системе:

  • Поддержка PHP 4 прекращена.
  • Максимальный размер памяти для PHP должен быть не менее 128МБ (параметр memory_limit).
  • Максимальный размер PHP POST должен быть не менее 16MB (параметр post_max_size).

Смотрите также изменения в требованиях для версий 1.8.2, 1.8.3 и 1.8.9.

6.4.1 Известные проблемы

Веб-интерфейс Zabbix версии 1.8 не работает с бэкэндом SQLite. Пожалуйста, воспользуйтесь одной одной из других поддерживаемых баз данных.

6.4.1.1 Для версии 1.8

  • Проверка на PHP mbstring может быть неуспешной в PHP < 5.2 в Zabbix 1.8. Чтобы обойти данную проблему, скопируйте файл zabbix.conf.php.example в zabbix.conf.php и измените его параметры вручную, включая параметры доступа к базе данных.
  • Для поддержки IPMI вам необходима свежая версия OpenIPMI - 2.0.14 или более новая.
  • Сортировка в веб-интерфейсе не производится для записей, которые содержат позиционные переменные. Например с именами элементов начинающихся с $1 и других).
  • Экспортирование в XML включает информацию о SNMP и других полях независимо от типа элемента данных.
  • Имена узлов сети с пробелами не работают при отправке данных из файла используя zabbix_sender (исправлено в версии 1.8.2).
  • Загрузка изображений для карт сетей может завершаться ошибкой, если база данных неправильно настроена. Удостоверьтесь, что база данных, таблицы и поля находятся в кодировке UTF-8.
  • Скомпилированные файлы (agent, sender, get) могут не работать на 64-битных системах с версией glibc старее чем 2.5. Общий симптом в таком случае это проблемы с запуском и получение сообщения об ошибке: Floating point exception. Используйте более старые версии, или скомпилируйте с нуля на целевой системе.

6.4.1.2 Для версии 1.8.2

Из-за изменений в веб-интерфейсе, некоторые установки могут некорректно отображать старые данные в веб-интерфейсе. К ним относятся:

  • Появление неправильных триггеров с именем ERROR, обычно в разделе Мониторинг → Триггеры, при отображении всех узлов сети из всех групп узлов сети. Этот триггер можно удалить - нажмите на него, затем нажмите на Удалить в форме редактирования триггера и подтвердите удаление.

Возможно вам прийдется удалить часть URL groupid=&hostid=&, прежде чем удалить сам триггер.

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

6.4.2 Процедура обновления

Следующие шаги должны быть выполнены для успешного обновления с Zabbix 1.6.x до 1.8. Вся процедура обновления может занять несколько часов, в зависимости от размера базы данных Zabbix.

6.4.2.1 Остановите Zabbix сервер

Остановите Zabbix сервер, чтобы быть уверенным, что новые данные не будут записываться в базу данных.

6.4.2.2 Сделайте резервную копию существующей базы данных Zabbix

Это очень важный шаг. Убедитесь, что у вас есть резервная копия базы данных. Копия базы данных поможет если процедура обновления завершится неудачно (закончилось свободное место на диске, потеря питания, любые другие неожиданные проблемы).

6.4.2.3 Сделайте резервную копию файлов настроек, PHP файлов и исполняемых файлов Zabbix

Сделайте резервную копию исполняемых файлов Zabbix, файлов настроек и PHP файлов.

6.4.2.4 Установите новые исполняемые файлы сервера

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

6.4.2.5 Просмотрите параметры настроек сервера

Некоторые параметры в zabbix_server.conf изменились в 1.8, а также добавились новые параметры. Вы можете ознакомиться с ними.

  • Параметр настройки StartDBSyncers был удален из файлов конфигураций Zabbix сервера и Zabbix прокси.

6.4.2.6 Обновление базы данных

Обновление базы данных требуемый шаг при обновлении с одной мажорной версии Zabbix на другую, например с 1.6 до 1.8. Этот шаг не требуется выполнять при минорных обновлениях, таких как с 1.8.x до 1.8.x, если обратное не указано в заметках о выпуске новой версии.

Перед запуском скриптов обновления удалите существующие индексы:

MySQL

alter table dhosts drop index dhosts_1;
alter table dservices drop index dservices_1;
alter table httptest drop index httptest_2;
alter table httptest drop index httptest_3;
alter table history_log drop index history_log_2;
alter table history_text drop index history_text_2;
alter table actions drop index actions_1;
alter table escalations drop index escalations_2;
alter table graphs_items drop index graphs_items_1;
alter table graphs_items drop index graphs_items_2;
alter table services drop index services_1; 

Oracle или PostgreSQL

drop index dhosts_1;
drop index dservices_1;
drop index httptest_2;
drop index httptest_3;
drop index history_log_2;
drop index history_text_2;
drop index actions_1;
drop index escalations_2;
drop index graphs_items_1;
drop index graphs_items_2;
drop index services_1; 

Игнорируйте любые сообщения предупреждений о несуществующих индексах!

Скрипты обновления базы данных размещены в папке upgrades/dbpatches/1.8/<db engine>:

  • MySQL: upgrades/dbpatches/1.8/mysql/patch.sql
  • Oracle: upgrades/dbpatches/1.8/oracle/patch.sql
  • PostgreSQL: upgrades/dbpatches/1.8/postgresql/patch.sql

Обновление базы данных занимает около 10-15 минут, для PostgreSQL эта процедура может занять несколько часов и более из-за преобразования накопленных данных истории. Рекомендуется предварительно протестировать процедуру обновления в непроизводственной среде.

Если вы конвертируете базу данных в UTF-8, то эта процедура может занять много часов

Убедитесь, что у вас достаточно полномочий (создание таблицы, удаление таблицы, создание индексов, удаление индексов). Также убедитесь, что вы имеете достаточно свободного места на диске.

Эти скрипты предназначены только для обновления с Zabbix 1.6.x до 1.8! Для обновления с более ранних версий используйте скрипты из Zabbix 1.6.x.

6.4.2.7 Установите новый Веб-интерфейс Zabbix

6.4.2.8 Запустите новые исполняемые файлы Zabbix

Запустите новые исполняемые файлы. Проверьте файлы журналов чтобы убедиться что исполняемые файлы запустились успешно.

 
 

2. Установка

1 Как получить Zabbix

Проверьте домашнюю страницу Zabbix по адресу http://www.zabbix.com для получения информации о текущей версии и инструкций по загрузке исходных кодов.

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

 

2 Требования

2.1 Аппаратные требования

2.1.1 Требования к памяти

Zabbix требуется и оперативная память, и память на жестком диске. 128 МБ оперативной памяти и 256 МБ свободного места на жестком диске, может быть неплохо для начала. Тем не менее, объем необходимой памяти диска, очевидно, зависит от количества узлов сети и параметров, которые будут контролироваться. Если вы планируете сохранять историю контролируемых параметров длительный срок, вы должны иметь ввиду, что по крайней мере будет нужно иметь несколько гигабайт для хранения данных истории в базе данных. Каждый процесс демона Zabbix требует несколько подключений к базе данных. Объем памяти, необходимой для подключения к базе данных, зависит от настроек базы данных.

Чем больше оперативной памяти у вас имеется, тем быстрее база данных (а следовательно и Zabbix) работает!

2.1.2 Требования к процессору

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

2.1.3 Другое оборудование

Потребуется Последовательный порт передачи данных и GSM модем для использования СМС уведомлений встроенных в Zabbix. Конвертер USB-to-serial так же будет работать.

2.1.4 Примеры конфигураций оборудования

В таблице приводятся несколько вариантов аппаратных конфигураций:

Имя Платформа ЦПУ/Память База данных Количество контролируемых узлов сети
Маленькая Ubuntu LinuxPII 350MHz 256MBMySQL MyISAM20
СредняяUbuntu Linux 64 bitAMD Athlon 3200+ 2GBMySQL InnoDB500
БольшаяUbuntu Linux 64 bitIntel Dual Core 6400 4GBRAID10 MySQL InnoDB или PostgreSQL>1000
Очень большаяRedHat EnterpriseIntel Xeon 2xCPU 8GBFast RAID10 MySQL InnoDB, PostgreSQL или Oracle>10000

Фактически параметры конфигурации зависят от количества активных элементов данных и частоты обновления этих элементов. Настоятельно рекомендуем производить запуск базы данных на отдельном сервере для крупных установок.

2.2 Поддерживаемые платформы

В связи с требованиями безопасности и критически важных контролируемых серверов, только операционная система UNIX является единственной операционной системой, которая может обеспечить необходимую производительность, отказоустойчивость и гибкость. Zabbix работает на всех ведущих версиях ОС.

Zabbix протестирован на следующих платформах:

  • AIX
  • FreeBSD
  • HP-UX
  • Linux
  • Mac OS/X
  • NetBSD
  • OpenBSD
  • SCO Open Server
  • Solaris
  • Windows 2000, 2003, XP, Vista (только Zabbix агент)

Zabbix может работать и на других Unix-подобных операционных системах

2.3 Требования к программному обеспечению

Zabbix построен на современном ВЕБ сервере Apache, ведущих СУБД, и языке сценариев PHP.

Следующее программное обеспечение потребуется для работы Zabbix:

Приложение Версия Комментарии
Apache 1.3.12 или более поздняя
PHP 5.0 или более поздняя
PHP модули:
php-gd
GD 2.0 или более поздняя Модуль PHP GD должен поддерживать формат PNG.
Поддержка PHP TrueType --with-ttf
Поддержка PHP bc-math php-bcmath, --enable-bcmath
Поддержка PHP XML php-xml или php5-dom, если поставляется как отдельный пакет от дистрибьютора
Поддержка сессий PHP php-session, если поставляется как отдельный пакет от дистрибьютора
Поддержка сокетов PHP php-net-socket, --enable-sockets. Требуется для поддержки пользовательских скриптов.
Поддержка PHP multibyte php-mbstring, --enable-mbstring
IBM DB2
ibm_db2
Требуется, если используется IBM DB2 в качестве базы для Zabbix.
MySQL
php-mysql
3.22 или более поздняя Требуется, если используется MySQL в качестве базы для Zabbix.
Oracle
oci8
Требуется, если используется Oracle в качестве базы для Zabbix.
PostgreSQL
php-pgsql
7.0.2 или более поздняя если Zabbix < 1.8.9
7.4 или более поздняя если Zabbix >= 1.8.9
Требуется, если используется PostgresSQL в качестве базы для Zabbix.
Подумайте об использовании PostgreSQL 8.x или более поздней версии для большей производительности.
Предлагаем использовать по крайней мере PostgreSQL версии 8.3, который показывает очень хорошую производительность VACUUM.
SQLite
php-sqlite3
3.3.5 или более поздняя Требуется, если используется SQLite в качестве базы для Zabbix.

Также Zabbix может работать и с предыдущими версиями Apache, MySQL, Oracle, и PostgreSQL.

Для отличных шрифтов от DejaVu, который установлен по умолчанию, нужна функция PHP imagerotate. Если функция не установлена, то эти шрифты могут неправильно отображаться в заголовке Мониторинг → Обзор и в других местах. Эта функция доступна, если только PHP скомпилирован вместе с GD, которого нет для Debian и для некоторых других дистрибутивов

2.3.1 Веб-браузер на стороне клиента

Требуется поддержка HTML и PNG изображений. MS Explorer (5.xx и 6.xx) и Mozilla 1.x работают отлично. Cookies и Java скрипты должны быть включены. Поддерживаются последние версии Mozilla Firefox, Microsoft Internet Explorer, Opera и Konqueror. Также и другие браузеры (Google Chrome, Apple Safari) могут работать с Zabbix.

2.4 Требования к серверу

Требование Описание
OpenIPMI Требуется для поддержки IPMI
libssh2 Требуется для поддержвки SSH. Версия 1.0 или более новая.
fping Требуется для элементов данных ICMP ping.

2.5 Выбор СУБД

Сервер и прокси Zabbix поддерживают пять СУБД:

  • IBM DB2
  • MySQL
  • Oracle
  • PostgreSQL
  • SQLite

IBM DB2 поддерживается начиная с версии Zabbix 1.8.4.

2.6 Размер базы данных

Данные конфигурации Zabbix требуют фиксированное количество дискового пространства и сильно не увеличиваются.

Размер базы данных Zabbix в основном зависит от следующих переменных, которые определяют историю собранных данных:

  • Количество обрабатываемых запросов в секунду

Это среднее количество новых значений, которые Zabbix сервер получает каждую секунду. Например: Если имеется 3000 элементов данных с интервалом проверки 60 секунд, то количество обрабатываемых запросов за секунду рассчитывается 3000/60 = 50. Это означает, что каждую секунду в базу данных Zabbix добавляется 50 новых записей.

  • Настройки очистки истории в базе данных (Housekeeper)

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

Так что, если требуется сохранение истории 30 дней и каждую секунду в базу данных добавляется 50 новых записей, общее количество значений будет равно примерно (30*24*3600)* 50 = 129.600.000 или около 130М значений.

В зависимости от типа базы данных, типа полученных значений (с плавающей точкой, целые числа, строки, лог файлы и т.д.) может потребоваться от 40 байт до сотен байт дискового пространства для хранения значения. Обычно одно значение занимает около 50 байт. В нашем случае это означает, что 130M значений потребуют 130M * 50 байт = 6.5GB дискового пространства.

  • Настройки очистки тенденций в базе данных (Housekeeper)

Zabbix хранит ежечасную статистику значений max/min/avg/count для каждого элемента данных в таблице trends и trends_uint. Эти данные используются для отслеживания тенденций и для графиков при отображении большого периода времени. Период в 1 час не является настраиваемым.

Базе данных Zabbix, в зависимости от типа базы данных, требуется около 128 байт на один элемент. Предположим, что если требуется хранить тенденции в течении 5 лет. Значения 3000 элементов данных потребуют (3000/3600)*(24*3600*365)* 128 = 6.3GB за год, или 31.5GB за 5 лет. Первое значение в формуле 3600 представляет собой период усреднения тенденций в один час.

  • Настройки очистки событий в базе данных (Housekeeper)

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

Это означает, что если требуется хранить события 3 года, то для этого потребуется 3*365*24*3600* 130 = 11GB дискового пространства.

Представленная ниже таблица содержит формулы для расчета требуемого пространства жесткого диска для системы мониторинга Zabbix:

Параметр Формула для расчетам занимаемого места(в байтах)
Конфигурация Zabbix Фиксированный размер. Ориентировочно 10MB или меньше.
История дней*(элементов/частота обновления)*24*3600*байт
элементы : количество элементов данных
дней : количество дней хранения истории
частота обновления : среднее значение периода проверки элементов данных
байт : количество байт, требуемых для одного значения, зависит от типа базы данных, около 50 байт
Тенденции дней*(элементов/3600)*24*3600*байт
элементов : количество элементов данных
дней : количество дней хранения тенденций
байт : количество байт, требуемых для одного значения, зависит от типа базы данных, около 128 байт.
События дней*событий*24*3600*байт
событий : количество событий в секунду. Одно (1) событие в худшем случае.
дней : количество дней хранения событий
байт : количество байт, требуемых для одного значения, зависит от типа базы данных, около 130 байт.

Общее количество требуемого места на жестком диске рассчитывается:
Конфигурация + История + Тенденции + События
После установки Zabbix такое дисковое пространство более не будет использовано сразу. Размер базы данных будет увеличиваться со временем, но потом рост все же остановится - это зависит от настроек очистки базы данных (Housekeeper).

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

2.7 Синхронизация времени

Очень важно иметь точную дату и время системы на сервере с запущенным Zabbix. ntpd один из наиболее популярных демонов синхронизации времени хоста с временем на остальных серверах.

 

3 Компоненты

3.1 Компоненты Zabbix

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

3.2 Zabbix сервер

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

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

3.3 Zabbix прокси

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

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

Zabbix прокси может быть также использован для распределения и снятия нагрузки с одного Zabbix сервера. В этом случае, прокси только собирает данные, что обеспечивает меньшую нагрузку на ЦПУ и на ввод/вывод диска на самом сервере.

3.4 Zabbix агент

Для активного мониторинга локальных ресурсов и приложений (таких как жесткие диски, память, статистика процессора и т.д.) на системах в сети, должны быть запущенны Zabbix агенты. Агент будет собирать информацию о работе системы, на которой он работает, и предоставлять эти данные Zabbix серверу для дальнейшей обработки. В случае возникновения проблем (например, жесткий диск заполнился или аварийно завершился некий процесс), Zabbix сервер может предупреждать администраторов конкретного оборудования, от которого и возникла проблема.

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

3.5 Веб-интерфейс

Веб-интерфейс предоставлен для обеспечения легкого доступа к данным мониторинга и конфигурации системы Zabbix откуда угодно и с любой платформы. Интерфейс является частью Zabbix сервера, и обычно (но не обязательно), запущен на том же физическом сервере что и Zabbix сервер.

При использовании SQLite веб-интерфейс Zabbix должен быть запущен на этом же сервере.

 

4 Установка из исходных кодов

4.1 Требования к программному обеспечению

Сборка Zabbix сервера или агентов из исходных кодов требует дополнительного программного обеспечения (требуемые версии).

Потребуется следующее программное обеспечение для компилирования Zabbix:

Одна из следующих СУБД:

  • Файлы заголовков и библиотек IBM DB2

Требуются файлы заголовков и библиотек из CLI.

  • Файлы заголовков и библиотек MySQL
  • Файлы заголовков и библиотеки Oracle

Требуются файлы заголовков и библиотек из OCI.

  • Файлы заголовков и библиотек PostgreSQL
  • Файлы заголовков и библиотек SQLite

Обычно являются частью пакетов mysql-dev, postgresql-dev, sqlite3-dev.

Файлы заголовков и библиотек NET-SNMP (или UCD-SNMP). Требуется для поддержки SNMP. Опционально.

Файлы заголовков и библиотек Iksemel. Требуется для поддержки отправки сообщений Jabber. Опционально.

Файлы заголовков и библиотек Libcurl. Требуется для модуля Веб мониторинга. Опционально.

Компилятор C. GNU C является лучшим выбором для открытых платформ. Другие (HP, IBM) C компиляторы также могут быть использованы.

GNU Make. GNU make требуется для создания Zabbix Makefiles.

4.2 Структура дистрибутива Zabbix

  • src

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

  • src/zabbix_server

Папка содержит Makefile и исходные коды для zabbix_server.

  • src/zabbix_agent

Папка содержит Makefile и исходные коды для zabbix_agent и zabbix_agentd.

  • src/zabbix_get

Папка содержит Makefile и исходные коды для zabbix_get.

  • src/zabbix_sender

Папка содержит Makefile и исходные коды для zabbix_sender.

  • src/libs

Папка содержит Makefile и исходные коды для общих библиотек процессов Zabbix.

  • include

Папка содержит файлы include Zabbix.

  • misc
    • misc/init.d

Папка содержит скрипты автозапуска для разных платформ.

  • frontends
    • frontends/php

Папка содержит файлы для Веб-интерфейса PHP.

  • create

Папка содержит SQL скрипт для первичного создания базы данных.

  • create/schema

Папка содержит схемы создания базы данных.

  • create/data

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

  • upgrades

Папка содержит процедуры обновления с других версий Zabbix.

4.3 Zabbix сервер

На стороне сервера

Шаг 1

Создайте аккаунт суперпользователя Zabbix.

Сервер будет работать под этим пользователем. Для использования в производственной среде вы должны создать выделенный непривилегированный аккаунт (обычно используется 'zabbix'). Запуск Zabbix из под 'root','bin', или из под любых других аккаунтов со специальными правами может представлять угрозу безопасности. Не делайте этого!

Процесс Zabbix сервера (zabbix_server) защищен от запуска из под аккаунта root.

Шаг 2

Распакуйте исходные коды Zabbix

shell> tar -zxf zabbix-1.8.tar.gz
Шаг 3

Создайте базу данных для Zabbix

С исходными кодами Zabbix предоставляются SQL скрипты, которые можно использовать для создания требуемой схемы в базе данных, а также для заполнениями настройками по умолчанию. Есть отдельные скрипты для IBM DB2, MySQL, Oracle, PostgreSQL и SQLite.

Для IBM DB2:

shell> db2 "create database zabbix using codeset utf-8 territory us pagesize 32768"
shell> cd create/schema
shell> db2batch -d zabbix -f ibm_db2.sql
shell> cd ../data 
shell> db2batch -d zabbix -f data.sql
shell> db2batch -d zabbix -f images_ibm_db2.sql

Для MySQL:

shell> mysql -u<username> -p<password>
mysql> create database zabbix character set utf8;
mysql> quit;
shell> cd create/schema
shell> cat mysql.sql | mysql -u<username> -p<password> zabbix
shell> cd ../data
shell> cat data.sql | mysql -u<username> -p<password> zabbix
shell> cat images_mysql.sql | mysql -u<username> -p<password> zabbix

Для Oracle (мы предполагаем, что пользователь zabbix с паролем password существует и имеет права на создание объектов в базе данных в сервисе ORCL):

shell> cd create

Скопируйте папку data/images куда-нибудь на сервер oracle, например /home/oracle:

shell> scp -r data/images user@host:/home/oracle 

Измените файл data/images_oracle.sql и установите переменную images_dir в ”/home/oracle/images”:

CREATE OR REPLACE DIRECTORY image_dir AS '/home/oracle/images'

Выполните для импорта данных:

shell> sqlplus zabbix/password@host/ORCL

Zabbix требует набор символов UTF8 в базе данных. Если база данных не в UTF8, её возможно сконвертировать запустив: ALTER DATABASE NATIONAL CHARACTER SET UTF8;

Для PostgreSQL:

shell> psql -U <username>
psql> create database zabbix; 
psql> \q 
shell> cd create/schema 
shell> cat postgresql.sql | psql -U <username> zabbix 
shell> cd ../data 
shell> cat data.sql | psql -U <username> zabbix
shell> cat images_pgsql.sql | psql -U <username> zabbix

Для SQLite:

shell> cd create/schema
shell> cat sqlite.sql | sqlite3 /var/lib/sqlite/zabbix.db 
shell> cd ../data 
shell> cat data.sql | sqlite3 /var/lib/sqlite/zabbix.db
shell> cat images_sqlite3.sql | sqlite3 /var/lib/sqlite/zabbix.db
Шаг 4

Сконфигурируйте и скомпилируйте исходные коды для вашей системы

Исходные коды должны быть скомпилированы как для сервера (машина мониторинга), так и для клиентов (машины, которые мониторятся). Для конфигурирования исходных кодов для сервера вы должны указать какая база данных будет использоваться.

shell> ./configure --enable-server --with-ibm-db2 --with-net-snmp --with-jabber --with-libcurl # для IBM DB2 + Jabber + Веб-мониторинг

или

shell> ./configure --enable-server --with-mysql --with-net-snmp --with-jabber --with-libcurl # для MySQL + Jabber + Веб-мониторинг

или

shell> ./configure --enable-server --with-oracle --with-net-snmp --with-jabber --with-libcurl # для Oracle + Jabber + Веб-мониторинг

или

shell> ./configure --enable-server --with-pgsql --with-net-snmp --with-jabber --with-libcurl # для PostgreSQL + Jabber + Веб-мониторинг

или

shell> ./configure --enable-server --with-sqlite3 --with-net-snmp --with-jabber --with-libcurl # для SQLite3 + Jabber + Веб-мониторинг

Используйте флаг --with-ibm-db2 чтобы указать расположение CLI API.
Используйте флаг --with-oracle чтобы указать расположение OCI API.

Флаг --with-ucd-snmp может быть использован вместо флага --with-net-snmp. Если поддержка SNMP не требуется, оба флага --with-net-snmp и --with-ucd-snmp можно пропустить.

Однако, если вы хотите скомпилировать исполняемые файлы клиента вместе с исполняемыми файлами сервера, запустите:

shell> ./configure  --enable-server --enable-agent --with-mysql --with-net-snmp --with-jabber --with-libcurl

Используйте флаг --enable-static для статической линковки библиотек. Если вы планируете распространять скомпилированные исполняемые файлы на другие сервера, вы должны использовать этот флаг чтобы приложения могли работать без требуемых библиотек. Флаг --enable-static не работает под ОС Solaris.

Шаг 5

Соберите и установите все

shell> make install

По умолчанию make install устанавливает все файлы в папки /usr/local/sbin, /usr/local/lib и т.д.. Убедитесь, что у вас хватает полномочий для записи в эти папки.

Вы можете указать другой путь для установки, который отличается от /usr/local, используя флаг --prefix, например --prefix=/home/zabbix. В этом случае исполняемые файлы демонов будут установлены в папку <prefix>/sbin, а утилиты в папку <prefix>/bin. Man pages будут установлены в папку <prefix>/share.

Шаг 6

Настройте /etc/services

Этот шаг не обязательный, однако рекомендуемый. На стороне клиента (машина, которая мониторится), добавьте следующие строки в /etc/services:

zabbix-agent    10050/tcp  Zabbix Agent
zabbix-agent    10050/udp  Zabbix Agent
zabbix-trapper  10051/tcp  Zabbix Trapper
zabbix-trapper  10051/udp  Zabbix Trapper 

Обратите внимание, что номера портов являются официальными портами Zabbix зарегистрированными в IANA.

Шаг 7

Настройте /etc/inetd.conf

Если вы планируете использовать zabbix_agent вместо рекомендуемого zabbix_agentd, вы должны добавить следующие строки:

zabbix_agent stream tcp nowait.3600 zabbix /opt/zabbix/bin/zabbix_agent

Перезапустите inetd

shell> killall -HUP inetd
Шаг 8

Создайте директорию, где будут хранится конфигурационные файлы

mkdir /etc/zabbix
Шаг 9

Настройте /etc/zabbix/zabbix_agentd.conf

Вы должны настроить этот файл для каждого узла сети где установлен zabbix_agentd. Файл должен содержать IP адрес Zabbix сервера. Соединения с другими хостами будут запрещены. Вы можете использовать файл misc/conf/zabbix_agentd.conf в качестве примера.

Шаг 10

Настройте /etc/zabbix/zabbix_server.conf

Для небольших установок (до 10 наблюдаемых узла сети), параметров по умолчанию будут достаточно. Однако, вам нужно будет изменить параметры по умолчанию, для достижения максимальной производительности в Zabbix. Смотрите раздел оптимизация производительности для получения более подробных сведений.

Вы можете использовать misc/conf/zabbix_server.conf в качестве примера.

Шаг 11

Запустите процессы сервера

Запустите zabbix_server на стороне сервера.

shell> cd sbin
shell> ./zabbix_server
Шаг 12

Запустите агентов

Запустите zabbix_agentd на нужных узлах сети.

shell> cd sbin
shell> ./zabbix_agentd

4.4 Прокси Zabbix

Прокси Zabbix - это специальный демон. Он не требуется для запуска процесса сбора информации в обычном случае.

Шаг 1

Создайте аккаунт суперпользователя Zabbix

Прокси будет работать под этим пользователем. Для использования в производственной среде вы должны создать выделенный непривилегированный аккаунт (обычно используется 'zabbix'). Запуск Zabbix из под 'root','bin', или из под любых других аккаунтов со специальными правами может представлять угрозу безопасности. Не делайте этого!

Процесс Zabbix прокси (zabbix_proxy) защищен от запуска из под аккаунта root.

Шаг 2

Распакуйте исходные коды Zabbix

shell> tar -zxf zabbix-1.8.tar.gz
Step 3

Создайте базу данных для Zabbix. Опционально.

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

С исходными кодами Zabbix поставляются SQL скрипты, которые можно использовать для создания требуемой схемы в базе данных. Имеются отдельные скрипты для IBM DB2, MySQL, Oracle, PostgreSQL и SQLite.

Для IBM DB2:

shell> db2 "create database zabbix using codeset utf-8 territory us pagesize 32768"
shell> cd create/schema
shell> db2batch -d zabbix -f ibm_db2.sql

Для MySQL:

shell> mysql -u<username> -p<password>
mysql> create database zabbix character set utf8; 
mysql> quit; 
shell> cd create/schema
shell> cat mysql.sql | mysql -u<username> -p<password> zabbix

Для Oracle (мы предполагаем, что пользователь zabbix с паролем password существует и имеет права на создание объектов в базе данных):

shell> cd create/schema 
shell> cat oracle.sql | sqlplus zabbix/password >out.log

Проверьте файл out.log для поиска возможных ошибок. Zabbix требует набор символов UTF8 в базе данных. Если база данных не в UTF8, её возможно сконвертировать запустив: ALTER DATABASE NATIONAL CHARACTER SET UTF8;

Для PostgreSQL:

shell> psql -U <username>
psql> create database zabbix; 
psql> \q 
shell> cd create/schema 
shell> cat postgresql.sql | psql -U <username> zabbix 

Для SQLite:

shell> cd create/schema
shell> cat sqlite.sql | sqlite3 /var/lib/sqlite/zabbix.db 

База данных будет автоматически создана, если еще не существует.

Шаг 4

Сконфигурируйте и скомпилируйте исходные коды для вашей системы

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

shell> ./configure --enable-proxy --with-ibm-db2 --with-net-snmp # для IBM DB2 + мониторинг по SNMP

или

shell> ./configure --enable-proxy --with-mysql --with-net-snmp # для MySQL + мониторинг по SNMP

или

shell> ./configure --enable-proxy --with-pgsql --with-net-snmp # для PostgreSQL  + мониторинг по SNMP

или

shell> ./configure --enable-proxy --with-oracle --with-net-snmp –with-libcurl # для Oracle + мониторинг по SNMP

или

shell> ./configure --enable-proxy --with-sqlite3 --with-net-snmp # for SQLite3 + SNMP monitoring

Используйте флаг --with-ibm-db2 для указания расположения CLI API.
Используйте флаг --with-oracle для указания расположения OCI API.

Используйте флаг --enable-static для статической линковки библиотек. Если вы планируете распространять скомпилированные исполняемые файлы на другие хосты, вы должны использовать этот флаг чтобы приложения могли работать без требуемых библиотек. Флаг --enable-static не работает под ОС Solaris. Флаг --with-ucd-snmp может быть использован вместо флага --with-net-snmp. Если поддержка SNMP не требуется, оба флага --with-net-snmp и --with-ucd-snmp можно пропустить.

Однако, если вы хотите скомпилировать исполняемые файлы клиента вместе с исполняемыми файлами прокси, запустите:

shell> ./configure --enable-proxy --enable-agent --with-mysql --with-net-snmp

Флаг --enable-static может быть использован для принудительной статической линковки.

Шаг 5

Соберите и установите все

shell> make install

По умолчанию, make install устанавливает все файлы в папки /usr/local/sbin, /usr/local/lib и т.д.. Вы можете указать другой путь установки,который отличается от /usr/local, используя флаг --prefix

Шаг 6

Настройте /etc/services

Этот шаг опциональный, однако рекомендуемый. На стороне клиента (машина, которая мониторится), добавьте следующие строки в /etc/services:

zabbix_agent 10050/tcp
zabbix_trap 10051/tcp
Шаг 7

Настройте /etc/inetd.conf

Если вы планируете использовать zabbix_agent вместо рекомендуемого zabbix_agentd, вы должны добавить следующие строки:

zabbix_agent stream tcp nowait.3600 zabbix /opt/zabbix/bin/zabbix_agent

Перезапустите inetd

shell> killall -HUP inetd

Измените настройки по умолчанию в файлах конфигурации

Шаг 8

Настройте /etc/zabbix/zabbix_proxy.conf

Для небольших установок (до 10 наблюдаемых узлов сети), параметры по умолчанию будут достаточны. Однако, вам нужно будет изменить параметры по умолчанию, для достижения максимальной производительности Zabbix прокси. Убедитесь, что вы правильно установили параметры имени узла сети и сервера.

Вы можете использовать misc/conf/zabbix_proxy.conf в качестве примера.

Шан 9

Запустите процесс Zabbix прокси

Запустите zabbix_proxy:

shell> cd sbin
shell> ./zabbix_proxy

4.5 Zabbix агент

На стороне клиента

Шаг 1

Создайте аккаунт суперпользователя Zabbix

Агент будет работать под этим пользователем. Для использования в производственной среде вы должны создать выделенный непривилегированный аккаунт (обычно используется 'zabbix'). Zabbix агенты защищены от запуска из под аккаунта root.

Шаг 2

Распакуйте исходные коды Zabbix

shell> tar -zxf zabbix-1.8.tar.gz
Шаг 3

Сконфигурируйте и скомпилируйте исходные коды для вашей системы

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

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

shell> ./configure --enable-agent

Используйте флаг -–enable-static для статической линковки библиотек. Если вы планируете распространять скомпилированные исполняемые файлы на другие хосты, вы должны использовать этот флаг чтобы приложения могли работать без требуемых библиотек.

Шаг 4

Соберите агента

shell> make
Шан 5

Настройте /etc/services

Этот шаг опциональный, однако рекомендуемый.

На стороне клиента (наблюдаемый сервер), добавьте следующие строки в /etc/services:

zabbix_agent 10050/tcp 
zabbix_trap 10051/tcp 
Шаг 6

Настройте /etc/inetd.conf

Если вы планируете использовать zabbix_agent вместо рекомендуемого zabbix_agentd, вы должны добавить следующие строки:

zabbix_agent stream tcp nowait.3600 zabbix /opt/zabbix/bin/zabbix_agent

Перезапустите inetd

shell> killall -HUP inetd
Шаг 7

Создайте директорию, где будут хранится конфигурационные файлы

mkdir /etc/zabbix
Шаг 8

Настройте /etc/zabbix/zabbix_agentd.conf

Вы должны настроить этот файл для каждого узла сети где установлен zabbix_agentd. Файл должен содержать IP адрес Zabbix сервера. Соединения с другими хостами будут запрещены. Вы можете использовать misc/conf/zabbix_agentd.conf в качестве примера.

Шаг 9

Запустите zabbix_agentd на всех машинах, которые мониторятся

shell> /opt/zabbix/bin/zabbix_agentd

Вы не должны запускать zabbix_agentd если решили использовать zabbix_agent !

Убедитесь, что ваша система позволяет выделить 2 МБ разделяемой памяти (shared memory), в противном случае агент не запустится и вы увидите “Can't allocate shared memory for collector.” в журнале агента. Это может произойти в Solaris 8.

4.6 Веб-интерфейс Zabbix

Шаг 0

Веб-интерфейс Zabbix написан на языке PHP, поэтому чтобы его запустить вам потребуется веб-сервер с поддержкой PHP. Установка производится путем простого копирования PHP файлов в папку HTML вебсервера. Предлагается использовать подпапку вместо корневой папки HTML.

Общепринятые места размещения папок HTML документов для веб-сервера Apache составляют:

  • /usr/local/apache2/htdocs (папка по умолчанию при установке Apache из исходных кодов)
  • /srv/www/htdocs (OpenSUSE, SLES)
  • /var/www/html (Fedora, RHEL, CentOS)
  • /var/www (Debian, Ubuntu)

Чтобы создать подпапку и скопировать файлы веб-интерфейса Zabbix, выполните следующие команды, заменив <htdocs> на корректный путь для вашего случая:

mkdir <htdocs>/zabbix
cd frontends/php
cp -a . <htdocs>/zabbix

При обновлении вы просто заменяете содержимое <htdocs>/zabbix новыми файлами копированием поверх из папки frontends/php, из этого шага.

Шаг 1

Введите в браузер ссылку на Zabbix.

Шаг 2

Прочитайте и согласитесь с GPL v2.

Шаг 3

Убедитесь, что все требования к программному обеспечению выполнены.

Требование Минимальное значение Описание
Версия PHP 5.0
Лимит памяти PHP 8МБ В php.ini:
memory_limit = 128M
Максимальный размер PHP Post 8МБ В php.ini:
post_max_size = 8M
Максимальный размер загружаемых файлов в PHP 16MB В php.ini:
upload_max_filesize = 16MB
Максимальное время выполнения PHP 300 секунд В php.ini:
max_execution_time = 300
Максимальное время input PHP 300 секунд В php.ini:
max_input_time = 300
Часовой пояс в PHP В php.ini:
date.timezone
Варианты часовых поясов здесь
Поддержка базы данных в PHP скриптах одна из: IBM DB2, MySQL, Oracle, PostgreSQL, SQLite Один из следующих модулей должен быть установлен:
ibm_db2, php-mysql, oci8, php-pgsql, php-sqlite3
PHP BC math Любой Скомпилированный с PHP5.
поддержка PHP многобайтовости ЛюбойСкомпилированный с PHP5 или отдельным модулем php-mbstring.
PHP MB String Любой Скомпилированный с PHP5.
PHP Sockets Любой Скомпилированный с PHP5.
PHP Session Любой Скомпилированный с PHP5.
Версия GD 2.0 или выше Модуль php-gd.
Форматы изображений По крайней мере PNG Модуль php-gd.
Модуль libxml Любой Скомпилированный с PHP5.
Модуль ctype Любой Скомпилированный с PHP5.
Шаг 4

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

Шаг 5

Введите подробные сведения о сервере Zabbix.

Шаг 6

Просмотрите результат настроек.

Шаг 7

Загрузите файл конфигурации и поместите его в папку conf/.

Шаг 8

Завершение установки.

Шаг 9

Только для распределенного мониторинга!

Если вы используете распределенный мониторинг вы должны один раз выполнить:

shell> ./zabbix_server –n <nodeid>

где Node ID уникальный идентификатор Ноды. Например:

shell> ./zabbix_server –n 1

Эта команда сконвертирует данные в базе данных для использования с Нодой ID '1', а также добавит локальную Ноду.

Шаг 10

Веб-интерфейс Zabbix готов! По умолчанию имя пользователя Admin, пароль zabbix.

 

5 Обновление

5.1 Изменение уровня релизов

Для изменения уровня релизов требуется только обновление исполняемых файлов и веб-интерфейса. Если упомянуто в заметках к релизу, в базу данных опционально могут быть добавлены индексы для повышения производительности. Обновление можно выполнять легко, перескакивая несколько версий, например, обновление с 1.8.1 на 1.8.3 может быть выполнено за один шаг.

Смотрите заметки по установке и обновлению для получения более подробной информации.

 

6 Использование готового решения Zabbix

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

Для запуска, загрузите готовое решение и перейдите в вашем браузере по IP, который был получен по DCHP.

Загрузка готового решения Zabbix

Готовое решение Zabbix основано на следующих версиях OpenSUSE:

Версия готового решения ZabbixВерсия OpenSUSE
1.8.211.2
1.8.3
1.8.411.3
1.8.5
1.8.6
1.8.711.4
1.8.8
1.8.9

Образ доступен в следующих форматах:

  • vmdk (VMWare/Virtualbox);
  • OVF (Open Virtualisation Format);
  • CD iso;
  • Образ HDD/flash;
  • Xen guest.

Этот образ содержит настроенный Zabbix сервер, работающий с базой данных MySQL, также доступен и веб-интерфейс.

Готовое решение было создано с помощью SUSE Studio.

6.1 Изменения в конфигурации SUSE

Имеется несколько изменений применительно к базовой конфигурации OpenSUSE.

6.1.1 Изменения настроек MySQL
  • Отключен бинарный лог;
  • InnoDB настроен на хранение данных каждой таблицы в отдельном файле.
6.1.2 Использование статического IP адреса

По умолчанию готовое решение получает IP адрес по DHCP. Для того, чтобы указать статический IP адрес выполните:

  • Зайдите под пользователем root;
  • Откройте файл /etc/sysconfig/network/ifcfg-eth0 в вашем любимом редакторе;
  • Установите переменную BOOTPROTO в static;
  • Установите IPADDR, NETMASK и другие параметры как требуется для вашей сети;
  • Создайте файл /etc/sysconfig/network/routes. Например для маршрута по умолчанию используйте default 192.168.1.1 - - (заменив вашим адресом шлюза).
  • Выполните команду rcnetwork restart.

Для настройки DNS, добавьте записи серверов имен в /etc/resolv.conf, указывая по одному серверу имен в одной строке: nameserver 192.168.1.2.

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

6.1.3 Другие изменения
  • Сеть настроена на получение IP адреса по DHCP;
  • Утилита fping имеет права 4710 и ей назначен владелец группы zabbix - suid и только разрешено использование группе zabbix;
  • ntpd настроен на синхронизацию с пулами публичных серверов;
  • Добавлены различные простые утилиты, которые могут сделать работу с Zabbix и мониторингом в целом легче.

6.2 Конфигурация Zabbix

Установленное готовое решение Zabbix имеет следующие пароли и другие изменения конфигурации:

6.2.1 Пароль

Система:

  • root:zabbix
  • zabbix:zabbix

База данных:

  • root:zabbix
  • zabbix:zabbix

Веб-интерфейс Zabbix:

  • admin:zabbix

Если вы меняете пароль к веб-интерфейсу, то не забудьте обновить пароль в настройках веб-мониторинга (Настройка → ВЕБ).

Для изменения пароля пользователя базы данных, потребуются изменения в следующих местах:

  • MySQL;
  • zabbix_server.conf;
  • zabbix.conf.php.
6.2.2 Размещения файлов
  • Файлы конфигурации расположены в /etc/zabbix.
  • Файлы журналов (логи) Zabbix расположены в /var/log/zabbix.
  • Веб-интерфейс Zabbix расположен в /usr/share/zabbix.
  • Домашняя папка для пользователя zabbix - /var/lib/zabbix.
6.2.3 Изменения в настройках Zabbix
  • По умолчанию некоторые элементы данных и триггеры отключены в шаблоне Linux (в основном те, которые не соответствуют установке готового решения);
  • Имя сервера для веб-интерфейса Zabbix изменено на “Zabbix 1.8 Appliance”;
  • Часовой пояс веб-интерфейса изменен на Europe/Riga - родина Zabbix (этот параметр можно изменить в файле /etc/php5/apache2/php.ini);
  • Деактивированные триггеры и веб сценарии по умолчанию отображаются, во избежании путаницы.
6.2.4 Сохранение конфигурации

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

Для создания архивной копии, выполните:

mysqldump zabbix | bzip2 -9 > dbdump.bz2

Теперь вы можете переместить файл dbdump.bz2 на другую машину.

Для восстановления из архивной копии, переместите копию в готовое решение и выполните:

bzcat dbdump.bz2 | mysql zabbix

Убедитесь, что Zabbix сервер не запущен при выполнении восстановления.

6.3 Доступ к веб-интерфейсу

По умолчанию доступ к веб-интерфейсу разрешен с:

  • 127.0.0.1
  • 192.168.0.0/16
  • 10.0.0.0/8
  • ::1

Корневой каталог веб-сервера (/) перенаправляется на /zabbix, таким образом доступ к веб-интерфейсу может быть получен как с http://<хост>, так и с http://<хост>/zabbix.

Эти параметры могут быть изменены в /etc/apache2/conf.d/zabbix.conf. Вы должны перезапустить вебсервер после изменения этого файла. Чтобы это сделать зайдите на сервер по SSH под root и выполните:

service apache2 restart

6.4 Файервол

По умолчанию, открыто только два порта - 22 (SSH) и 80 (HTTP). Для открытия других портов - например, портов Zabbix сервера и агента - измените правила iptables с помощью утилиты SuSEfirewall2:

SuSEfirewall2 open EXT TCP zabbix-trapper zabbix-agent

Затем перезагрузите правила файрвола:

SuSEfirewall2 stop
SuSEfirewall2 start

6.5 Возможности мониторинга

Zabbix сервер скомпилирован с поддержкой следующих функций:

  • SNMP;
  • IPMI;
  • Веб мониторинг;
  • SSH2;
  • IPv6.

В представленной конфигурации Zabbix сервер наблюдает за некоторыми базовыми параметрами самого себя с помощью локально установленного агента, дополнительно веб-интерфейс Zabbix наблюдается и с помощью веб мониторинга.

Мониторинг веб-интерфейса готового решения Zabbix

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

6.6 Именование, скрипты запуска и другие скрипты

Имена демонов Zabbix изменены со стандартных с подчеркиванием на имена с тире для поддержки принципов SUSE. Они называются:

  • zabbix-agentd
  • zabbix-server

Аналогичным образом и файлы конфигурации:

  • /etc/zabbix/zabbix-server.conf
  • /etc/zabbix/zabbix-agentd.conf

Представлены соответствующие скрипты запуска. Для контроля Zabbix сервера используйте следующие команды:

service zabbix-server status
rczabbix-server status
/etc/init.d/zabbix-server status

Замените server на agentd для демона Zabbix агента.

6.6.1 Скрипты планировщика

Имеется скрипт планировщика, который запускается crontab каждые 10 минут и перезапускает Zabbix сервер, если он не запущен, /var/lib/zabbix/bin. Скрипт записывает в журнал дату и время проблем и начала попыток /var/log/zabbix/server_problems.log. Этот скрипт доступен в готовом решении Zabbix начиная с версии 1.8.3.

Убедитесь в том, что вы отключили соответствующую запись в crontab, если вам потребовалась остановка Zabbix сервера

6.6.2 Увеличение доступного дискового пространства

Создайте резервную копию всех данных до выполнения любого из шагов.

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

Запустите fdisk для изменения размера раздела. Выполните под root:

fdisk /dev/sda

Эта команда запустит fdisk для диска sda. Затем, переключитесь на использование секторов введя:

u

Не отключайте совместимость с DOS нажатием c. При отключении этой совместимости раздел будет поврежден.

Затем удалите существующий раздел и создайте новый с нужным размером. В большинстве случаев вы будете выбирать доступный максимум, что расширит файловую систему до размера, который вы сделали доступным для виртуального диска. Для этого введите следующую последовательность в fdisk:

d
n
p
1
(принимаем по умолчанию 63)
(принимаем по умолчанию max)

Если вы хотите оставить пространство для дополнительных разделов (swap и т.д.), вы можете ввести другое значение для last sector (последний сектор). По завершении сохраните изменения введя:

w

Перезагрузите виртуальную машину (т.к. раздел, который был измен, используется в настоящее время). После перезагрузки возможно изменить размер файловой системы.

resize2fs /dev/sda1

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

6.7 Заметки о специфичных форматах

6.7.1 Xen

Для использования образов в Xen сервере, выполните:

xm create -c file-with-suffix.xenconfig

Для получения более подробной информации по использованию образов Xen смотрите следующие страницы:

Для использования образов Xen с Citrix XenServer, вы должны сконвертировать образы с помощью утилиты XenConvert, доступной на веб-сайте Citrix.

6.7.2 VMWare

Образы в формате vmdk используются напрямую в продуктах VMWare Player, Server и Workstation. Для использования в ESX, ESXi и vSphere образы должны быть сконвертированы используя конвертер VMWare.

6.7.3 Образ HDD/flash (raw)

Смотрите http://en.opensuse.org/openSUSE:SUSE_Studio_Disc_Image_Howtos для получения более подробной информации относительно образов диска.

6.8 Известные проблемы

6.8.1 Для готового решения 1.8.8

Готовое решение Zabbix 1.8.8 сообщает о себе в сообщениях загрузки, что основано на версии 1.8.7. Это неправильно, актуальное готовое решение содержит Zabbix 1.8.8.

 
 

3. Процессы Zabbix

1 Журналирование (логирование)

Для настройки журналирования в демонах Zabbix используется параметр “LogFile” конфигурационного файла. Если этот параметр оставить пустым (LogFile=), тогда будет осуществляться журналирование с помощью syslog. Все демоны Zabbix на Unix-подобных платформах журналируют свои сообщения из среды “Daemon”. Ниже указано соответствие между уровнями журналирования (сообщениями соответствующего типа) в Zabbix и в syslog:

Уровень журнала Zabbix Уровень журнала syslog Комментарии
0 - пусто
(LOG_LEVEL_EMPTY)
syslog не используется. Все сообщения пропускаются.
1 - критичная информация
(LOG_LEVEL_CRIT)
при условии критичных ошибок
(LOG_CRIT)
2 - сообщения об ошибке
(LOG_LEVEL_ERR)
при условии ошибок
(LOG_ERR)
3 - предупреждающие сообщения
(LOG_LEVEL_WARNING)
при условии предупреждений
(LOG_WARNING)
4 - для отладки
(LOG_LEVEL_DEBUG)
сообщения уровня отладки
(LOG_DEBUG)

Для настройки syslog необходимо обратится за помощью к соответствующей литературе.


Zabbix агент под Windows использует Журнал событий, если параметр конфигурации “LogFile” был оставлен пустым. Ниже указано соответствие между уровнями журналирования (сообщениями соответствующего типа) в Zabbix и в Журнале событий Windows:

Уровень журнала Zabbix Уровень журнала Журнала событий Windows Комментарии
0 - пусто
(LOG_LEVEL_EMPTY)
Журнал событий не используется. Все сообщения пропускаются.
1 - критичная информация
(LOG_LEVEL_CRIT)
2 - информация об ошибке
(LOG_LEVEL_ERR)
EVENTLOG_ERROR_TYPE Ошибка
3 - предупреждающие сообщения
(LOG_LEVEL_WARNING)
EVENTLOG_WARNING_TYPE Предупреждение
4 - для отладки
(LOG_LEVEL_DEBUG)
EVENTLOG_INFORMATION_TYPE Информация
1 Zabbix сервер

Zabbix сервер - это ядро программного обеспечения Zabbix. Zabbix сервер может быть запущен командой:

shell> cd sbin
shell> ./zabbix_server

Zabbix сервер стартует как демон.

Zabbix сервер поддерживает следующие параметры командной строки:

-c --config <файл> Параметр указывает на конфигурационный файл, по умолчанию это /etc/zabbix/zabbix_server.conf
-n --new-nodeid <nodeid>        конвертирование данных базы данных для новой nodeid 
-R --runtime-control <опция>   выполнение административных функций
-h --help Отображает это сообщение помощи
-v --version Отображает номер версии

Опция -R или --runtime-control поддерживается начиная с Zabbix 1.8.6.
Управление runtime не поддерживается в OpenBSD и NetBSD.

Для получения более подробной помощи по параметрам командной строки выполните:

shell> zabbix_server -h

Примеры параметров командой строки:

shell> zabbix_server -c /usr/local/etc/zabbix_server.conf
shell> zabbix_server --help
shell> zabbix_server -V

Контроль выполнения

Опции контроля выполнения:

ОпцияОписание
config_cache_reloadПерезагрузка кэша конфигурации. Игнорируется если кэш уже загружается.

Пример использования контроля выполнения для перезагрузки сервером кэша конфигурации:

shell> zabbix_server -c /usr/local/etc/zabbix_server.conf -R config_cache_reload

Конфигурационный файл

Файл конфигурации содержит параметры настроек zabbix_server. Этот файл должен существовать и должен иметь права чтения для пользователя 'zabbix'. Поддерживаемые параметры:

Параметр Обязательный Диапазон По умолчанию Описание
AlertScriptsPath нет /home/zabbix/bin/ Размещение пользовательских скриптов оповещений
CacheSize нет 128K-1G 8M Размер кэша конфигурации, в байтах.
Размер распределяемой памяти (shared memory) для данных о хранимых узлах сети и элементах данных.
CacheUpdateFrequency нет 1-3600 60 Как часто Zabbix будет выполнять процедуру обновления кэша конфигурации, в секундах.
DBHost нет localhost Имя хоста базы данных.
Если установлен localhost, то для СУБД MySQL используется сокет.
DBName да Имя базы данных.
Для SQLite3 должен быть указан путь к файлу базы данных. DBUser и DBPassword игнорируются.
DBPassword нет Пароль к базе данных. Игнорируется при СУБД SQLite.
Закомментируйте эту строку, если пароль не используется.
DBPort нет 1024-65535 3306 Порт базы данных, когда не используется локальный сокет. Игнорируется при СУБД SQLite.
DBSocket нет /tmp/mysql.sock Путь к сокету СУБД MySQL.
DBUser нет Пользователь базы данных. Игнорируется при СУБД SQLite.
DebugLevel нет 0-4 3 Задает уровень журналирования (для отладки)
0 - без отладки
1 - критичная информация
2 - информация об ошибках
3 - предупреждения
4 - для отладки (записывает очень много информации)
DisableHousekeeping нет 0-1 0 Если установлена 1, то очистка базы данных от устаревших данных отключена.
ExternalScripts нет /etc/zabbix/externalscripts Размещение внешних скриптов
Fping6Location нет /usr/sbin/fping6 Размещение fping6.
Убедитесь, что исполняемый файл fping6 имеет владельца root и флаг SUID установлен.
Оставьте пустым (“Fping6Location=”), если ваша утилита fping совместима с обработкой адресов IPv6.
FpingLocation нет /usr/sbin/fping Размещение fping.
Убедитесь, что исполняемый файл fping имеет владельца root и флаг SUID установлен!
HistoryCacheSize нет 128K-1G 8M Размер кэша истории, в байтах.
Размер распределяемой памяти (shared memory) для хранения данных истории.
HistoryTextCacheSize нет 128K-1G 16M Размер кэша текстовой истории, в байтах.
Размер распределяемой памяти (shared memory) для хранения данных: символов, текста или журналов.
HousekeepingFrequency нет 1-24 1 Как часто Zabbix запускает процедуру очистки базы данных от устаревшей информации (в часах).
Удаление ненужной информации из таблиц истории, оповещений и сигнализаций.
Если используется PostgreSQL, то предлагаемое значение 24, так как выполняется VACUUM.
MaxHousekeeperDelete нет 0-1000000 500 Не более чем 'MaxHousekeeperDelete' строк (в соответствии с [tablename], [field], [value]) будет удалено за один цикл задачей очистки истории.
SQLite3 не использует этот параметр, удаляются все подходящие строки без лимита.
Если установлен 0, то удаляются все подходящие строки без ограничений. В этом случае вы должны понимать, что вы делаете!
Эта опция поддерживается начиная с версии 1.8.2.
Include нет Вы можете включить индивидуальные файлы или все файлы в папке в файл конфигурации.
ListenIP нет 0.0.0.0 Список IP адресов разделенный запятыми, которые нужно прослушивать для траппера
Траппер будет прослушивать все сетевые интерфейсы, если параметр не указан.
Несколько IP адресов поддерживается начиная с версии 1.8.3 и выше.
ListenPort нет 1024-32767 10051 Прослушиваемый порт для траппера.
LogFileSize нет 0-1024 1 Максимальный размер файла журнала в МБ.
0 - отключение автоматической ротации журнала.
LogFile нет Имя файла журнала.
LogSlowQueries нет 0-3600000 0 Как долго должен выполняться запрос к базе данных чтобы он был занесен в журнал (в миллисекундах).
0 - не журналировать медленные запросы
Эта опция поддерживается начиная с версии 1.8.2
NodeID нет 0-999 0 Уникальный NodeID для распределенной установки.
0 - одиночный сервер
NodeNoEvents нет 0-1 0 Если установлена '1', тогда локальные события не будут отправлены мастер ноде.
Эта опция не влияет на способность этой ноды распространять события от своих дочерних нод.
NodeNoHistory нет 0-1 0 Если установлена '1', тогда локальная история не будет отправлена мастер ноде.
Эта опция не влияет на способность этой ноды распространять историю от своих дочерних нод.
PidFile нет /tmp/zabbix_server.pid Имя PID файла.
ProxyConfigFrequency нет 1-604800 3600 Частота отправки в секундах Zabbix сервером данных о конфигурации для Zabbix прокси. Используется только для прокси в пассивном режиме.
Эта опция поддерживается начиная с версии 1.8.3.
ProxyDataFrequency нет 1-3600 1 Частота запроса в секундах Zabbix сервером данных истории с Zabbix прокси. Используется только для прокси в пассивном режиме.
Эта опция поддерживается начиная с версии 1.8.3.
SSHKeyLocation нет Размещение публичных ключей для проверок по SSH
SenderFrequency нет 5-3600 30 Как часто Zabbix будет пытаться повторно отправлять не отправленные оповещения (в секундах).
SourceIP нет Исходный IP адрес для исходящих подключений.
StartDBSyncers нет 1-100 4 Количество форков Синхронизаторов БД.
Верхний предел 64 до версии 1.8.5.
Эта опция поддерживается в версии 1.8.3 и в более новых
StartDiscoverers нет 0-250 Количество форков автообнаружения.
Верхний предел 255 до версии 1.8.5.
StartHTTPPollers нет 0-1000 1 Количество форков пуллеров HTTP.
Верхний предел 255 до версии 1.8.5.
StartIPMIPollers нет 0-1000 0 Количество форков пуллеров IPMI.
Верхний предел 255 до версии 1.8.5.
StartPingers нет 0-1000 1 Количество форков пингеров по ICMP.
Верхний предел 255 до версии 1.8.5.
StartPollersUnreachable нет 0-1000 1 Количество форков пуллеров для недоступных узлов сети (включая IPMI).
Верхний предел 255 до версии 1.8.5.
Эта опция отсутствует в версии 1.8.3.
StartPollers нет 0-1000 5 Количество форков для пуллеров.
Верхний предел 255 до версии 1.8.5.
StartProxyPollers нет 0-250 1 Количество форков пуллеров для пассивных прокси.
Верхний предел 255 до версии 1.8.5.
Эта опция поддерживается в версии 1.8.3 и в более новых
StartTrappers нет 0-1000 5 Количество форков трапперов.
Верхний предел 255 до версии 1.8.5.
Timeout нет 1-30 3 Параметр указывает как долго ждать ответа от агента, устройства SNMP или внешней проверки (в секундах).
TmpDir нет /tmp Папка для временных данных.
TrapperTimeout нет 1-300 300 Параметр указывает как много секунд траппер может потратить на обработку новых данных.
TrendCacheSize нет 128K-1G 4M Размер кэша тенденций, в байтах.
Размер распределяемой памяти (shared memory) для хранения данных о тенденциях.
UnavailableDelay нет 1-3600 60 Как часто узел сети будет проверяться на доступность в период его недоступности, в секундах.
UnreachableDelay нет 1-3600 15 Как часто узел сети будет проверяться на доступность в период его недостижимости, в секундах.
UnreachablePeriod нет 1-3600 45 Через сколько секунд недостижимости узел сети считается недоступным.

Начиная с версии 1.8.6 Zabbix прокси не запустится, если в конфигурационном файле указан ошибочный (не подходящий под обозначение параметр=значение) или неизвестный параметр.

 
2 Zabbix прокси

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

shell> cd sbin
shell> ./zabbix_proxy

Zabbix прокси стартует как демон. Zabbix прокси поддерживает следующие параметры командной строки:

  -c --config <файл> Абсолютный путь к конфигурационному файлу
  -R --runtime-control <опция>   выполнение административных функций
  -h --help Отображает это сообщение помощи
  -V --version Отображает номер версии

Опция -R или --runtime-control поддерживается начиная с Zabbix 1.8.6.
Управление runtime не поддерживается в OpenBSD и NetBSD.

Для получения более подробной помощи по параметрам командной строки выполните:

shell> zabbix_proxy -h

Примеры параметров командой строки:

shell> zabbix_proxy -c /usr/local/etc/zabbix_proxy.conf
shell> zabbix_proxy --help
shell> zabbix_proxy -V

Контроль выполнения

Опции контроля выполнения:

ОпцияОписание
config_cache_reloadПерезагрузка кэша конфигурации. Игнорируется если кэш уже загружается.
Активный Zabbix прокси подключается к Zabbix серверу запрашивает данные конфигурации.

Пример использования контроля выполнения для перезагрузки сервером кэша конфигурации:

shell> zabbix_proxy -c /usr/local/etc/zabbix_proxy.conf -R config_cache_reload

Конфигурационный файл

Файл конфигурации содержит параметры настроек zabbix_proxy. Этот файл должен существовать и должен иметь права чтения для пользователя 'zabbix'. Поддерживаемые параметры:

Параметр Обязательный Диапазон По умолчанию Описание
CacheSize нет 128K-1G 8M Размер кэша конфигурации, в байтах.
Размер распределяемой памяти (shared memory) для данных о хранимых узлах сети и элементах.
ConfigFrequency нет 1-604800 3600 Как часто прокси будет получать данные о конфигурации от Zabbix сервера (в секундах).
Игнорируется для прокси в пассивном режиме.
DBHost нет localhost Имя хоста базы данных.
Если установлен localhost, то для СУБД MySQL используется сокет.
DBName да Имя базы данных.
Для СУБД SQLite3 должен быть указан путь к файлу базы данных. DBUser и DBPassword игнорируются.
DBPassword нет Пароль к базе данных. Игнорируется при СУБД SQLite.
Закомментируйте эту строку, если пароль не используется.
DBSocket нет /tmp/mysql.sock Путь к сокету MySQL. Если не используется локальный сокет, тогда это порт БД. Игнорируется для SQLite.
DBUser нет Пользователь базы данных. Игнорируется при СУБД SQLite.
DataSenderFrequency нет 1-3600 1 Прокси будет отправлять собранную информацию каждые N секунд Zabbix серверу.
DebugLevel нет 0-4 3 Задает уровень журналирования
0 - без отладки
1 - критичная информация
2 - информация об ошибках
3 - предупреждения
4 - для отладки (записывает очень много информации)
ExternalScripts нет /etc/zabbix/externalscripts Размещение внешних скриптов
Fping6Location нет /usr/sbin/fping6 Размещение fping6.
Убедитесь, что исполняемый файл fping6 имеет владельца root и флаг SUID установлен.
Оставьте пустым (“Fping6Location=”), если ваша утиллита fping совместима с обработкой адресов IPv6.
FpingLocation нет /usr/sbin/fping Размещение fping.
Убедитесь, что исполняемый файл fping имеет владельца root и флаг SUID установлен!
HeartbeatFrequency нет 0-3600 60 Частота сообщений доступности в секундах.
Используется для мониторинга доступности прокси на стороне сервера.
0 - сообщение о доступности отключено.
Игнорируется для прокси в пассивном режиме.
HistoryCacheSize нет 128K-1G 8M Размер кэша истории, в байтах.
Размер распределяемой памяти (shared memory) для хранения данных истории.
HistoryTextCacheSize нет 128K-1G 16M Размер кэша текстовой истории, в байтах.
Размер распределяемой памяти (shared memory) для хранения данных: символов, текста или журналов.
Hostname нет Устанавливается через HostnameItem Уникальное имя прокси. Убедитесь, что имя прокси известно Zabbix серверу!

Разрешенные символы: буквенно-цифровые, '.', ' ', '_' и '-'.
Максимальная длина: 64
HostnameItem нет system.hostname Элемент данных, используемый для установки параметра Hostname если он не определен (это будет работать на прокси так же как и на агенте).
Не поддерживаются пользовательские параметры, счетчики производительности или псевдонимы, но поддерживается system.run[].

Игнорируется если Hostname установлен.

Эта опция поддерживается начиная с версии 1.8.6.
HousekeepingFrequency нет 1-24 1 Как часто Zabbix запускает процедуру очистки базы данных от устаревшей информации (в часах).
Удаление ненужной информации из таблиц истории, оповещений и сигнализаций.
Если используется PostgreSQL, то предлагаемое значение 24, так как выполняется VACUUM.
Include нет Вы можете включить индивидуальные файлы или все файлы в папке в файл конфигурации.
ListenIP нет 0.0.0.0 Список IP адресов разделенный запятыми, которые нужно прослушать для траппера
Траппер будет прослушивать все сетевые интерфейсы, если параметр не указан.
Несколько IP адресов поддерживается начиная с версии 1.8.3 и выше.
ListenPort нет 1024-32767 10051 Слушаемый порт для траппера.
LogFileSize нет 0-1024 1 Максимальный размер файла журнала в МБ.
0 - отключение автоматической ротации журнала.
LogFile нет Имя файла журнала.
LogSlowQueries нет 0-3600000 0 Как долго должен выполняться запрос к базе данных чтобы он был занесен в журнал (в миллисекундах).
0 - не журналировать медленные запросы
Эта опция поддерживается начиная с версии 1.8.2
PidFile нет /tmp/zabbix_proxy.pid Имя PID файла.
ProxyLocalBuffer нет 0-720 0 Прокси будет локально хранить данные N часов.
Этот параметр может быть использован для хранения данных локально, если они будут использоваться сторонними приложениями.
ProxyMode нет 0-1 0 Режим работы прокси.
0 - прокси в активном режиме
1 - прокси в пассивном режиме
Эта опция поддерживается начиная с версии 1.8.3 и в более поздних
ProxyOfflineBuffer нет 0-720 1 Прокси будет локально хранить данные N часов, если нет связи с Zabbix сервером.
Более старые данные будут потеряны.
SSHKeyLocation нет Размещение публичных ключей для проверок по SSH
ServerPort нет 1024-32767 10051 Порт траппера на Zabbix сервере.
Игнорируется для прокси в пассивном режиме.
Server да IP адрес (или имя хоста) Zabbix сервера.
Прокси будет получать данные о конфигурации с этого сервера.
SourceIP нет Исходный IP адрес для исходящих подключений.
StartDBSyncers нет 1-100 4 Количество префорков Синхронизаторов БД.
Верхний предел был 64 до версии 1.8.5.
Эта опция поддерживается в версии 1.8.3 и в более новых
StartDiscoverers нет 0-250 1 Количество форков автообнаружения.
Верхний предел был 255 до версии 1.8.5.
StartIPMIPollers нет 0-1000 0 Количество форков пуллеров IPMI.
Верхний предел был 255 до версии 1.8.5.
StartPingers нет 0-1000 1 Количество форков пингеров по ICMP.
Верхний предел был 255 до версии 1.8.5.
StartPollersUnreachable нет 0-1000 1 Количество форков пуллеров для недоступных узлов сети (включая IPMI).
Верхний предел был 255 до версии 1.8.5.
Эта опция отсутствует в версии 1.8.3.
StartPollers нет 0-1000 5 Количество форков для пуллеров.
Верхний предел был 64 до версии 1.8.5.
StartTrappers нет 0-1000 5 Количество форков трапперов.
Верхний предел был 255 до версии 1.8.5.
Timeout нет 1-30 3 Указывает как долго ждать ответа от агента, устройства SNMP или внешней проверки (в секундах).
TmpDir нет /tmp Папка для временных данных.
TrapperTimeout нет 1-300 300 Параметр указывает как много секунд траппер может потратить на обработку новых данных.
UnavailableDelay нет 1-3600 60 Как часто узел сети будет проверяться на доступность в период его недоступности, в секундах.
UnreachableDelay нет 1-3600 15 Как часто узел сети будет проверяться на доступность в период его недостижимости, в секундах.
UnreachablePeriod нет 1-3600 45 Через сколько секунд недостижимости узел сети считается недоступным.

Начиная с версии 1.8.6 Zabbix прокси не запустится, если в конфигурационном файле указан ошибочный (не соответствующий форме параметр=значение) или неизвестный параметр.

 
3 Zabbix агент (UNIX, Standalone демон)

Демон Zabbix UNIX агент работает на наблюдаемом узле сети. Агент предоставляет Zabbix серверу данные о своей производительности и доступности. Zabbix агент работает с элементами данных типа 'Zabbix агент' или 'Zabbix агент (активный)'.

Zabbix агент может быть запущен командой:

shell> cd sbin
shell> ./zabbix_agentd

Zabbix агент стартует как демон.

Zabbix агент поддерживает следующие параметры командной строки:

  -c --config <файл> Определяет конфигурационный файл, по умолчанию это /etc/zabbix/zabbix_agentd.conf
  -h --help Отображение этого сообщения помощи
  -V --version Отображение номера версии
  -p --print Вывод списка поддерживаемых элементов данных и выход
  -t --test <ключ элемента данных> Тест указанного элемента данных и выход

Для получения помощи по параметрам командной строки выполните:

shell> zabbix_agentd -h

Примеры параметров командой строки:

shell> zabbix_agentd -c /usr/local/etc/zabbix_agentd.conf
shell> zabbix_agentd --help
shell> zabbix_agentd --print
shell> zabbix_agentd -t "system.cpu.load[all,avg1]"

Конфигурационный файл

Файл конфигурации содержит параметры настроек zabbix_agentd. Этот файл должен существовать и должен иметь права чтения для пользователя 'zabbix'. Поддерживаемые параметры:

Параметр Обязательный Диапазон По умолчанию Описание
Alias нет Наборы псевдонимов для параметра. Может быть полезным для замены длинных и сложных имен параметров на более простые и короткие.

Начиная с версии 1.8.6 Zabbix агент будет завершен в случае некорректной записи Alias или в случае если найден дубликат ключа Alias в конфигурационном файле.
AllowRoot нет 0 Разрешает запуск агента из под 'root'. Если параметр отключен и агент запускается из под 'root', то агент попытается переключиться на пользователя 'zabbix'. Параметр не имеет эффекта, если агент запускается под обычным пользователем.
0 - не разерешено
1 - разрешено
BufferSend нет 1-3600 5 Не удерживать данные в буфере больше чем N секунд.
BufferSize нет 2-65535 100 Максимальное количество значений в памяти буфера. Агент отправляет все собранные данные Zabbix серверу или прокси при заполнении буфера.
DebugLevel нет 0-4 3 Задает уровень журналирования
0 - без отладки
1 - критичная информация
2 - информация об ошибках
3 - предупреждения
4 - для отладки (записывает очень много информации)
DisableActive нет 0 Отключение активных проверок. Агент переходит в пассивный режим, ожидая подключений от сервера.
DisablePassive нет 0 Отключение пассивных проверок. Агент не слушает никакой TCP порт.
Будут работать только активные проверки.
0 - не отключать
1 - отключить
EnableRemoteCommands нет 0 Разрешены ли удаленные команды от Zabbix сервера.
0 - не разрешены
1 - разрешены
Hostname нет Устанавливается HostnameItem Уникальное имя узла сети.
Требуется для активных проверок и должно точно совпадать (в т.ч. регистр) с именем узла сети, настроенном в Zabbix сервере.

Допустимые символы: буквенночисловые, '.', ' ', '_' и '-'.
Максимальная длина: 64
HostnameItem нет system.hostname Элемент данных используется для установки Hostname, если он не определен.
Не поддерживает UserParameters, счетчики производительности или псевдонимы, но поддерживает system.run[] независимо от значения EnableRemoteCommands.

Игнорируется, если установлен Hostname.

Эта опация поддерживается в версии 1.8.6 и более новых.
Include нет Вы можете включить в файл конфигурации индивидуальные файлы или все файлы в папке.
ListenIP нет 0.0.0.0 Список IP адресов, разделенный запятыми, которые агент должен прослушивать.
Несколько IP адресов поддерживаются начиная с версии 1.8.3 и выше.
ListenPort нет 1024-32767 10050 Агент будет прослушивать указанный порт, ожидая подключений с сервера.
LogFileSize нет 0-1024 1 Максимальный размер файла журнала в МБ.
0 - отключает автоматическую ротацию файла журнала.
LogFile нет Имя файла журнала.
Если не указан, тогда используется syslog
LogRemoteCommands нет 0 Включение журналирования выполненных команд как предупреждений.
0 - отключено
1 - включено
MaxLinesPerSecond нет 1-1000 100 Максимальное количество новых строк в секунду, которые агент будет отправлять серверу
или прокси при обработке активных проверок 'log', 'logrt' и 'eventlog'.
Указаное значение будет перезаписано параметром 'maxlines',
указанном в ключах элементов данных 'log', 'logrt' или 'eventlog'.
PidFile нет /tmp/zabbix_agentd.pid Имя PID файла.
RefreshActiveChecks нет 60-3600 120 Частота обновления списка активных проверок, в секундах.
ServerPort нет 10051 Порт сервера для получения списка и для отправки активных проверок.
Server да Список IP адресов (или имен хостов) Zabbix серверов, разделенных запятыми.
Пробелы недопустимы. Первая запись используется для получения списка и для отправки результатов активных проверок.
Обратите внимание, что имена хостов должны резолвиться имя хоста→IP адрес и IP адрес→имя хоста.
SourceIP нет IP адрес источника для исходящих подключений.
StartAgents нет 1-100 3 Количество форков zabbix_agentd, для обработки пассивных проверок.
Верхний предел был 16 до версии 1.8.5.
Timeout нет 1-30 3 Не тратить на обработку времени, больше чем указано в значении
UnsafeUserParameters нет 0,1 0 Разрешить передачу всех символов, которые указаны в качестве аргументов пользовательских параметров. Поддерживается начиная с 1.8.2
UserParameter нет Пользовательский параметр для мониторинга. Можно указать несколько пользовательских параметров.
Формат: UserParameter=<ключ>,<команда>
Обратите внимание, что команда не должна возвращать пустую строку или только символ конца строки.
Пример: UserParameter=system.test,who|wc -l

Начиная с версии 1.8.6 Zabbix агент будет завершен в случае некорректной записи UserParameter или в случае если найден дубликат ключа UserParameter в конфигурационном файле.
 

4 Zabbix агент (UNIX, Inetd версия)

Файл конфигурации содержит параметры настроек zabbix_agent. Этот файл должен существовать и должен иметь права чтения для пользователя 'zabbix'. Поддерживаемые параметры:

Параметр Обязательный По умолчанию Описание
Alias нет Наборы псевдонимов для параметра. Может быть полезным для замены длинных и сложных имен параметров на более простые и короткие.

Начиная с версии 1.8.6 Zabbix агент будет завершен в случае некорректной записи Alias или в случае если найден дубликат ключа Alias в конфигурационном файле.
Include нет Вы можете включать индивидуальные файлы или все файлы в папке во конфигурационный файл.
Server да -Список разделенных запятыми IP адресов (или имен хостов) Zabbix серверов. Подключения с других IP адресов будут отклонены.
Timeout нет 3Не тратить на обработку времени больше указанного значения. Агент не завершает пользовательские процессы попавшие под таймаут!
UnsafeUserParameters нет 0 Разрешить все символы, которые передаются в качестве аргументов пользовательским параметрам
UserParameter нет -Пользовательский параметр для мониторинга. Можно указать несколько пользовательских параметров
Формат: UserParameter=<ключ>,<команда>
Обратите внимание, что не должна возвращать пустую строку или только символ конца строки.
Пример: UserParameter=system.test,who|wc -l

Начиная с версии 1.8.6 Zabbix агент будет завершен в случае некорректной записи UserParameter или в случае если найден дубликат ключа UserParameter в конфигурационном файле.

Начиная с версии 1.8.6 Zabbix агент будет завершен, если в конфигурационном файле указан ошибочный (не соответствующий форме параметр=значение) или неизвестный параметр.

 

5 Zabbix агент (Windows)

Установка

Установка очень проста и включает в себя 3 шага:

Шаг 1

Создайте конфигурационный файл.

Создайте конфигурационный файл c:/zabbix_agentd.conf (он имеет схожий синтаксис с конфигурационным файлом UNIX агента).

Пример конфигурационного файла доступен в архиве исходных кодов Zabbix в misc/confzabbix_agentd.win.conf.

Шаг 2

Установите агента как сервиса Windows.

zabbix_agentd.exe --install

Если вы хотите использовать конфигурационный файл, отличный от c:\zabbix_agentd.conf, вы должны использовать следующую команду для установки сервиса:

zabbix_agentd.exe --config <ваш_конфигурационный_файл> --install

Должен быть указан полный путь к конфигурационному файл.

Шаг 3

Запустите агента.

Теперь вы можете использовать Панель управления для запуска агента как сервиса или из командной строки выполните:

zabbix_agentd.exe --start

Примечание к Windows NT 4.0. Zabbix_agentd.exe использует PDH (Performance Data Helper) API для сбора различной информации о системе, поэтому требуется PDH.DLL. Эта библиотека не поставляется вместе с NT 4.0, поэтому вам потребуется загрузить и установить её самостоятельно. В статье базы знаний Microsoft под номером 284996 это подробно описано, а также имеется ссылка на загрузку библиотеки. Вы можете найти эту статью по адресу http://support.microsoft.com/default.aspx?scid=kb;en-us;284996

Использование

Синтаксис командой строки:

zabbix_agentd.exe [-Vhp] [-idsx] [-c <file>] [-t <metric>]
Конфигурационный файл

Zabbix агент для Windows поддерживает следующие параметры командной строки:

Опции:

  -c --config <файл> Параметр указывает конфигурационный файл, по умолчанию это c:\zabbix_agentd.conf).
  -h --help          Отображение этого сообщения помощи
  -V --version       Отображение номера версии
  -p --print         Вывод поддерживаемых проверок (элементов данных) и выход
  -t --test <ключ элемента данных> Тестирование одного элемента данных и выход

Функции:

  -i --install   Установка Zabbix агента как сервиса.
  -d --uninstall Удаление сервиса Zabbix агента.
  -s --start     Запуск сервиса Zabbix агента.
  -x --stop      Остановка сервиса Zabbix агента.

Конфигурационный файл (c:/zabbix_agentd.conf) содержит параметры настроек для zabbix_agentd.exe. Поддерживаемые параметры:

Параметр Обязательный Диапазон По умолчанию Описание
Alias нет Наборы псевдонимов для параметра.
Может быть полезным для замены длинных и сложных имен параметров на более простые и короткие.
Например, если вы хотите вернуть использование файла подкачки сервера в процентах, вы можете использовать параметр “perf_counter[\Paging File(_Total)\% Usage]”, или вы можете установить алиас, добавив следующую строку в конфигурационный файл:
Alias = pg_usage:perf_counter[\Paging File(_Total)\% Usage].
После этого вы можете использовать имя параметра “pg_usage”, чтобы получить эту же информацию.
Вы можете создать столько записей “Alias”, сколько пожелаете.
Обратите внимание, что алиасы не могут быть использованы для параметров, определенных в записях “PerfCounter” конфигурационного файла.

Начиная с версии 1.8.6 Zabbix агент будет завершен в случае некорректной записи Alias или в случае если найден дубликат ключа Alias в конфигурационном файле.
BufferSend нет 1-3600 5 Не удерживать данные в буфере больше чем N секунд.
BufferSize нет 2-65535 100 Максимальное количество значений в памяти буфера. Агент отправляет все собранные данные Zabbix серверу или прокси при заполнении буфера.
DebugLevel нет 0-4 3 Уровень журналирования, один из: 0 – нет, 1 – критические, 2 – ошибки, 3 – предупреждения, 4 – отладка
DisableActive нет 0 Отключение активных проверок. Агент переходит в пассивный режим, ожидая подключений от сервера.
DisablePassive нет 0 Отключение пассивных проверок. Агент не слушает никакой TCP порт.
Будут работать только активные проверки.
0 - не отключать
1 - отключить
EnableRemoteCommands нет 0 Разрешены ли удаленные команды от Zabbix сервера.
0 - не разрешены
1 - разрешены
Hostname system.hostname Уникальное имя узла сети.
Требуется для активных проверок и должно точно совпадать (в т.ч. регистр) с именем узла сети, настроенном в Zabbix сервере.
Include нет Вы можете включить в конфигурационный файл индивидуальный файл в папке.
ListenIP нет 0.0.0.0 Список IP адресов, разделенный запятыми, которые агент должен прослушивать.
Несколько IP адресов поддерживаются начиная с версии 1.8.3 и выше.
ListenPort нет 1024-32767 10050 Агент будет прослушивать указанный порт, ожидая подключений с сервера.
LogFileSize нет 0-1024 1 Максимальный размер файла журнала в МБ.
0 - отключает автоматическую ротацию файла журнала.
LogFile нет Имя файла журнала. Если не указан, то используется Журнал событий Windows
LogRemoteCommands нет 0 Включение журналирования выполненных команд как предупреждений.
0 - отключено
1 - включено
MaxLinesPerSecond нет 1-1000 100 Максимальное количество новых строк в секунду, которые агент будет отправлять серверу
или прокси при обработке активных проверок 'log', 'logrt' и 'eventlog'.
Указанное значение будет перезаписано параметром 'maxlines',
если оно определено в ключах элементов данных 'log', 'logrt' или 'eventlog'.
PerfCounter нет Синтаксис: <parameter_name>,”<perf_counter_path>”,<period>
Это определяет новый параметр <parameter_name>, и это будет среднее значение для системного счетчика производительности <perf_counter_path> для указанного периода времени <period> (в секундах).
Например, если вы хотите получать среднее количество прерываний процессора в секунду за последнюю минуту, вы должны определить новый параметр “interrupts” в следующего вида: PerfCounter = interrupts,”\Processor(0)\Interrupts/sec”,60 Пожалуйста, обратите внимание на двойные кавычки на концах пути счетчика производительности. Опрос системного счетчика для расчета среднего значения будет производится каждую секунду.
Вы можете выполнить typeperf –qx для получения списка всех счетчиков производительности доступных в Windows.

Начиная с версии 1.8.6 Zabbix агент будет завершен в случае некорректной записи PerfCounter или в случае если найден дубликат ключа PerfCounter в конфигурационном файле.
RefreshActiveChecks нет 60-3600 120 Частота обновления списка активных проверок, в секундах.
ServerPort нет 10051 Порт сервера для получения списка активных проверок и для отправки их результатов.
Server да Список IP адресов (или имен хостов) Zabbix серверов, разделенных запятыми.
Пробелы недопустимы. Первая запись используется для получения списка активных проверок и для отправки их результатов.
Если поддержка IPv6 включена, тогда '127.0.0.1', '::127.0.0.1', '::ffff:127.0.0.1' воспринимаются одинаково.
SourceIP нет IP адрес источника для исходящих подключений.
StartAgents нет 1-16 3 Количество потоков zabbix_agentd, для обработки пассивных проверок.
Timeout нет 1-30 3 Не тратить на обработку времени, больше чем указано в значении.
UnsafeUserParameters нет 0-1 0 Разрешить передачу всех символов, которые указаны в качестве аргументов пользовательских параметров.
0 - не разрешено
1 - разрешено
UserParameter Пользовательский параметр для мониторинга. Можно указать несколько пользовательских параметров.
Формат: UserParameter=<ключ>,<команда>
Обратите внимание, что команда не должна возвращать пустую строку или только символ конца строки.
Пример: UserParameter=system.test,echo 1

Начиная с версии 1.8.6 Zabbix агент будет завершен в случае некорректной записи UserParameter или в случае если найден дубликат ключа UserParameter в конфигурационном файле.

Начиная с версии 1.8.6 Zabbix прокси не запустится, если в конфигурационном файле указан ошибочный (не подходящий под обозначение параметр=значение) или неизвестный параметр.

 

6 Zabbix Sender (UNIX)

Zabbix UNIX Sender это утилита командной строки, с помощью которой вы можете отправить Zabbix серверу данные о производительности для последующей обработки.

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

shell> cd bin
shell> ./zabbix_sender -z zabbix -s LinuxDB3 -k db.connections -o 43

Начиная с версии Zabbix 1.8.4 утилита zabbix_sender была улучшена для отсылки данных в реальном времени. Имеется ввиду, что большое количество значений, полученное за короткий промежуток времени, будут накапливаться во временном стеке и затем будут отправлены серверу за одно соединение. Данные, которые приходят с интервалом более 0,2 сек. могут накапливаться в одном стеке, но максимальное время их накапливания и последующей отправки все же 1 секунда.

Если отправлять много значений из входного файла, то Zabbix sender будет отправлять их партиями по 250 значений за раз (при этом будут обработаны все значения), например:

# zabbix_sender -z 127.0.0.1 -i /tmp/traptest.txt 
Info from server: "Processed 250 Failed 0 Total 250 Seconds spent 0.002668"
Info from server: "Processed 50 Failed 0 Total 50 Seconds spent 0.000540"
sent: 300; skipped: 0; total: 300

Начиная с версии 1.8.6 Zabbix прокси не запустится, если в конфигурационном файле указан ошибочный (не подходящий под обозначение параметр=значение) или неизвестный параметр.

Для получения подробной информации смотрите Zabbix Sender manpage.

 

7 Zabbix Get (UNIX)

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

Эта утилита обычно используется для устранения неполадок с Zabbix агентами.

Zabbix get может быть запущен командой:

shell> cd bin
shell> ./zabbix_get -s 127.0.0.1 -p 10050 -k "system.cpu.load[all,avg1]"

Zabbix get поддерживает следующие параметры командной строки:

  -p --port <номер порта> Указывает номер порта запущенного агента на узле сети. По умолчанию 10050.
  -s --host <имя хоста или IP> Указывает имя хоста или IP адрес для требуемого узла сети
  -I --source-address <IP адрес> Указывает IP адрес для исходящего подключения
  -k -key <ключ элемента данных> Указывает ключ элемента данных, значение которого мы хотим получить.
  -h --help Отображение этого сообщения помощи
  -V --version Отображение номера версии

Для получения помощи по параметрам командной строки выполните:

shell> zabbix_get --help
 
 

4. Настройка

1 Действия

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

Атрибуты действий:

Параметр Описание
Имя Уникальное имя действия.
Событие Источник события.
В данный момент поддерживаются несколько источников:
Триггеры – события генерируемые изменениями состояния триггеров
Обнаружение – события генерируемые модулем сетевого автообнаружения
Авторегистрация - события генерируемые новыми активными агентами
Включить эскалации Включение эскалаций. Если включено, то действие будет эскалировано по определенным шагам операции, определенным для операций.
Период (секунд) Интервал времени для перехода на следующий шаг при эскалации.
Тема по умолчанию Тема оповещения по умолчанию. Тема может содержать макросы.
Сообщение по умолчанию Сообщение оповещения по умолчанию. Сообщение может содержать макросы.
Сообщение восстановления Если включено, то Zabbix будет отправлять сообщение после устранения проблемы. Сообщения будут отправлены только тем кто получал любые сообщения по этой проблеме ранее.
Тема восстановления Тема сообщения при восстановлении. Тема может содержать макросы.
Сообщение восстановления Сообщение оповещения при восстановления. Сообщение может содержать макросы.
Состояние Состояние действия:
Активировано - действие включено
Деактивировано - действие отключено

Внимание: Перед включением сообщений о восстановлении или эскалаций, убедитесь что в условия действия добавлено условие “Значение триггера = ПРОБЛЕМА”, в противном случае события восстановления также могут стать эскалированными

Условия действия

Действие будет выполнено только в случае, если оно соответствует определенному набору условий.

Следующие условия могут быть определены для событий, источником которых есть изменение триггеров:

Тип условия Поддерживаемые операнды Описание
Группа элементов данных =
содержит
не содержит
= - событие произошло от триггера, элемент данных которого включен в указанную группу элементов данных
содержит - событие произошло от триггера, элемент данных которого включен в указанную группу элементов данных, содержащей указанную строку
не содержит - событие произошло от триггера, элемент данных которого включен в указанную группу элементов данных, не содержащей указанную строку
Группа узлов сети =
<>
Сравнивает имеется ли в группе узлов сети триггер, сгенерировавший событие.
= - Событие сгенерировано из указанной группы узлов сети
<> - Событие сгенерировано не из указанной группы узлов сети
Шаблон узла сети =
<>
Сравнивает имеется ли в шаблоне узла сети сработавший триггер.
= - Событие сгенерировано триггером находящемся в шаблоне узла сети
<> - Событие сгенерировано триггером не находящемся в шаблоне узла сети
Узел сети =
<>
Сравнение имеется ли сработавший триггер в узле сети.
= - Событие сгенерировано из указанного узла сети
<> - Событие сгенерировано не из указанного узла сети
Триггер =
<>
Сравнение указанного триггера со сработавшим триггером.
= - Событие сгенерировано указанным триггером
<> - Событие сгенерировано не указанным триггером
Описание триггера (имя) содержит
не содержит
Сравнение совпадает ли имя триггера с именем триггера сгенерировавшим событие.
содержит – Строка найдена в имени триггера. Регистрозависимое.
не содержит – Строка не найдена в имени триггера. Регистрозависимое.
Важность триггера =
<>
>=
<=
Сравнение с важностью триггера. = - равно важности триггера
<> - не равен важности триггера
>= - равен или более важный триггер
<= - равен или менее важный триггер
Значение триггера = Сравнение со значением триггера.
= - равно значению триггера (OK или ПРОБЛЕМА)
Период времени в
не в
Событие произошло в указанный промежуток времени.
в – Событие произошло в указанный период времени.
Смотрите страницу спецификаций периода времени для получения сведений о формате времени.
Состояние обслуживания =
<>
Сравнение находится ли узел сети в обслуживании.
= - Узел сети находится на обслуживании.
<> - Узел сети не находится на обслуживании.

Значение (состояние) триггера:

Состояние триггера изменяется с ОК на ПРОБЛЕМА (значение триггера ПРОБЛЕМА) Состояние триггера изменяется с ПРОБЛЕМА на ОК (значение триггера ОК)

Если состояние изменяется в такой последовательности ОК→НЕИЗВЕСТНО→ПРОБЛЕМА, то это рассматривается как ОК→ПРОБЛЕМА, и если ПРОБЛЕМА→НЕИЗВЕСТНО→ОК то это рассматривается как ПРОБЛЕМА→ОК.

Следующие условия действий могут быть определены для событий, возникающих при Обнаружении:

Тип условия Поддерживаемые операнды Описание
IP узла сети =
<>
Проверяется входит ли IP адрес обнаруженного Узла сети в указанный диапазон.
= - IP узла сети входит в диапазон
<> - IP узла сети не входит в диапазон.
Тип сервиса =
<>
Проверяется тип сервиса обнаруженного устройства.
= - совпадает тип сервиса обнаруженного устройства
<> - не совпадает тип сервиса обнаруженного устройства.
Порт сервиса =
<>
Проверяется входит ли номер TCP порта в указанный диапазон портов.
= - порт входит в диапазон
<> - порт не входит в диапазон.
Правило обнаружения =
<>
Проверяется соответствует ли указанному правилу обнаружения обнаруженный узел сети.
= - не соответствует указанному правилу обнаружения
<> - соответствует указанному правилу обнаружения.
Проверка обнаружения =
<>
Проверяется соответствует ли указанной проверке обнаружения обнаруженный узел сети.
= - соответствует указанной проверке обнаружения
<> - не соответствует указанной проверке обнаружения.
Обнаруженный объект =Проверяется, чем является обнаруженный объект устройство или сервис.
Состояние обнаружения =Доступен – Событие обнаружения узла сети или сервиса соответствует Доступен.
Недоступен – Событие обнаружения узла сети или сервиса соответствует Недоступен.
Обнаружен – Событие обнаружения узла сети или сервиса соответствует Обнаружен
Потерян – Событие обнаружения узла сети или сервиса соответствует Потерян
Доступен/Недоступен >=
<=
Продолжительность недоступности для событий недоступности узла сети или сервиса. Продолжительность доступности для событий доступности узла сети или сервиса.
>= - доступен/недоступен равно или более чем
<= - доступен/недоступен равно или менее чем. Параметр указывается в секундах.
Полученное значение =
<>
>=
<=
не содержит
содержит
Сравнение с полученным значением от агента (Zabbix, SNMP). Сравнение строки.
= - равняется значению
<> - не равняется значению
>= - равно или более чем значение
<= - равно или менее чем значение
содержит – содержит как подстроку
не содержит – не содержит как подстроку. Параметр задается строковым значением.
Прокси =
<>
Проверяется под управлением какого Zabbix прокси обнаружен узел сети.
= - соответствует указанному прокси-серверу
<> - не соответствует указанному прокси-серверу.

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

Тип условия Поддерживаемые операнды Описание
Имя узла сети содержит
не содержит
Проверяется содержит ли обнаруженное устройство в имени узла сети указанный текст.
содержит - узел сети содержит указанную информацию в имени узла сети
не содержит - узел сети не содержит указанную информацию в имени узла сети.
Прокси =
<>
Проверяется под управлением какого Zabbix прокси обнаружен объект..
= - соответствует указанному прокси-серверу
<> - не соответствует указанному прокси-серверу.

Для примера рассмотрим следующий набор условий (тип вычисления: AND/OR):

  • Группа узлов сети = Oracle servers
  • Группа узлов сети = MySQL servers
  • Имя триггера содержит ‘Database is down’
  • Имя триггера содержит ‘Database is unavailable’

будет вычисляться так:

(Группа узлов сети = Oracle servers или Группа узлов сети = MySQL servers) и (Имя триггера содержит 'Database is down' или Имя триггера содержит 'Database is unavailable')

Операции

Операции или набор операций выполняются если событие соответствует условиям.

Zabbix поддерживает следующие операции:

Для успешной получения и чтения e-mail писем от Zabbix, почтовые сервера/клиенты должны поддерживать стандарт формата 'SMTP/MIME e-mail' когда Zabbix отправляет данные в UTF-8. Начиная с версии 1.8.2 тема и тело сообщения кодируются в base64 для соответствия стандарту 'SMTP/MIME e-mail'

Начиная с 1.8.3, если тема сообщения содержит только ASCII символы, тогда она не кодируется в UTF-8.

Дополнительные операции доступны для событий обнаружения:

  • Добавить узел сети
  • Удалить узел сети
  • Активировать узел сети
  • Деактивировать узел сети
  • Добавить в группу
  • Удалить из группы
  • Присоединить к шаблону
  • Отсоединить от шаблона

При добавлении узла сети, его имя будет получено (разрешено) с помощью стандартной функции gethostbyname. Если имя узла сети разрешается, тогда используется полученое имя. Если нет, тогда используется IP адрес. Кроме того, если IPv6 адрес используется для имени узла сети, тогда все ”:” (двоеточия) заменяются на “_” (подчеркивание), потому что ”:” (двоеточия) не разрешены в имени узлов сети.

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

Если новый обнаруженный узел сети уже существует в настройках Zabbix с таким же именем, тогда в версиях Zabbix до 1.8 обнаруженные узлы добавлялись с таким же именем. Начиная с версии Zabbix 1.8.1 новым узлам сети автоматически добавляется _N в конец имени, где N увеличивающееся число, начиная с 2.

Аттрибуты операций:

Параметр Описание
Шаг Если включена эскалация для этого действия, тогда доступны следующие параметры:
От - выполнять на каждом шагу начиная с первого
К - до этого (0, для всех шагов начиная с От)
Период - переход к следующему шагу после заданного периода, 0 - использовать период по умолчанию.
Тип операции Тип действия:
Отправить сообщение - отправка сообщения пользователю
Удаленная команда - выполнить удаленную команду
Источник события
Отправить сообщение Отправить сообщение:
Одному пользователь - одному пользователю
Группе пользователей - всем членам группы пользователей
Сообщение по умолчанию Если выбрано, то будет использоваться сообщение по умолчанию.
Отправлять только Выбор какое из возможных средств передачи использовать для отправки сообщения (Все средства передачи или конкретное).
Тема Тема сообщения. Тема может содержать макросы.
Сообщение Непосредственно сообщение. Сообщение может содержать макросы.
Удаленная команда Список удаленных команд.
Условия Используется при эскалированном действии на сработавший триггер. Может принимать значения для подтвержденного события на триггер “Не подтверждено” или “Подтверждено”

Начиная с версии 1.6.2, Zabbix отправляет оповещения только тем пользователям, которые имеют по крайней мере права на чтение узла сети (триггера), сгенерировавшего событие. По крайней мере один узел сети из выражения триггера должен быть доступен пользователю.

Как и некоторые триггеры, генерирование события может быть определено для каждого вычисления триггера ПРОБЛЕМА. Стоит отметить, что если определены эскалации для действий над этими событиями, то выполнение каждой новой эскалации заменяет предыдующую эскалацию, но по крайней мере один шаг эскалации всегда выполняется от предыдущей эскалации.

Макросы для сообщений и удаленные команды

Макросы могут быть использованы для более эффективного оповещения.

Пример 1

Тема:

{TRIGGER.NAME}: {TRIGGER.STATUS}

Тема реального сообщения будет заменена на нечто вроде:

Processor load is too high on server www.zabbix.com: PROBLEM
Пример 2

Сообщение:

Загрузка процессора: {zabbix.zabbix.com:system.cpu.load[,avg1].last(0)}

Реальное сообщение будет заменено на нечто вроде:

Загрузка процессора: 1.45
Пример 3

Сообщение:

Последнее значение: {{HOSTNAME}:{TRIGGER.KEY}.last(0)}
Максимум за 15 минут: {{HOSTNAME}:{TRIGGER.KEY}.max(900)}
Минимум за 15 минут: {{HOSTNAME}:{TRIGGER.KEY}.min(900)}

Реальное сообщение будет заменено на нечто вроде:

Последнее значение: 1.45
Максимум за 15 минут: 2.33
Минимум за 15 минут: 1.01
 

2 Макросы

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

Список поддерживаемых макросов

В таблице содержится полный список поддерживаемых макросов Zabbix. X обозначает “поддерживается”.

Имена элементов данных Описание
Имена триггеров▼▼
Выражения триггеров▼▼
Подписи на картах1▼▼
Параметры ключей элементов данных▼▼
GUI скрипты▼▼
Оповещения авторегистрации▼▼
Оповещения обнаружения▼▼
Оповещения и команды▼▼
МАКРОС ▼▼
­ ▼▼ 1 2 3 4 5 6 7 8 9
{DATE} XXX Текущая дата в формате yyyy.mm.dd.
{DISCOVERY.DEVICE.IPADDRESS} X IP адрес обнаруженного устройства. Доступно всегда, не зависит от того добавлен узел сети или нет.
{DISCOVERY.DEVICE.STATUS} X Состояние обнаруженного устройства: может быть ДОСТУПЕН или НЕДОСТУПЕН.
{DISCOVERY.DEVICE.UPTIME} X Время с момента последнего изменения состояния обнаружения для конкретного устройства.
Например: 1ч 29м.
Для устройств с состоянием НЕДОСТУПЕН этот период указывает время недоступности.
{DISCOVERY.RULE.NAME} X Название правила обнаружения, которое обнаружило наличие или отсутствие устройства или сервиса.
{DISCOVERY.SERVICE.NAME} X Имя сервиса, которое было обнаружено.
Например: HTTP.
{DISCOVERY.SERVICE.PORT} X Порт на котором сервис был обнаружен.
Например: 80.
{DISCOVERY.SERVICE.STATUS} X Состояние сервиса правила обнаружения: может быть ДОСТУПЕН или НЕДОСТУПЕН.
{DISCOVERY.SERVICE.UPTIME} X Время с момента последнего изменения состояния обнаружения для конкретного сервиса.
Например: 1ч 29м.
Для сервисов с состоянием НЕДОСТУПЕН этот период указывает время недоступности.
{ESC.HISTORY} X История эскалаций. Журнал предыдущих отправленных сообщений. Отображает предыдущие отправленные оповещения, на котором шаге эскалации они были отправлены и их статус (отправлено, в процессе и ошибка).
{EVENT.ACK.HISTORY} X
{EVENT.ACK.STATUS} X
{EVENT.AGE} XXX Возраст события. Полезно в сообщениях эскалации.
{EVENT.DATE} XXX Дата события.
{EVENT.ID} XXX Код (ID) события, вызвавшего это действие.
{EVENT.TIME} XXX Время события.
{HOSTNAME<1-9>} X X XX X Имя узла сети N-го элемента данных из триггера вызвавшего это оповещение. Поддерживается в оповещениях авторегистрации начиная с версии 1.8.4.
{HOST.CONN<1-9>} X XXX IP или DNS имя узла сети, зависимо от его настроек.
{HOST.DNS<1-9>} X XXX DNS имя узла сети.
1 2 3 4 5 6 7 8 9
{IPADDRESS<1-9>} X XXX IP адрес N-го элемента данных триггера вызвавшего это оповещение.
{ITEM.LASTVALUE<1-9>} X X Последнее значение элемента данных N-го элемента данных в выражении триггера вызвавшего это оповещение. Поддерживается начиная с 1.4.3. Это алиас для {{HOSTNAME}:{TRIGGER.KEY}.last(0)}
{ITEM.LOG.AGE<1-9>} X
{ITEM.LOG.DATE<1-9>} X
{ITEM.LOG.EVENTID<1-9>} X
{ITEM.LOG.NSEVERITY<1-9>} X
{ITEM.LOG.SEVERITY<1-9>} X
{ITEM.LOG.SOURCE<1-9>} X
{ITEM.LOG.TIME<1-9>} X
{ITEM.NAME<1-9>} X Имя N-го элемента данных в выражении триггера, вызвавшего это оповещение.
{ITEM.VALUE<1-9>} X X Последнее значение N-го элемента данных в выражении триггера, если используется для отображения триггеров.
Историческое значение (точно когда произошло событие) N-го элемента данных из выражения триггера, если используется для отображения событий и оповещений. Поддерживается начиная с Zabbix 1.4.3.
{NODE.ID<1-9>} XXX ID ноды
{NODE.NAME<1-9>} XXX Имя ноды
{PROFILE.CONTACT<1-9>} X Контакт из профиля узла сети.
{PROFILE.DEVICETYPE<1-9>} X Тип устройства из профиля узла сети.
{PROFILE.HARDWARE<1-9>} X Аппаратное обеспечение из профиля узла сети.
{PROFILE.LOCATION<1-9>} X Размещение устройства из профиля узла сети.
1 2 3 4 5 6 7 8 9
{PROFILE.MACADDRESS<1-9>} X MAC адрес из профиля узла сети.
{PROFILE.NAME<1-9>} X Имя из профиля узла сети.
{PROFILE.NOTES<1-9>} X Заметки из профиля узла сети.
{PROFILE.OS<1-9>} X ОС из профиля узла сети.
{PROFILE.SERIALNO<1-9>} X Серийный номер из профиля узла сети.
{PROFILE.SOFTWARE<1-9>} X Программное обеспечение из профиля узла сети.
{PROFILE.TAG<1-9>} X Метка из профиля узла сети.
{PROXY.NAME<1-9>}XXX Имя прокси N-го триггера вызвавшего оповещение. Поддерживается начиная с версии 1.8.4.
{STATUS} X Алиас для {TRIGGER.STATUS}.
{TIME} XXX Текущее время в формате чч:мм.сс.
{TRIGGER.COMMENT} X Комментарий к триггеру.
{TRIGGER.EVENTS.UNACK} X X Количество неподтвержденных событий для элемента на картах сетей или для триггера, вызвавшего текущее событие в уведомлениях. Поддерживается в подписях к элементам карт начиная с версии 1.8.3.
{TRIGGER.EVENTS.PROBLEM.UNACK} X X Количество неподтвержденных событий ПРОБЛЕМА для всех триггеров изменивших свое состояние, без учета их состояния. Поддерживается начиная с версии 1.8.3.
{TRIGGER.PROBLEM.EVENTS.PROBLEM.UNACK} X Количество неподтвержденных событий ПРОБЛЕМА для триггеров в состоянии ПРОБЛЕМА. Поддерживается начиная с 1.8.3.
{TRIGGER.EVENTS.ACK} X X Количество подтвержденных событий для элемента на картах сетей, или для триггера вызвавшего текущее событие в уведомлениях. Поддерживается начиная с 1.8.3.
{TRIGGER.EVENTS.PROBLEM.ACK} X X Количество подтвержденных событий ПРОБЛЕМА для всех триггеров, без учета их состояния. Поддерживается начиная с 1.8.3.
{TRIGGER.PROBLEM.EVENTS.PROBLEM.ACK} X Количество подтвержденных событий ПРОБЛЕМА для триггеров в состоянии ПРОБЛЕМА. Поддерживается начиная с 1.8.3.
1 2 3 4 5 6 7 8 9
{TRIGGER.ID} X Код (ID) триггера вызвавшего это действие.
{TRIGGER.KEY<1-9>} X Ключ N-го элемента данных в выражении триггера, вызвавшего это действие.
{TRIGGER.NAME} X Имя (описание) триггера.
{TRIGGER.NSEVERITY} X Числовое представление важности триггера. Возможные значения: 0 - Не классифицировано, 1 - Информация, 2 - Предупреждение,3 - Средняя, 4 - Высокая, 5 - Чрезвычайная, Поддерживается начиная с Zabbix 1.6.2.
{TRIGGER.SEVERITY} X Важность триггера. Возможные значения: Not classified, Information, Warning, Average, High, Disaster, Unknown
{TRIGGER.STATUS} X Состояние триггера. Может быть ПРОБЛЕМА или ОК. {STATUS} устарел.
{TRIGGER.URL} X URL триггера.
{TRIGGER.VALUE} X X Текущее значение триггера: 0 - если триггер в состоянии ОК, 1 – если триггер в состоянии ПРОБЛЕМА, 2 – если триггер в состоянии НЕИЗВЕСТНО. Этот макрос может быть использован в выражениях триггеров.
{TRIGGERS.UNACK} X Количество неподтвержденных триггеров для элемента на картах сетей, без учета состояния триггера. Триггер считается не подтвержденным, если хотя бы одно его событие ПРОБЛЕМА не подтверждено. Поддерживается начиная 1.8.3.
{TRIGGERS.PROBLEM.UNACK} X Количество неподтвержденных триггеров в состоянии ПРОБЛЕМА для элемента на картах сетей. Поддерживается начиная с версии 1.8.3.
{TRIGGERS.ACK} X Количество подтвержденных триггеров для элемента на картах сетей, без учета состояния триггера. Триггер считается не подтвержденным, если все его события ПРОБЛЕМА подтверждены. Поддерживается начиная 1.8.3.
{TRIGGERS.PROBLEM.ACK} X Количество подтвержденных триггеров ПРОБЛЕМА для элемента на картах сетей. Триггер считается подтвержденным, если все его события ПРОБЛЕМА подтверждены. Поддерживается начиная с 1.8.3.
{host:key.func(param)} X X2X Простой макрос используется в выражении триггера.
{$MACRO} X XXXПользовательские макросы. Поддерживается в именах триггеров и в описаниях элементов данных начиная с версии 1.8.4.
1 2 3 4 5 6 7 8 9

[1]Макросы для подписей на карте сети поддерживаются начиная с 1.8.
[2]В подписях на карте сети поддерживаются только функции last, avg, max и min с секундами в качестве аргумента.

Макрос {TRIGGER.ID} поддерживается в URL триггера начиная с Zabbix 1.8.8.

Пользовательские макросы

Для большей гибкости, Zabbix поддерживает пользовательские макросы, которые могут быть определены на глобальном уровне, на уровне шаблонов и на уровне узлов сети. Эти макросы имеют специальный синтаксис: {$MACRO}. Макросы могут быть использованы в ключах элементов данных и в выражениях триггеров. Начиная с Zabbix версии 1.8.4 пользовательские макросы так же возможно использовать в описаниях элементов данных и в именах триггеров.

Следующие символы допустимы в именах макросов: A-Z , 0-9 , _ , .

Zabbix замещает макросы в соответствии со следующей очередностью:

  1. макрос назначенный узлу сети (проверяется в первую очередь)
  2. макрос назначенный первому уровню шаблонов у узла сети(т.е. шаблоны присоединенные напрямую к узлу сети), которые отсортированы по ID шаблона
  3. макрос назначенный второму уровню шаблонов у узла сети, которые отсортированы по ID шаблона
  4. макрос назначенный третьему уровню шаблонов у узла сети, которые отсортированы по ID шаблона
  5. глобальные макросы (проверяется в последнюю очередь)

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

В случае, если Zabbix не удалось найти макрос, макрос не будет заменен на значение.

Для определения пользовательского макроса, перейдите в соответствующие разделы в веб-интерфейсе:

  • для глобальных макросов, откройте Администрирование → Общие → Макросы
  • для макросов на уровне узлов сети и шаблонов, откройте свойства узла сети или шаблона и найдите блок Макросы с правой стороны страницы

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

Наиболее общие случаи использования глобальных макросов и макросов уровня узлов сети:

  1. используются шаблоны со специфичными для узла сети атрибутами: пароли, номера портов, имена файлов, регулярные выражения, и т.д.
  2. глобальные макросы для глобального изменения конфигурации через “одно нажатие” и более тонкой настройки
Пример 1

Использование макроса в ключе элемента данных “Status of SSH daemon”:

ssh,{$SSH_PORT}

Пример 2

Использование макроса уровня узла сети в триггере “CPU load is too high”:

{ca_001:system.cpu.load[,avg1].last(0)}>{$MAX_CPULOAD}

Если вы хотите использовать количество значений в качестве параметра функции (например, max(#3)), включите символ решетки # непосредственно в значение макроса, например вот так: SOME_PERIOD ⇒ #3

Пример 3

Использование двух макросов в триггере “CPU load is too high”:

{ca_001:system.cpu.load[,avg1].min({$CPULOAD_PERIOD})}>{$MAX_CPULOAD}

Заметьте, что макрос может быть использован в качестве параметра для функции триггера, в этом примере для функции min().

Пользовательские макросы поддерживаются в строке SNMP OID начиная с Zabbix 1.8.4.

 

3 Группы элементов данных

Группа элементов данных представляет собой набор элементов данных для узла сети. Например, группа элементов данных ‘MySQL Server’ может содержать все элементы данных, которые относятся к серверу MySQL: доступность MySQL, размер на диске, загруженность процессора, количество операций в секунду, количество медленных запросов и т.д.

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

Группы элементов данных используются в веб-интерфейсе Zabbix для группировки элементов данных.

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

 

4 Графики

Пользовательские графики позволяют создавать сложные (состоящие из нескольких элементов данных) графики.

Такие графики, однажды настроенные, потом можно легко использовать через меню Мониторинг→Графики.

Настройку пользовательских графиков можно легко осуществить перейдя в Настройка→Шаблоны или Настройка→Узлы сети и нажав на ссылку Графики у соответствующего шаблона или узла сети.

При создании нового графика, первый элемент данных может быть выбран из любого шаблона или узла сети. Затем, в зависимости от Вашего выбора, последующие элементы данных могут быть добавлены :

1. если первый элемент данных был выбран из шаблона, тогда только из этого шаблона;
2. если первый элемент данных был выбран из любого узла сети, тогда из любого узла сети (но уже не из шаблонов)

 

5 Способы оповещений

Способы оповещений являются каналами передачи оповещений от Zabbix сервера. Один или более способов оповещений могут быть назначены одному пользователю.

Email

Оповещения по электронной почте.

Jabber

Оповещение, используя сообщения Jabber.

При отправке оповещений, Zabbix попытается найти первую запись SRV Jabber, и если не удалось найти, тогда будет использоваться адрес записи этого домена. Среди записей SRV Jabber, будет выбрана одна с наивысшим приоритетом и с максимальным весом. Если не удалось найти такую запис, другие записи проверяться не будут.

Обзор записей SRC Jabber поддерживается начиная с Zabbix 1.8.6. До этой версии Zabbix пытался найти только запись адреса.

Скрипты

Пользовательские медиа скрипты выполняются из пути указанного в конфигурационном файле Zabbix сервера в переменной AlertScriptPath. Скрипт должен иметь три параметра коммандной строки, получаемые в порядке:

  • Получатель
  • Тема
  • Сообщение

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

GSM модем

Zabbix поддерживают отправку СМС сообщений, используя GSM-модем, подключенный к последовательному порту Zabbix сервера.

Убедитесь, что:

  • Скорость последовательного устройства (обычно это /dev/ttyS0 под Linux) совпадает со скоростью GSM-модема. Zabbix не устанавливает скорость для последовательного соединения. Он использует настройки по умолчанию.
  • Пользователь Zabbix имеет доступ на чтение/запись в последовательное устройство. Выполните команду ls -l /dev/ttyS0, чтобы увидеть текущие права доступа к последовательному устройству.
  • В GSM-модеме введен ПИН-код и он сохраняется даже после перезагрузки модема. Помимо этого, вы можете отключить запрос ПИН-кода для самой SIM карточки. ПИН-код может быть введен путем использования команды AT + CPIN = “NNNN” (где NNNN это ваш ПИН-код, квычки должны присутствовать) в терминальном приложении, в таких как Minicom или HyperTerminal в Unix или Windows соответственно.

Zabbix был протестирован на следующих модемах GSM:

  • Siemens MC35
  • Teltonika ModemCOM/G10
 

6 Шаблоны узлов сети

Использование шаблонов это отличный способ сделать управление системой Zabbix более простой.

Шаблон может быть присоединен к любому количеству узлов сети. Элементы данных, триггеры и графики шаблона будут автоматически добавлены к связанному узлу сети. Измените любые элементы шаблона (элементы данных, триггер, графики) и изменения будут автоматически применены к узлам сети, связанным с этим шаблоном .

Атрибуты шаблона узла сети:

Параметр Описание
Имя Уникальное имя шаблона (узла сети). Имя должно быть уникальным в пределах каждой Zabbix ноды.
Группы Список групп узлов сети, к которым шаблон принадлежит.
Новая группа Назначение шаблону новой группы узлов сети.
Узлы сети|Шаблоны Связывание шаблона с указанными узлами сети или другими шаблонами.
Соединить с шаблоном Используется для создания иерархии шаблонов.
Макрос Использование макросов на уровне шаблонов.
 

7 Группы узлов сети

Группа узлов сети может содержать один, несколько улов сети или не содержать их вообще.

Атрибуты групп узлов сети:

Параметр Описание
Название группы Уникальное имя группы узлов сети. Имя должно быть уникальным в пределах Zabbix ноды.
Узлы сети Список узлов сети включенных в эту группу.
 

8 Узлы сети и зависимости триггеров

Zabbix не поддерживает зависимостей для узлов сети. Зависимости для узлов сети могут быть заданы с использованием более гибкого способа - зависимостей триггеров.

Как это работает?

Триггер может иметь список из одного или более зависимых триггеров. Это означает, что триггер будет все же менять свое состояние независимо от состояния триггеров в списке, но триггер не будет генерировать оповещения и действия в случае, если один из триггеров в списке находится в состоянии ПРОБЛЕМА .

Пример 1

Зависимость узла сети

Предположим, у вас есть два узла сети: маршрутизатор и сервер. Сервер находится за маршрутизатором. Таким образом, мы хотим получать только одно уведомление, если маршрутизатор недоступен:

“The router is down”

вместо:

“The router is down” и “The host is down”

Для того чтобы добиться этого, мы создаем зависимость у триггера:

"The host is down" зависит от "The router is down"

В случае, если сервер и маршрутизатор будут недоступны, Zabbix не будет выполнять действия для триггера “The host is down”.

 

19 Элементы данных

Элемент данных - это одиночная проверка (метрика) производительности или доступности.

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

19.1.1 Гибкие и не гибкие параметры

Параметр является гибким, если он может принимать аргументы. Например, параметр vfs.fs.size[*] является гибким. * означает любую строку, которая будет передана в как аргумент параметру. Примеры правильных определений:

  • vfs.fs.size[/]
  • vfs.fs.size[/etc]
19.1.2 Формат ключа

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

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

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

Имя ключа

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

0-9a-zA-Z_-.

Что означает:

  • все цифры;
  • все буквы в нижнем регистре;
  • все буквы в верхнем регистре;
  • подчеркивание;
  • тире;
  • точка.

Параметры ключа

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

Индивидуальный параметр ключа

Каждый параметр ключа может быть одним из: строка заключенная в кавычки, строка без кавычек, массив.

Параметр можно оставить пустым и тогда будет использоваться значение по умолчанию. В этом случае Вы должны добавить соответствующее количество запятых, если какой-то из дальнейших параметров все же нужно задать. Например, ключ элемента данных icmpping[,,200,,500] будет указывать на то, что период проверки ping 200 миллисекунд, таймаут - 500 миллисекунд, а все остальные параметры будут заполнены значениями по умолчанию.

Параметр - строка заключенная в кавычки

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

Параметр - строка не заключенная в кавычки

Если параметр ключа это строка без кавычек, тогда разрешен любой символ в Юникоде, за исключением запятой и правой квадратной скобки (]).

Параметр - массив

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

19.1.3 Доступные кодировки

Параметр “кодировка” используется для задания специфичной кодировки для обработки элементов данных, так что полученные данные не будут повреждены. Для получения списка поддерживаемых кодировок (идентификаторы кодовых страниц), пожалуйста, обратитесь к соответствующей документации, таких документаций как libiconv (GNU Project) или Microsoft Windows SDK “Идентификаторы кодовых страниц”. Если параметр “кодировка” не задан, тогда используется ANSI по умолчанию с определенным расширением в системе (Windows) или UTF-8 (локаль по умолчанию для новых дистрибутивов Unix/Linux, смотрите настройки вашей системы).

19.2 Не поддерживаемые элементы данных

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

19.3 Поддержка по платформам

В следующих списках параметры, заключенные в угловые скобки, <например_такие> есть опциональными.

Если элемент данных обозначен символом “X” тогда он поддерживается, если другим символом ”-” тогда не поддерживается.
Если элемент обозначен символом ”?”, значит неизвестно поддерживается он или нет.
Если элемент обозначен символом “r”, значит он требует root привилегий.
Если элемент обозначен символом “i”, значит он игнорируется.

NetBSD
OpenBSD▼▼
Mac OS X▼▼
Tru64▼▼
AIX▼▼
HP-UX▼▼
Solaris▼▼
FreeBSD▼▼
Linux 2.6▼▼
Linux 2.4▼▼
Windows▼▼
Параметр / система ▼▼
▼▼ 1 2 3 4 5 6 7 8 9 10 11
agent.ping X X X X X X X X X X X
agent.version X X X X X X X X X X X
kernel.maxfiles - X X X - - - ? X X X
kernel.maxproc - - X X X - - ? X X X
log[файл,<regexp>,<кодировка>,<макс. кол-во строк>] X X X X X X X X X X X
logrt[формат_файла,<regexp>,<кодировка>,<макс. кол-во строк>] X X X X X X X X X X X
eventlog[имя,<regexp>,<важность>,<ресурс>,<eventid>,
<макс. кол-во строк>]
X - - - - - - - - - -
net.if.collisions[if] - X X X X - X - - X r
net.if.in[if,<режим>] X X X X X - X - - X r
режимbytes (по умолч.) X X X X X - X - - X r
packets X X X X X - X - - X r
errors X X X X X - X - - X r
dropped X X X X - - - - - X r
net.if.list X - - - - - - - - - -
net.if.out[if,<режим>] X X X X X - X - - X r
режимbytes (по умолч.) X X X X X - X - - X r
packets X X X X X - X - - X r
errors X X X X X - X - - X r
dropped X X X - - - - - - - -
net.if.total[if,<режим>] X X X X X - X - - X r
режимbytes (по умолч.) X X X X X - X - - X r
packets X X X X X - X - - X r
errors X X X X X - X - - X r
dropped X X X - - - - - - - -
net.tcp.dns[<ip>,зона] - X X X X X X X X X X
net.tcp.dns.query[<ip>,зона,<тип>] - X X X X X X X X X X
net.tcp.listen[порт] X X X X X - - - - - -
net.tcp.port[<ip>,порт] X X X X X X X X X X X
net.tcp.service.perf[сервис,<ip>,<порт>] X X X X X X X X - X X
net.tcp.service[сервис,<ip>,<порт>] X X X X X X X X - X X
net.udp.listen[порт] - X X - - - - - - - -
1 2 3 4 5 6 7 8 9 10 11
proc.mem[<имя>,<пользователь>,<режим>,<cmdline>] - X X X X - X X ? X X
режимsum (по умолч.) - X X X X - X X ? X X
avg - X X X X - X X ? X X
max - X X X X - X X ? X X
min - X X X X - X X ? X X
proc.num[<имя>,<пользователь>,<состояние>,<cmdline>] X X X X X - X X ? X X
состояниеall (по умолч.) - X X X X - X X ? X X
sleep - X X X X - X X ? X X
zomb - X X X X - X X ? X X
run - X X X X - X X ? X X
sensor[устройство,датчик,<режим>] - X - - - - - - - X -
services[<тип>,<состояние>,<исключение>] X - - - - - - - - - -
system.boottime - X X X X - - - - X X
system.cpu.intr - X X X X - X - - X X
system.cpu.load[<cpu>,<режим>] X X X X X X - X ? X X
режимavg1 (по умолч.) X X X X X X - X ? X X
avg5 X X X X X X - X ? X X
avg15 X X X X X X - X ? X X
system.cpu.num[<тип>] X X X X X X X - - X X
типonline (по умолч.) X X X X X X X - - X X
max - X X X X - - - - - -
system.cpu.switches - X X X X - X - - X X
system.cpu.util[<cpu>,<тип>,<режим>] X X X X X X X X ? X X
типuser (по умолч.) - X X X X X X X ? X X
nice - X X X - X - X ? X X
idle - X X X X X X X ? X X
system X X X X - X X X ? X X
kernel - - - - X - - - - - -
iowait - - X - - - X - - - -
wait - - - - X - - - - - -
interrupt - - X X - - - - - X -
softirq - - X - - - - - - - -
steal - - X - - - - - - - -
режимavg1 (по умолч.) X X X X - X X X ? X -
avg5 X X X X - X X - ? X -
avg15 X X X X - X X - ? X -
1 2 3 4 5 6 7 8 9 10 11
system.hostname[<тип>] X X X X X X X X X X X
system.localtime X X X X X X X X X X X
типutc (по умолч.) X X X X X X X X X X X
local X X X X X X X X X X X
system.run[команда,<режим>] X X X X X X X X X X X
режимwait (по умолч.) X X X X X X X X X X X
nowait X X X X X X X X X X X
system.stat[ресурс,<тип>] - - - - - - X - - - -
system.swap.in[<устройство>,<тип>] - X X - X - - - - X -
типcount (по умолч.) - X X - X - - - - X -
sectors - X X - - - - - - - -
pages - X X - X - - - - X -
system.swap.out[<устройство>,<тип>] - X X - X - - - - X -
типcount (по умолч.) - X X - X - - - - X -
sectors - X X - - - - - - - -
pages - X X - X - - - - X -
system.swap.size[<устройство>,<тип>] X X X X X - - X ? X -
типfree (по умолч.) X X X X X - - X ? X -
total X X X X X - - X ? X -
used - X X X - - - - - X -
pfree - X X X X - - - ? X -
pused - X X X X - - - ? X -
system.uname X X X X X X X X - X X
system.uptime X X X X X - X ? ? X X
system.users.num - X X X X X X X - X X
1 2 3 4 5 6 7 8 9 10 11
vfs.dev.read[устройство,<тип>,<режим>] - X X X X - - - - X -
типsectors (по умолч.) - X X - - - - - - - -
operations - X X X X - - - - X -
bytes - - - X X - - - - X -
sps - X X - - - - - - - -
ops - X X X - - - - - - -
bps - - - X - - - - - - -
режимavg1 - X X X - - - - - i -
avg5 - X X X - - - - - i -
avg15 - X X X - - - - - i -
vfs.dev.write[устройство,<тип>,<режим>] - X X X X - - - - X -
типsectors (по умолч.) - X X - - - - - - - -
operations - X X X X - - - - X -
bytes - - - X X - - - - X -
sps - X X - - - - - - - -
ops - X X X - - - - - - -
bps - - - X - - - - - - -
режимavg1 (по умолч.) - X X X - - - - - i -
avg5 - X X X - - - - - i -
avg15 - X X X - - - - - i -
vfs.file.cksum[файл] X X X X X X X X - X X
vfs.file.exists[файл] X X X X X X X X X X X
vfs.file.md5sum[файл] X X X X X X X X - X X
vfs.file.regexp[файл,regexp,<кодировка>] X X X X X X X X - X X
vfs.file.regmatch[файл,regexp,<кодировка>] X X X X X X X X - X X
vfs.file.size[файл] X X X X X X X X - X X
1 2 3 4 5 6 7 8 9 10 11
vfs.file.time[файл,<режим>] X X X X X X X X - X X
режимmodify (по умолч.) X X X X X X X X - X X
access X X X X X X X X - X X
change X X X X X X X X - X X
vfs.fs.inode[fs,<режим>] - X X X X X X X ? X X
режимtotal (по умолч.) - X X X X X X X ? X X
free - X X X X X X X ? X X
used - X X X X X X X ? X X
pfree - X X X X X X X ? X X
pused - X X X X X X X ? X X
vfs.fs.size[fs,<режим>] X X X X X X X X ? X X
режимtotal (по умолч.) X X X X X X X X ? X X
free X X X X X X X X ? X X
used X X X X X X X X ? X X
pfree X X X X X X X X ? X X
pused X X X X X X X X ? X X
vm.memory.size[<режим>] X X X X X X X X ? X X
режимtotal (по умолч.) X X X X X X X X ? X X
free X X X X X X X X ? X X
used - - - X - - - - - X X
shared - X X X - X X - ? X X
buffers - X X - - X X - ? X X
cached X X X X - X X - ? X X
pfree X X X X - - - - - X X
pused - - - X - - - - - X X
available - X X - - - - - - - -
web.page.get[хост,<путь>,<порт>] X X X X X X X X X X X
web.page.perf[хост,<путь>,<порт>] X X X X X X X X X X X
web.page.regexp[хост,<путь>,<порт>,<regexp>,<длина>] X X X X X X X X X X X
1 2 3 4 5 6 7 8 9 10 11

19.4 Zabbix агент

Список поддерживаемых параметров

Ключ
Описание Возвращаемое
значение
Параметры Комментарии
agent.ping
Проверка доступности агента. Возвращает ‘1’, если доступен и ничего не возвращает, если недоступен. - Может быть использовано как TCP ping. Используйте функцию nodata() для проверки недоступности хоста.
agent.version
Версия Zabbix агента. Строка - Пример возвращаемого значения: 1.8.2
kernel.maxfiles
Максимальное количество открытых файлов поддерживаемое ОС. Количество файлов. Целочисленное.
kernel.maxproc
Максимальное количество процессов поддерживаемое ОС. Количество процессов. Целочисленное.
log[файл,<regexp>,<кодировка>,<макс кол-во строк>]
Мониторинг файлов журналов (логов). Журнал файл – полное имя файла
regexp – регулярное выражение для шаблона
кодировка - Идентификатор кодовой страницы
максимальное количество строк - Максимальное количество новых строк в секунду, которое может отправить агент Zabbix серверу или Прокси. Этот параметр заменяет опцию 'MaxLinesPerSecond' в zabbix_agentd.conf
Должен быть настроен как Активная проверка.
Например:
log[/home/zabbix/logs/logfile,,,100]
Более подробную информацию смотрите здесь
logrt[имя файла в формате,<regexp>,<кодировка>,<макс кол-во строк>]
Мониторинг файлов журналов (логов) с поддержкой ротации логов. Журнал имя файла в формате – имя файла в формате [абсолютный путь][имя файла в формате регулярного выражения]
regexp – регулярное выражения для шаблона
кодировка - Идентификатор кодовой страницы
максимальное количество строк - Максимальное количество новых строк в секунду, которое может отправить агент Zabbix серверу или Прокси. Этот параметр заменяет опцию 'MaxLinesPerSecond' в zabbix_agentd.conf
Должен быть настроен как Активная проверка.
Например:
logrt[“\home\zabbix\logs\^logfile[0-9]{1,3}$”,,,100]
Ротация логов базируется на времени последнего изменения файлов.
Более подробную информацию смотрите здесь
eventlog[имя,<regexp>,<важность>,<источник>,<eventid>,<макс. кол-во строк>]
Мониторинг журналов событий. Log. имя – имя журнала событий
regexp – регулярное выражение
важность – важность события
Параметр может принимать следующие значения: “Information”, “Warning”, “Error”, “Failure Audit”, “Success Audit”
источник - Имя источника
eventid - регулярное выражение
максимальное количество строк - Максимальное количество новых строк в секунду, которое агент может отправить Zabbix Серверу или Прокси. Этот параметр заменяет опцию 'MaxLinesPerSecond' в zabbix_agentd.conf
Должен быть настроен как Активная проверка.
Например:
eventlog[Application]

eventlog[Security,,"Failure Audit",,529|680]

eventlog[System,,"Warning|Error"]

eventlog[System,,,,^1$]

eventlog[System,,,,@TWOSHORT] - здесь регулярное выражение с именем TWOSHORT, определено в веб-интерфейсе с типом результата Результат TRUE и самим выражением ^1$|^70$.
net.if.collisions[if]
Коллизии Out-of-window. Количество коллизий. Целочисленное. if - интерфейс
net.if.in[if,<режим>]
Входящая статистика по сетевому интерфейсу. Целочисленное. if - интерфейс
режим
bytes количество байт (по умолчанию)
packets количество пакетов
errors количество ошибок
dropped количество отброшенных пакетов
Начиная с версии 1.8.6 Zabbix агента поддерживаются мултибайтные имена интерфейса.
\\Примеры:
net.if.in[eth0,errors]
net.if.in[eth0]
Вы должны использовать для этого ключа Дельта (изменение в секунду), чтобы получить статистику по байтам в секунду.
net.if.list
Список сетевых интерфейсов: Тип Состояние IPv4 Описание Строковое Поддерживается Zabbix агентом начиная с версии 1.8.1. Начиная с версии 1.8.6 Zabbix агента поддерживаются мултибайтные имена интерфейса. Отключенные интерфесы не добавляются в список.

Обратите внимание, что включение/отключение некоторых компонентов Windows могут изменить порядок имени интерфейса в Windows.
net.if.out[if,<режим>]
Исходящая статистика по сетевому интерфейсу. Целочисленное. if - интерфейс
режим
bytes количество байт (по умолчанию)
packets количество пакетов
errors количество ошибок
dropped количество отброшенных пакетов
Начиная с версии 1.8.6 Zabbix агента поддерживаются мултибайтные имена интерфейса.
\\Примеры:
net.if.out[eth0,errors]
net.if.out[eth0]
Вы должны использовать для этого ключа Дельта (изменение в секунду), чтобы получить статистику по байтам в секунду.
net.if.total[if,<режим>]
Суммарная входящая и исходящая статистика на сетевом интерфейсе. Целочисленное. if - интерфейс
режим
bytes количество байт (по умолчанию)
packets количество пакетов
errors количество ошибок
dropped количество отброшенных пакетов
Примеры:
net.if.total[eth0,errors]
net.if.total[eth0]
Вы должны использовать для этого ключа Дельта (изменение в секунду), чтобы получить статистику по байтам в секунду.
Обратите внимание отброшенные пакеты поддердивабтся только если both net.if.in и net.if.out работают для отброшенных пакетов на вашей платформе.
net.tcp.dns[<ip>,зона]
Проверяется работает ли сервис DNS. 0 - DNS недоступен
1 - DNS работает
ip - IP адрес DNS сервера (игнорируется)
зона - зона для тестирования DNS
Пример:
net.tcp.dns[127.0.0.1,zabbix.com]

Интернациональные доменные имена не поддерживаются вместо них, пожалуйста, используйте имена IDNA.
net.tcp.dns.query[<ip>,зона,<тип>]
Выполняет запрос на указанный тип записи DNS. В случае успеха возвращает строку символов с типом требуемой информации. ip - IP адрес DNS сервера (игнорируется)
зона - зона для тестирования DNS
тип - Тип записи запроса (по умолчанию SOA)
Пример:
net.tcp.dns.query[127.0.0.1, zabbix.com, MX]
тип может быть одним из:
A, NS, CNAME, MB, MG, MR, PTR, MD, MF, MX, SOA, NULL, WKS, HINFO, MINFO, TXT, SRV

Тип записи SRV поддерживается Zabbix агентом начиная с версии 1.8.6.

Интернациональные доменные имена не поддерживаются вместо них, пожалуйста, используйте имена IDNA.
net.tcp.listen[порт]
Проверяется находится ли указанный TCP порт в состоянии LISTEN. 0 - не находится
1 - находится в состоянии LISTEN
порт - номер порта TCP Пример:
net.tcp.listen[80]

В Linux поддерживается начиная с версии Zabbix агента 1.8.4
net.tcp.port[<ip>,порт]
Проверяет, возможно ли создать TCP подключение на указанный номер порта. 0 - не удалось подключиться
1 - подключение возможно
ip - IP адрес(по умолчанию 127.0.0.1)
порт - номер порта
Пример:
net.tcp.port[,80]может быть использовано для тестирования доступности Веб сервера, запущенного на 80 порту.
Старое название: check_port[*]
Для простого тестирования производительности TCP используйте net.tcp.service[tcp,<ip>,<порт>]
Заметьте, что эти проверки могут привести к возникновению дополнительных сообщений в файлах журналов системных демонов (сессии SMTP и SSH обычно журналируются).
net.tcp.service[сервис,<ip>,<порт>]
Проверяется запущен ли сервис принимает ли он TCP подключения. 0 - сервис недоступен
1 - сервис работает
сервис - один из: ssh, service.ntp, ldap, smtp, ftp, http, pop, nntp, imap, tcp
ip - IP адрес (по умолчанию 127.0.0.1)
порт - номер порта (по умолчанию используется стандартный номер порта для указанного сервиса)
Например:
net.tcp.service[ftp,,45] может быть использовано для проверки доступности FTP сервера на порту 45.
Старое название: check_service[*]
Обратите внимание, что в версиях Zabbix до 1.8.3 следует использовать service.ntp вместо ntp.
Заметьте, что эти проверки могут привести к возникновению дополнительных сообщений в файлах журналов системных демонов (сессии SMTP и SSH обычно журналируются).
Проверки зашифрованных протоколов (таких как IMAP на порту 993 или POP на порту 995) в настоящее время не поддерживаются. В качестве альтернативного способа, пожалуйста, используйте net.tcp.port для этих проверок.
Проверка LDAP через Windows агента в настоящее время не поддерживается.
net.tcp.service.perf[сервис,<ip>,<порт>]
Проверяется производительность сервиса 0 - сервис недоступен
секунды - количество секунд потребовавшихся для подключения к сервису
сервис -один из: ssh, service.ntp, ldap, smtp, ftp, http, pop, nntp, imap, tcp
ip - IP адрес (по умолчанию 127.0.0.1)
порт - номер порта (по умолчанию используется стандартный номер порта для указанного сервиса)
Пример:
net.tcp.service.perf[ssh] может быть использован для проверки скорости ответа SSH сервера.
Старое название: check_service_perf[*]
Обратите внимание, что в версиях Zabbix до 1.8.3 следует использовать service.ntp вместо ntp.
Проверки зашифрованных протоколов (таких как IMAP на порту 993 или POP на порту 995) в настоящее время не поддерживаются. В качестве альтернативного способа, пожалуйста, используйте net.tcp.port для этих проверок.
Проверка LDAP через Windows агента в настоящее время не поддерживается.
net.udp.listen[порт]
Проверяется находится ли указанный UDP порт в состоянии LISTEN. 0 - не находится
1 - находится в состоянии LISTEN
порт - номер порта UDP Пример:
net.udp.listen[68]

В Linux поддерживается начиная с версии Zabbix агента 1.8.4
proc.mem[<имя>,<пользователь>,<режим>,<cmdline>]
Количество выделенной памяти под процесс с указанным именем запущенным под указанным пользователем Использование памяти процессом. имя - имя процесса
пользователь - имя пользователя (по умолчанию все пользователи)
режим - один из: avg, max, min, sum (по умолчанию)
cmdline - фильтр по командной строке
Пример:
proc.mem[,root] - использованная память для всех процессов работающих под пользователем “root”.
proc.mem[zabbix_server,zabbix] - использованная память для всех процессов zabbix_server запущенных под пользователем zabbix
proc.mem[,oracle,max,oracleZABBIX] - максимальное значение использованной памяти процессами запущенными под пользователем oracle и имеющими oracleZABBIX в содержимом командной строки
proc.num[<имя>,<пользователь>,<состояние>,<cmdline>]
Количество процессов с указанным именем имеющим указанное состояние и запущенными под указанным пользователем Количество процессов. имя - имя процесса
пользователь - имя пользователя (по умолчанию все пользователи)
состояние - одно из: all (по умолчанию), run, sleep, zomb
cmdline - фильтр по командной строке
Пример:
proc.num[,mysql] - количество процессов запущенных под пользователем mysql
proc.num[apache2,www-data] - количество процессов apache2 запущенных под пользователем www-data
proc.num[,oracle,sleep,oracleZABBIX] - количество процессов в режиме sleep запущенных под пользователем oracle и имеющими oracleZABBIX в содержимом командной строки
В Windows в качестве аргументов поддерживаются только имя и пользователь.
sensor[устройство,датчик,<режим>]
Чтение аппаратного датчика. устройство - имя устройства (если указывается <режим>, то в этом поле нужно вводить регулярное выражение)
датчик - имя датчика (если указывается <режим>, то в этом поле нужно вводить регулярное выражение)
режим - один из avg, max, min (если этот ключ не указан, устройство и датчик указываются дословно).
Для Linux 2.4 читает /proc/sys/dev/sensors. Например:
sensor[w83781d-i2c-0-2d,temp1]
До версии Zabbix 1.8.4 использовался формат датчика sensor[temp1].

Для OpenBSD читает hw.sensors MIB. Например:
sensor[cpu0,temp0] - температура одного из ЦПУ
sensor[cpu[0-2]$,temp,avg] - средняя температура первого из трех ЦПУ
Поддерживается в OpenBSD начиная с Zabbix 1.8.4.
system.boottime
Штамп времени (timestamp) времени загрузки системы. Целочисленное. Время в секундах.
system.cpu.intr
Ошибки устройства. Целочисленное.
system.cpu.load[<цпу>,<режим>]
Загрузка ЦПУ. Загрузка процессора(ов).
Число с плавающей точкой.
cpu - номер CPU (по умолчанию все ЦПУ)
режим - один из: avg1 (по умолчанию),avg5 (среднее за последние 5 минут), avg15
Пример:
system.cpu.load[]
Обратите внимание, возвращаемое значение не процентное отношение.
Старое название: system.cpu.loadX
system.cpu.num[<тип>]
Количество ЦПУ. Количество доступных процессоров. тип - один из: online (по умолчанию), max Пример:
system.cpu.num
system.cpu.switches
Переключение контекста. Счетчик переключений контекста. Старое название: system[switches]
system.cpu.util[<cpu>,<тип>,<режим>]
Утилизация ЦПУ. Утилизация процессора в процентном отношении cpu - номер ЦПУ (по умолчанию все ЦПУ)
тип - один из: idle, nice, user (по умолчанию), system, kernel, iowait, interrupt, softirq, steal
режим - один из: avg1 (по умолчанию),avg5 (среднее значение за последние 5 минут), avg15
Старое название: system.cpu.idleX, system.cpu.niceX, system.cpu.systemX, system.cpu.userX
Пример:
system.cpu.util[0,user,avg5]
system.run[команда,<режим>]
Запускает указанную команду на удаленном хосте. Текстовый результат выполнения команды команда - команда для выполнения
режим - один из: wait (по умолчанию ожидание завершения), nowait (без ожидания)
Пример:
system.run[ls -l /] - подробный список файлов в корневой папке.
Примечание:
Для включения этой функциональности, в настройках агента должна быть опция EnableRemoteCommands=1.
system.hostname[<тип>]
Возвращается имя хоста. Строковое значение тип (только для Windows, игнорируется остальными системами) - netbios (по умолчанию) или host В Windows значение получается из функции GetComputerName() (для netbios) или функции gethostname() (для host) и из команды “hostname” в других системах.

Пример возвращаемого значения
www.zabbix.com

Параметры для этого элемента данных поддерживаются начиная с версии 1.8.6.
system.localtime
Локальное системное время. Численное или строковое значение. utc - (по умолчанию) время начиная с начала Эпохи (00:00:00 UTC, Январь 1, 1970), измеряется в секундах.
local - время в формате 'гггг-мм-дд,чч:мм:сс.нн,+чч:мм'
system.stat[ресурс,<тип>]
Статистика виртуальной памяти Целочисленное ent - количество процессорных единиц выделенных на ресурс (дробное)
kthr,<тип> - информация о состояниях потоков ядра:
r - среднее количество запускаемых потоков ядра (дробное)
b - среднее количество потоков ядра помещенных в очередь ожидания Менеджера Виртуальный Памяти (дробное)
memory,<тип> - информация о использовании виртуальной и реальной памяти:
avm - активные виртуальные страницы (целое)
fre - размер свободного списка (целое)
page,<тип> - информация об ошибках страниц и активности страниц:
fi - операции страничного ввода файлов в секунду (дробное)
fo - операции страничного вывода файлов в секунду (дробное)
pi - pages paged in from paging space (дробное)
po - pages paged out to paging space (дробное)
fr - pages freed (page replacement) (дробное)
sr - количество сканированных страниц алгоритмом замещения страниц (дробное)
faults,<тип> - соотношение ловушек и прервываний:
in - прерывания устройства (float)
sy - системные вызовы (float)
cs - переключения контекста потока ядра (дробное)
cpu,<тип> - разделеное использование процессорного времени в процентах:
us - пользовательское время (дробное)
sy - системное время (дробное)
id - время простоя (дробное)
wa - время простоя в ходе которого система обрабатывала запросы I/O диска/NFS (дробное)
pc - количество использованных физических процессоров (дробное)
ec - процентное соотношение размеченного занятого пространства (дробное)
lbusy - indicates the percentage of logical processor(s) utilization that occurred while executing at the user and system level (дробное)
app - отображает количество доступных физических процессоров в распределенном пуле (дробное)
disk,<тип> - статистика о дисках:
bps - отображает суммарное количество данных переданных (чтением или записью) на диск в байтах в секунду (целое)
tps - indicates the number of transfers per second that were issued to the physical disk/tape (дробное)
Этот элемент данных поддерживается начиная с версии 1.8.1.
system.swap.in[<устройство>,<тип>]
Операции ввода в файл подкачки. Статистика файла подкачки устройство - устройство файла подкачки (по умолчанию все устройства), тип - один из: count (по умолчанию, количество операций ввода в файл подкачки), sectors (количество секторов ввода в файл подкачки), pages (страниц ввода в файл подкачки) Пример:
system.swap.in[,bytes]
Старое название: swap[in]
system.swap.out[<устройство>,<тип>]
Операции вывода из файла подкачки. Статистика файла подкачки устройство - устройство файла подкачки (по умолчанию все устройства), тип - один из: count (по умолчанию, количество операций вывода из файла подкачки), sectors (количество секторов вывода из файла подкачки), pages (страниц вывода из файла подкачки) Пример: system.swap.out[,pages]
Старое название: swap[out]
system.swap.size[<устройство>,<режим>]
Размер swap. Количество байт или процентное отношение устройство - устройство swap (по умолчанию все устройства), режим - один из: free (по умолчанию, свободное пространство в swap), total (весь размер swap), pfree (свободное просмотранство в swap, в процентном отношении), pused (занятое просмотранство в swap, в процентном отношении) Пример: system.swap.size[,pfree] - процентное отношение свободного места в swap
Старое название: system.swap.free, system.swap.total
system.uname
Возвращается подробная информация о хосте. Строковое значение Пример возвращаемого значения:
FreeBSD localhost 4.4-RELEASE FreeBSD 4.4-RELEASE #0: Tue Sep 18 11:57:08 PDT 2001 murray@builder.FreeBSD.org: /usr/src/sys/compile/GENERIC i386
system.uptime
Время работы системы в секундах (uptime) Количество секунд Используйте Формат отображения s или uptime для того чтобы увидеть читаемые значения.
system.users.num
Количество подключенных пользователей. Количество пользователей Используется команда who на стороне агента.
vfs.dev.read[устройство,<тип>,<режим>]
Статистика чтения с диска. Числовое значение устройство - дисковое устройство (по умолчанию все диски), тип - один из: sectors, operations, bytes, sps, ops, bps (необходимо указывать, какие именно параметры требуется использовать, т.к. они являются разными для различных ОС)
режим - один из: avg1 (по умолчанию),avg5 (среднее за последние 5 минут), avg15
Пример: vfs.dev.read[,operations] Старое название: io[*]

Параметр тип со значениями ops, bps и sps лимитирован 8 устройствами на поддерживаемых платформах (7 устройств +1 для “all” устройств).

Поддерживается LVM начиная с Zabbix 1.8.6.

До Zabbix 1.8.6, можно было использовать только относительные имена устройств (например, sda), начиная с 1.8.6 опциональный префикс /dev/ может использоваться (например, /dev/sda)
vfs.dev.write[устройство,<тип>,<режим>]
Статистика записи на диск. Числовое значение устройство - дисковое устройство (по умолчанию все диски),
тип - один из: sectors, operations, bytes, sps, ops, bps (необходимо указывать, какие именно параметры требуется использовать, т.к. они являются разными для различных ОС)
режим - один из: avg1 (по умолчанию),avg5 (среднее за последние 5 минут), avg15
Пример: vfs.dev.write[,operations] Старое название: io[*]

Параметр тип со значениями ops, bps и sps лимитирован 8 устройствами на поддерживаемых платформах (7 устройств +1 для “all” устройств).

Поддерживается LVM начиная с Zabbix 1.8.6.

До Zabbix 1.8.6, можно было использовать только относительные имена устройств (например, sda), начиная с 1.8.6 опциональный префикс /dev/ может использоваться (например, /dev/sda)
vfs.file.cksum[файл]
Подсчитывает контрольную сумму для файла Подсчет контрольной суммы использует алгоритм UNIX cksum. файл - полный путь к файлу Пример возвращаемого значения:
1938292000
Пример:
vfs.file.cksum[/etc/passwd]

Старое название: cksum
vfs.file.exists[файл]
Проверяется существует ли файл 0 - файл не существует
1 - файл существует
файл - полный путь к файлу Пример: vfs.file.exists[/tmp/application.pid]
vfs.file.md5sum[файл]
Контрольная сумма MD5 для файла MD5 хэш для файла. Пример возвращаемого значения:
b5052decb577e0fffd622d6ddc017e82

Пример:
vfs.file.md5sum[/etc/zabbix/zabbix_agentd.conf]

Лимит в 64МБ для размера файла у этого элемента данных был удален в версии 1.8.6.
vfs.file.regexp[файл,regexp,<кодировка>]
Поиск строки в файле Найденная строка или EOF если выражение не найдено файл - полный путь к файлу
regexp - Регулярное выражение GNU
кодировка - Идентификатор страницы кодировки
Пример: vfs.file.regexp[/etc/passwd,zabbix]
vfs.file.regmatch[файл,regexp,<кодировка>]
Поиск строки в файле 0 - выражение не найдено \\1 - найдено файл - полный путь к файлу
regexp - Регулярное выражение GNU
кодировка - Идентификатор страницы кодировки
Пример: vfs.file.regmatch[/var/log/app.log,error]
vfs.file.size[файл]
Размер файла Размер в байтах. файл - полный путь к файлу Файл должен иметь права чтения для пользователя zabbix

Пример: vfs.file.size[/var/log/syslog]
vfs.file.time[файл,<режим>]
Информация о времени файла. Unix timestamp. файл - полный путь к файлу
режим - один из: modify (по умолчанию, время изменения), access - время последнего доступа, change - время последнего изменения
Пример: vfs.file.time[/etc/passwd,modify]
vfs.fs.inode[fs,<режим>]
Количество inodes Строковое значение fs - файловая система
режим - один из: total (по умолчанию), free, used, pfree (свободно в процентном отношении), pused (занято в процентном отношении)
Пример: vfs.fs.inode[/,pfree] Старое название: vfs.fs.inode.free[*], vfs.fs.inode.pfree[*], vfs.fs.inode.total[*]
vfs.fs.size[fs,<режим>]
Размер диска Размер диска в байтах fs - файловая система
режим - один из: total (по умолчанию), free, used, pfree (свободно в процентном отношении), pused (занято в процентном отношении)
В случае смонтированного диска, возвращает размер диска локальной файловой системы. Пример: vfs.fs.size[/tmp,free] Старые названия: vfs.fs.free[*], vfs.fs.total[*], vfs.fs.used[*], vfs.fs.pfree[*], vfs.fs.pused[*]
vm.memory.size[<режим>]
Размер памяти Размер памяти в байтах режим - один из: total (по умолчанию), shared, free, buffers, cached, pfree, available Старые названия: vm.memory.buffers, vm.memory.cached, vm.memory.free, vm.memory.shared, vm.memory.total
web.page.get[хост,<путь>,<порт>]
Получает содержимое Веб страницы Веб страницы в виде текста хост - имя хоста
пусть - путь к HTML документу (по умолчанию /)
порт - номер порта (по умолчанию 80)
Возвращает EOF при ошибке. Пример:
web.page.get[www.zabbix.com,index.php,80]
web.page.perf[хост,<путь>,<порт>]
Получение времени полной загрузки Веб страницы Время в секундах хост - имя хоста
пусть - путь к HTML документу (по умолчанию /)
порт - номер порта (по умолчанию 80)
Возвращает 0 при ошибке. Пример:
web.page.perf[www.zabbix.com,index.php,80]
web.page.regexp[хост,<путь>,<порт>,<regexp>,<длина>]
Получает первое вхождение регулярного выражения в Веб странице Совпадающая строка хост - имя хоста
путь - путь к HTML документу (по умолчанию /)
порт - номер порта (по умолчанию 80)
regexp - регулярное выражение GNU,
длина - максимальное количество возвращаемых символов
Возвращает EOF в случае несовпадения или других неудачах (превышено время ожидания, ошибка подключения и т.п.). Пример:
web.page.regexp[www.zabbix.com,index.php,80,OK,2]

Смотрите этот раздел для понимания различий между элементами данных в пассивном и активном режиме.

Заметка специфики для Linux. Zabbix агент должен иметь только права чтения файловой системы /proc. Патчи к ядру для ограничения прав непривилегированных пользователей вы можете найти на странице www.grsecurity.org.

19.5 Параметры специфичные для WIN32

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

Ключ
Описание Возвращаемое значение Комментарии
perf_counter[счетчик,<интервал>]
Значение любого счетчика производительности, где в качестве “счетчика” передается путь к счетчику и “интервал” - временной период для хранения среднего значения. Среднее значение “счетчика” за последние “интервал” секунд. Значение по умолчанию, если не задано, для “интервал” 1. Мониторинг производительности может быть использован для получения списка счетчиков. До версии 1.6 этот параметр может вернуть правильное значение только для счетчиков, которые возвращают только одно значение (например \System\Threads). Параметр не будет работать со счетчиками, которые возвращают более одного значения - например утилизация ЦПУ. Начиная с версии 1.6 используется интервал, такая проверка каждый раз возвращает среднее значение за последние “интервал” секунд.
service_state[*]
Состояние сервиса. В качестве параметра имя сервиса. 0 – запущен
1 – пауза
2 - ожидание старта
3 - ожидание паузы
4 - ожидание продолжения
5 - ожидание остановки
6 – остановлен
7 - неизвестно
255 – такой сервис не существует
Параметр должен передавать реальное имя сервиса, такое как в свойствах сервиса в строке “Имя:” или имя EXE файла.
services[<тип>,<состояние>,<исключение>]
Список сервисов, разделенных новой строкой или 0, если список пустой. тип - один из: all (по умолчанию), automatic, manual, disabled
состояние - один из: all (по умолчанию), stopped, started, start_pending, stop_pending, running, continue_pending, pause_pending, paused
исключение - список служб, исключенных из результата.
Исключение сервисов должно быть записано в двойных кавычках и без пробелов.
Этот параметр поддерживается начиная с версии 1.8.1.
Например:
services[,started] - список запущенных процессов
services[automatic, stopped] - список остановленных процессов, которые должны быть запущены
services[automatic, stopped, “service1,service2,service3”] -список остановленных сервисов, которые должны быть запущены, исключая сервисы с именами service1,service2 и service3
proc_info[<процесс>,<атрибут>,<тип>]
Различная информация о указанном процессе(ах). <процесс> - имя процесса (как и в параметре proc_cnt[])
<атрибут> - запрашиваемый атрибут процесса.
<тип> - тип представления (будет полезно в случае если имеется несколько процессов с одинаковым именем).
Поддерживаются следующие атрибуты:
vmsize - Размер виртуальной памяти в Кбайтах
wkset - Размер множества процесса (объем физической памяти используемой процессом) в Кбайтах
pf - Количество ошибок страницs
ktime - Время процесса ядра в миллисекундах
utime - Пользовательское время процесса в миллисекундах
io_read_b - Количество байт прочитанных за I/O операции
io_read_op - Количество операций чтения для процесса
io_write_b - Количество байт прочитанных за I/O операции
io_write_op - Количество операций записи для процесса
io_other_b - Количество байт переданных процессом при операции, кроме операций выполнения чтения и записи
io_other_op - Количество операций ввода/вывода при выполнении процесса, кроме операций чтения и записи
gdiobj - Количество объектов GDI использованных процессом
userobj - Количество объектов типа USER использованных процессом

Допустимые типы:
min - минимальное значение среди процессов указанного в параметре
max - максимальное значение среди процессов указанного в параметре
avg - среднее значение среди процессов указанного в параметре
sum - сумма всех значение среди процессов указанного в параметре

Примеры:
1. Для того чтобы получить объем физической памяти выделено под все процессы Internet Explorer, используйте следующий параметр: proc_info[iexplore.exe,wkset,sum]
2. Для того чтобы получить среднее количество ошибок страницы для всех процессов Internet Explorer, используйте следующий параметр: proc_info[iexplore.exe,pf,avg]
Примечание: Все аттрибуты io_xxx,gdiobj и userobj доступны только в Windows 2000 и более поздних версиях Windows, не в Windows NT 4.0.

19.6 SNMP агент

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

Если вы мониторите устройства SNMPv3, удостоверьтесь что msgAuthoritativeEngineID (также известное как “snmpEngineID” или “Engine ID”) никогда не используется общее для двух устройств. Этот параметр должен быть уникальным для каждого устройства.

Для защиты и аутентификации SNMPv3 сейчас поддерживаются протоколы MD5 и DES.

Следующие шаги должны быть выполнены для того, чтобы добавить мониторинг по SNMP:

Шаг 1

Создайте узел сети для SNMP устройства.

Введите IP адрес. Выберите состояние узла сети “Не контролируется”. Теперь вы можете использовать узел сети один из SNMP шаблонов (Template_SNMPv1_Device, Template_SNMPv2_Device), который автоматически добавит элементы данных. Однако, шаблон, может быть несовместим с узлом сети.

Проверки SNMP не используют Порт агента, он игнорируется.

Шаг 2

Узнайте OID SNMP для элементов данных, которые вы хотите мониторить.

После создания узла сети используйте приложение 'snmpwalk' (часть пакета ucd-snmp/net-snmp, который должен быть установлен как часть Zabbix) или эквивалентную утилиту:

shell> snmpwalk <хост или IP хоста> public

Эта команда вернет вам список строк SNMP и их последнее значение. Если команда не работает, то вполне возможно, что 'community' SNMP отличается от стандартного public, в этом случае вам необходимо узнать какое community у вас используется. Затем вы должны пройтись по списку, пока не найдете строку, которую вы хотите мониторить, например, Вы хотели, чтобы наблюдать за количеством входящих байт на 3 порту вашего коммутатора:

interfaces.ifTable.ifEntry.ifOctetsIn.3 = Counter 32: 614794138

Теперь Вы должны использовать команду snmpget, чтобы найти OID для interfaces.ifTable.ifEntry.ifInOctets.3:

shell> snmpget -On 10.62.1.22 interfaces.ifTable.ifEntry.ifOctetsIn.3

где последняя цифра в строке номер порта, который вы хотите мониторить. Команда должна вернуть что-то вроде:

.1.3.6.1.2.1.2.2.1.10.3 = Counter32: 614794138

опять последняя цифра в OID это номер порта.

3COM кажется использует номера портов в сотнях, т.е. порт 1=порту 101, порт 3=порту 103, но Cisco использует обычные номера, т.е. порт 3=3.

Шаг 3

Создание элемента данных для мониторинга.

Итак, теперь вернитесь в Zabbix и выберите элементы данных, выбрав SNMP узел сети созданный ранее. В зависимости от того, использовали ли вы или нет шаблоны при создании узла сети, вы увидите список элементов данных SNMP, связанных с вашим узлом сети или просто окно нового элемента данных. Предположим, что вы собираетесь создать элемент данных самостоятельно с помощью информации, которую вы только что собрали с помощью snmpwalk и snmpget, теперь введите описание на английском (или родном) языке в поле 'Имя' в окне нового элемента данных. Убедитесь, что в поле 'Узел сети' указан ваш коммутатор/маршрутизатор и измените поле “Тип” на “SNMPv1 агент”. Введите community (как правило - public) и введите числовой OID, который вы получили ранее, в поле 'SNMP OID'. Не забудьте начать с точки, т.е. .1.3.6.1.2.1.2.2.1.10.3

Заполните 'Порт SNMP' значением 161 и 'Ключ' любой интуитивно понятной записью, например SNMP-InOctets-BPS. Выберите множитель, если требуется, и заполните 'Интервал обновления' и 'Сохранять историю', если вы хотите, чтобы эти параметры отличались от стандартных. Выставьте 'Состояние' в Активирован, 'Тип информации' в Числовой с плавающей точкой и 'Хранить значение' в Дельта (что важно, ибо в противном случае вы получите кумулятивные значения от SNMP устройства вместо последних изменений).

Теперь сохраните элемент данных и вернитесь назад к узлам сети в Zabbix. Здесь установите состояние SNMP устройства “Контролируется” и перейдите в меню Мониторинг→Последние данные, здесь вы можете увидеть собранные данные по только что созданному элементу данных!

Пример 1

Общий пример

ПараметрОписание
Community public
OID 1.2.3.45.6.7.8.0 (или .1.2.3.45.6.7.8.0)
Ключ <Униальная строка, которая будет использована как ссылка в триггерах>
Например, ‘my_param’.

Обратите внимание, что OID может быть задан или в числовом, или строковом представлении. Однако в некоторых случаях, OID строки должны быть преобразованы в числовое представление. Для этих целей может быть использована утилита snmpget:

shell> snmpget -On localhost public enterprises.ucdavis.memory.memTotalSwap.0

Мониторинг SNMP параметров возможен, если при конфигурировании исходных кодов Zabbix был указан флаг -with-net-snmp или -with-ucd-snmp

Пример 2

Мониторинг Uptime'а

ПараметрОписание
Community public
Oid MIB::sysUpTime.0
Ключ router.uptime
Тип значения числовое с плавающей точкой
Единица измерения uptime
Множитель 0.01

19.7 Простые проверки

Простая проверка обычно используются для мониторинга без использования Агента или для проверки удаленных сервисов. Обратите внимание, что Zabbix агент не является необходимым для простой проверки. За обработку простых проверок отвечает Zabbix сервер (осуществление внешних подключений и т.д.).

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

  • порт - номер порта. Если номер порта пропущен, то используется стандартный порт по умолчанию для этого сервиса.

Примеры использования простых проверок:

ftp,155
http
http_perf,8080 

IP берется из указанного узла сети Zabbix.

Проверка протоколов с шифрованием (таких как IMAP на порту 993 или POP на порту 995) в данный момент не поддерживается. В качестве решения проблемы используйте, пожалуйста, tcp и tcp_perf для проверок таких проверок.

Список поддерживаемых простых проверок:

Ключ
Описание Возвращаемое значение
ftp,<port>
Проверяется запущен ли FTP сервер и принимает ли подключения 0 – FTP сервер недоступен
1 – FTP сервер запущен
ftp_perf,<port>
Проверяется запущен ли FTP сервер и принимает ли подключения 0 – FTP сервер недоступен
В противном случае возвращает количество миллисекунд времени попытки подключения к серверу FTP.
http,<port>
Проверяется запущен ли HTTP сервер и принимает ли подключения 0 – HTTP сервер недоступен
1 – HTTP сервер запущен
http_perf,<port>
Проверяется запущен ли HTTP (WEB) сервер и принимает ли подключения 0 – HTTP (WEB) сервер недоступен
В противном случае возвращает количество миллисекунд времени попытки подключения к серверу HTTP (WEB).
icmpping[<цель>,<пакеты>,<интервал>,<размер>,<таймаут>]
Проверяется доступен ли сервер по ICMP ping
цель - IP адрес или DNS имя узла сети
пакеты - количество пакетов
интервал - время между успешными пакетами в миллисекундах
размер - размер пакета в байтах
таймаут - время ожидания в миллисекундах
0 – не удалось ICMP ping
1 – успешно ICMP ping
icmppingloss[<цель>,<пакеты>,<интервал>,<размер>,<таймаут>]
Возвращает процент потерянных пакетов
цель - IP адрес или DNS имя узла сети
пакеты - количество пакетов
интервал - время между успешными пакетами в миллисекундах
размер - размер пакета в байтах
таймаут - время ожидания в миллисекундах
Потери пакетов в процентном отношении
icmppingsec[<цель>,<пакеты>,<интервал>,<размер>,<таймаут>,<режим>]
Возвращает время ответа на ICMP ping
цель - IP адрес или DNS имя узла сети
пакеты - количество пакетов
интервал - время между успешными пакетами в миллисекундах
размер - размер пакета в байтах
таймаут - время ожидания в миллисекундах
режим - один из min, max, avg (по умолчанию)
Количество секунд
imap,<port>
Проверяется запущен ли IMAP сервер и принимает ли подключения 0 – IMAP сервер недоступен
1 – IMAP сервер запущен
imap_perf,<port>
Проверяется запущен ли IMAP сервер и принимает ли подключения 0 – IMAP сервер недоступен
В противном случае возвращает количество секунд времени попытки подключения к серверу IMAP.
ldap,<port>
Проверяется запущен ли LDAP сервер и принимает ли подключения 0 – LDAP сервер недоступен
1 – LDAP сервер запущен
ldap_perf,<port>
Проверяется запущен ли LDAP сервер и принимает ли подключения 0 – LDAP сервер недоступен\В противном случае возвращает количество секунд времени попытки подключения к серверу LDAP.
nntp,<port>
Проверяется запущен ли NNTP сервер и принимает ли подключения 0 – NNTP сервер недоступен
1 – NNTP сервер запущен
nntp_perf,<port>
Проверяется запущен ли NNTP сервер и принимает ли подключения 0 – NNTP сервер недоступен\В противном случае возвращает количество секунд времени попытки подключения к серверу NNTP.
ntp,<port>
Проверяется запущен ли NTP сервер и принимает ли подключения 0 – NTP сервер недоступен
1 – NTP сервер запущен
ntp_perf,<port>
Проверяется запущен ли NTP сервер и принимает ли подключения 0 – NTP сервер недоступен\В противном случае возвращает количество секунд времени попытки подключения к серверу NTP.
pop,<port>
Проверяется запущен ли POP сервер и принимает ли подключения 0 – POP сервер недоступен
1 – POP сервер запущен
pop_perf,<port>
Проверяется запущен ли POP сервер и принимает ли подключения 0 – POP сервер недоступен
В противном случае возвращает количество секунд времени попытки подключения к серверу POP.
smtp,<port>
Проверяется запущен ли SMTP сервер и принимает ли подключения 0 – SMTP сервер недоступен
1 – SMTP сервер запущен
smtp_perf,<port>
Проверяется запущен ли SMTP сервер и принимает ли подключения 0 – SMTP сервер недоступен
В противном случае возвращает количество секунд времени попытки подключения к серверу SMTP.
ssh,<port>
Проверяется запущен ли SSH сервер и принимает ли подключения 0 – SSH сервер недоступен
1 – SSH сервер запущен
ssh_perf,<port>
Проверяется запущен ли SSH сервер и принимает ли подключения 0 – SSH сервер недоступен
В противном случае возвращает количество секунд времени попытки подключения к серверу SSH.
tcp,port
Проверяется запущен ли сервис TCP и принимает ли подключения 0 – TCP сервис недоступен
1 – TCP сервис запущен
tcp_perf,port
Проверяется запущен ли сервис TCP и принимает ли подключения 0 – сервис на указанном порту недоступен
В противном случае возвращает количество секунд времени попытки подключения к серверу TCP.
Обработка таймаутов

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

ICMP pings

Zabbix использует внешнюю утилиту fping для обработки ICMP pings. Утилита не распространяется в комплекте с Zabbix и должна быть установлена дополнительно. Если программа отсутствует, имеет неправильные права или её путь не соответствует параметру FpingLocation, указанному в файле конфигурации, ICPM pings (icmpping, icmppingsec и icmppingloss) не будут обработаны.

fping должен быть выполняем под пользователем Zabbix демонов и должен иметь setuid root. Выполните эти команды под пользователем root для настройки правильных полномочий:

shell> chown root:zabbix /usr/sbin/fping
shell> chmod 710 /usr/sbin/fping
shell> chmod ug+s /usr/sbin/fping

Значения по умолчанию параметров для проверок по ICMP:

ПараметрЗначениеОписаниеФлаг в fpingМинМакс
пакетов 3 количество пакетов до цели-c110000
интервал 25 миллисекунд, по умолчанию в “fping”-p20
размер 56 или 68 байт, по умолчанию в “fping”; 56 байт для x86, 68 байт для x86_64-b2465507
таймаут 500 миллисекунд, по умолчанию в “fping”-t50

Внимание: Значения по умолчанию в fping могут различаться в зависимости от плафтормы и версии - если имеются сомнения, посмотрите документацию fping

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

19.8 Внутренние проверки

Внутренняя проверка позволяют контролировать внутреннее состояние Zabbix. Внутренние проверки подсчитываются самим Zabbix сервером.

Внутренние проверки все еще обрабатываются пуллерами Zabbix.

Ключ
Описание Комментарии
zabbix[boottime]
Время запуска процесса Zabbix сервера в секундах. В секундах, начиная с Эпохи.
zabbix[history]
Количество значений записанных в таблицу HISTORY Не используйте при MySQL InnoDB, Oracle или PostgreSQL
zabbix[history_log]
Количество значений записанных в таблицу HISTORY_LOG Не используйте при MySQL InnoDB, Oracle или PostgreSQL!
Этот элемент данных поддерживается начиная с версии 1.8.3.
zabbix[history_str]
Количество значений записанных в таблицу HISTORY_STR Не используйте при MySQL InnoDB, Oracle или PostgreSQL!
zabbix[history_text]
Количество значений записанных в таблицу HISTORY_TEXT Не используйте при MySQL InnoDB, Oracle или PostgreSQL!
Этот элемент данных поддерживается начиная с версии 1.8.3.
zabbix[history_uint]
Количество значений записанных в таблицу HISTORY_UINT Не используйте при MySQL InnoDB, Oracle или PostgreSQL!
Этот элемент данных поддерживается начиная с версии 1.8.3.
zabbix[trends]
Количество значений записанных в таблицу TRENDS Не используйте при MySQL InnoDB, Oracle или PostgreSQL!
zabbix[trends_uint]
Количество значений записанных в таблицу TRENDS_UINT Не используйте при MySQL InnoDB, Oracle или PostgreSQL!
Этот элемент данных поддерживается начиная с версии 1.8.3.
zabbix[items]
Количество элементов данных в базе данных Zabbix
zabbix[items_unsupported]
Количество не поддерживаемых элементов данных в базе данных Zabbix
zabbix[triggers]
Количество триггеров в базе данных Zabbix.
zabbix[log]
Сохраняет сообщения предупреждений и ошибок генерируемых Zabbix сервером. Тип - символьный. Добавьте этот элемент данных, чтобы записывать внутренние сообщения Zabbix.
zabbix[process,<тип>,<режим>,<состояние>]
Время конкретного процесса Zabbix или группы процессов (указывается через <тип> и <режим>), потраченное на <состояние> в процентах. Расчет производится только за последнюю минуту.

Если в качестве <режим> указано номер процесса Zabbix, который не запущен (например, при 5 запущенных пуллерах, в <режиме> указано 6), такой элемент данных переходит в состояние не поддерживается.
Минимум и максимум относится к процентному использованию одним процессом. Таким образом, если в группе из 3 пуллеров процентное использование составило 2, 18 и 66, тогда min должен вернуть 2 а max должен вернуть 66.
В общей памяти процессы отмечают то что они делают и процесс само-мониторинга резюмирует эти данные каждую секунду. Изменения состояний (busy/idle) регистрируются при изменении - таким образом, процессы, которые становятся занятыми, регистрируют это состояние и не меняют и не обновляют его пока процесс не станет свободным. Такое поведение гарантирует, что даже полностью зависшие процессы будут корректно зарегистрированы как 100% занятые.
В настоящее время, “busy” означает “не спит”, но в будущем могут быть добавлены дополнительные состояния - ожидание блокировки, выполнение запросов в базу данных, и т.д.
В Linux и в большинстве других систем, разрешение составляет 1/100 секунды.
В данный момент поддерживаются следующие типы процессов:
alerter - процесс для отправки уведомлений
configuration syncer - процесс управления кешем конфигурационных данных в оперативной памяти
db watchdog - процесс для отправки предупреждающего сообщения, в случае если БД недоступна
discoverer - процесс для обнаружения устройств
escalator - процесс для эскалации в действиях
history syncer - процесс, который записывает историю в БД
http poller - пуллер веб мониторинга
housekeeper - процесс для удаления старых данных истории
icmp pinger - пуллер для проверок icmpping
ipmi poller - пуллер для проверок по IPMI
node watcher - процесс для отправки данных истории и изменений в конфигурации между нодами
self-monitoring - процесс для сбора внутренней статистики сервера
poller - нормальный пуллер для пассивных проверок
proxy poller - пуллер для пассивных прокси
timer - процесс для обработки функций триггеров, связанных со временем, и для обслуживания
trapper - процесс-улавливатель для активных проверок, трапов, связей между нодами и прокси
unreachable poller - пуллер для недоступных устройств
Примечание: Вы также можете видеть эти типы процессов в файле журнала сервера.

Возможные режимы:
avg - среднее значение для всех процессов указанного типа (по умолчанию)
count - количество форков указанного типа процесса, <состояние> не должно быть указано
max - максимальное значение
min - минимальное значение
<process number> - номер процесса (от 1 до количества префорк процессов). Например, если запущенно 4 траппера, тогда значение от 1 до 4.

Возможные состояния:
busy - процесс в занятом состоянии, например, обработка запроса (по умолчанию).
idle - процесс в свободном состоянии, ничего не делающий.

Примеры:
zabbix[process,poller,avg,busy] - среднее время, потраченное процессами пуллеров, которые что-либо делали за последнюю минуту
zabbix[process,”icmp pinger”,max,busy] - максимальное время, потраченное любыми процессами ICMP pinger, которые что-либо делали за последнюю минуту
zabbix[process,trapper,count] - общее количество запущенных процессов trapper

Этот элемент данных поддерживается начиная с версии 1.8.5.
zabbix[proxy,<имя>,<параметры>]
Информация доступная по Прокси. <имя> - Имя прокси
Список поддерживаемых параметров (<параметры>):
lastaccess – штамп времени последнего оповещения доступности от Прокси
Например, zabbix[proxy,”Germany”,lastaccess]
Функция триггера fuzzytime() может быть использована для проверки доступности прокси.
zabbix[queue,<от>,<до>]
Количество наблюдаемых элементов данных в Очереди, у которых задержка <от> и <до> секунд включительно. <от> - по умолчанию: 6 секунд
<до> - по умолчанию: бесконечно
Поддерживаются Суффиксы s,m,h,d,w для этих параметров.
Параметры <от> и <до> поддерживаются начиная с версии 1.8.3.
zabbix[requiredperformance]
Требуемое быстродействие Zabbix сервера, имеются ввиду новые значения в секунду. Приблизительно соответствует значению “Требуемое быстродействие сервера, новые значения в секунду” на странице Отчеты → Состояние Zabbix. Поддерживается начиная с версии 1.6.2.
zabbix[uptime]
Uptime процесса Zabbix сервера в секундах.
zabbix[wcache,<кэш>,<режим>]
КэшРежим
valuesall Количество значений обрабатываемых Zabbix сервером, исключая не поддерживаемые Это очень хороший показатель производительности Zabbix.
float
uint
str
log
text
not supported Количество обрабатываемых неподдерживаемых элементов данных. Этот элемент данных поддерживается начиная с версии 1.8.6.
historypfree Свободное место в буфере истории в процентах. Низкое количество свободного места отражает проблемы с производительностью на стороне базы данных.
total
used
free
trendpfree
total
used
free
text pfree
total
used
free
zabbix[rcache,<кэш>,<режим>]
КэшРежим
bufferpfree
total
used
free

19.9 Агрегированные проверки

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

Синтаксис ключа агрегированного элемента данных

groupfunc["Группа узлов сети","Ключ элемента данных","функция элемента данных","параметр"]

Поддерживаемые параметры функции группы:

Функция группыОписание
grpavg Среднее значение
grpmax Максимальное значение
grpmin Минимальное значение
grpsum Сумма значений

Поддерживаемые параметры элементов данных:

Функция элемента данныхОписание
avg Среднее значение
count Количество значений
last Последнее значение
max Максимальное значение
min Минимальное значение
sum Сумма значений

Примеры ключей для агрегированных проверок:

Пример 1

Суммарное значение размера дисков для группы хостов 'MySQL Servers'.

grpsum["MySQL Servers","vfs.fs.size[/,total]","last","0"]
Пример 2

Средняя загрузка процессора для группы узлов сети 'MySQL Servers'.

grpavg["MySQL Servers","system.cpu.load[,avg1]","last","0"]
Пример 3

Среднее (5мин) количество запросов в секунду для группы узлов сети 'MySQL Servers'

grpavg["MySQL Servers","mysql.qps","avg","300"]

19.10 Внешние проверки

Внешние проверки это проверки выполняемые Zabbix сервером путем выполнения скрипта или бинарного файла.

Внешняя проверка не требует никакого запущенного агента на наблюдаемом узле сети.

Синтаксис ключа элемента данных:

скрипт[параметры]
* скрипт – имя скрипта.
* параметры – список параметров командной строки. Параметры будут переданы командной строке без каких либо изменений.

Если вы не планируете передавать какие либо параметры в скрипт, вы можете использовать следующие записи:

скрипт[] или
скрипт <- этот упрощенный синтаксис поддерживается Zabbix начиная с версии 1.8.1.

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

Эта директория размещается на Zabbix сервере. Для выполнения пользовательских команд, используя Zabbix агента, смотрите документацию по пользовательским командам.

Первый параметр командной строки это IP адрес или DNS имя, другие параметры заменяются параметрами.

Zabbix использует первую строку (конечные пробелы удаляются) в стандартный вывод скрипта как значение. Остальные строки, стандартная ошибка и код выхода отбрасываются.

Не злоупотребляйте внешними проверками! Они могут намного снизить производительность системы Zabbix

Пример 1

Выполнить скрипт check_oracle.sh с параметрами ”-h 192.168.1.4”. DNS имя хоста 'www1.company.com'.

check_oracle.sh[-h 192.168.1.4]

Zabbix будет выполнять:

check_oracle.sh www1.company.com -h 192.168.1.4.

19.11 Проверки по SSH

Zabbix должен быть сконфигурирован с поддержкой SSH2.

Поддерживаемая минимальная версия библиотеки libssh2 1.0.0

SSH проверки используются для безагентного мониторинга. Обратите внимание, что Zabbix агент не требуется для проверок по SSH.

КлючОписаниеКомментарии
ssh.run[<уникальное короткое описание>,<ip>,<порт>,<кодировка>] Выполняет команду используя SSH сессию

19.12 Проверки по Telnet

Проверки по Telnet используются для безагентного мониторинга. Zabbix агент не требуется для проверок через Telnet.

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

До версии 1.8.1, поддерживаются строковые символы, которые могут заканчиваться на:

  • $
  • #
  • >

В версии 1.8.2 добавлено поддержку дополнительного символа:

  • %
КлючОписаниеКомментарии
telnet.run[<уникальное короткое описание>,<ip>,<порт>,<кодировка>]Выполнение команды на удаленном устройстве используя telnet соединение

19.13 Вычисляемые элементы данных

Поддержка вычисляемых элементов данных была введена в Zabbix 1.8.1

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

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

Для использования вычисляемых элементов данных, выберите тип элемента данных Вычисляемый. Ключ является уникальным идентификатором элемента данных (в пределах узла сети). Вы можете создать любое имя ключа, используя допустимые символы. Определение расчета нужно ввести в поле Формула (называется Выражение в версиях 1.8.1 и 1.8.2). Не существует практически никакой взаимосвязи между формулой и ключем. Параметры ключа никаким образом не используются в формуле - переменные могут быть переданы в формулу с помощью пользовательских макросов.

Корректный синтаксис для простой формулы имеет вид:

func(<ключ>,<параметр1>,<параметр2>,...)

Где:

АргументОпределение
funcОдна из функций, поддерживаемых выражениями триггеров: last, min, max, avg, count и др.
узел сети:ключКлюч другого элемента данных, данные которого вы хотите использовать. Может быть определен как ключ или имя_хоста:ключ.
Примечание: Заключение всего ключа в двойные кавычки (”…”) настоятельно рекомендуется во избежании неправильного разбора пробелов или разделителей в ключе.
Так же если в ключе имеются двойные кавычки, то кавычки должныть быть экранированы бэкслешем (\). Смотрите Примеры 5 и 6 ниже.
параметр(ы)Любые дополнительные параметры, которые могут потребоваться. Смотрите Пример 5 ниже.

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

Поддерживаемые символы для имени узла сети:

a..zA..Z0..9 ._-

Поддерживаемые символы для ключа:

a..zA..Z0..9.,_

Поддерживаемые символы для функции:

a..zA..Z0..9_

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

Вычисляемый элемент данных может перейти в состояние не поддерживаемого в нескольких случаях:

  1. ссылка на элемент данных не найдена
  2. нет данных для вычисления функции
  3. деление на ноль
  4. использование некорректного синтаксиса
Пример 1

Вычисление процентного отношения свободного места на диске в '/'.

Используем функцию last:

100*last("vfs.fs.size[/,free]")/last("vfs.fs.size[/,total]")

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

Пример 2

Вычисление среднего количества значений за 10 минут обработанных Zabbix.

Используем функцию avg:

avg("Zabbix Server:zabbix[wcache,values]",600)

Следует отметить, что использование вычисляемых элементов данных с большим временным периодом может повлиять на производительность Zabbix сервера.

Пример 3

Вычисление полной пропускной способности на интерфейсе eth0.

Сумма двух функций:

last("net.if.in[eth0,bytes]")+last("net.if.out[eth0,bytes]")
Пример 4

Вычисление процента входящего трафика.

Другое сложное выражение:

100*last("net.if.in[eth0,bytes]")/(last("net.if.in[eth0,bytes]")+last("net.if.out[eth0,bytes]"))
Пример 5

Вычисление количества записей в файле журнала за последние 10 минут.

Примите к сведению, то как двойные кавычки экранируются внутри ключа и первого параметра функции, если требуется:

count("logrt[\"/tmp/test.log\",\"some words pattern\"]",600)
Пример 6

Возможно использование аггрегированных элементов данных в вычисляемых элементах данных.

Примите к сведению, то как экранируются двойные кавычки внутри заключенного в кавычки ключа:

last("grpsum[\"video\",\"net.if.out[eth0,bytes]\",\"last\",\"0\"]") / last("grpsum[\"video\",\"nginx_stat.sh[active]\",\"last\",\"0\"]") 
 

10 Пользовательские параметры

Функциональность Zabbix агентов может быть расширена путем добавления пользовательских параметров (параметр конфигурации UserParameter) в файле конфигурации агента. Как только пользовательские параметры определены они могут быть использованы так же, как и любые другие элементы данных агента - по ключу, указанному в параметре.

Пользовательские параметры это команды, которые выполняются Zabbix агентом. В операционных системах UNIX используется интерпретатор командной строки /bin/sh.

10.1 Простые пользовательские параметры

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

Пользовательский параметр имеет следующий синтаксис:

UserParameter=ключ,команда
Параметр Описание
Ключ Уникальный ключ элемента данных.
Команда Команда, которая будет выполнена для получения значения ключа.
Пример 1

Простая команда

UserParameter=ping,echo 1

Агент всегда будет возвращать '1' для элемента данных с ключом 'ping'.

Пример 2

Более сложный пример

UserParameter=mysql.ping,mysqladmin -uroot ping | grep -c alive

Агент будет возвращать '1' если MySQL сервер доступен, '0' – в противном случае.

10.2 Гибкие пользовательские параметры

Гибкие пользовательские параметры могут быть использованы для большей управляемости и гибкости.

Гибкий пользовательский параметр:

UserParameter=ключ[*],команда
Параметр Описание
Ключ Уникальный ключ элемента данных. [*] определяет, что ключ может принимать параметры.
Команда Команда, которая будет выполнена для получения значения ключа.
Zabbix агент производит анализ содержимого внутри квадратных скобок [] и заменяет им переменные $1,…,$9 в команде. Переменная $0 будет заменена оригинальной командой (до расширения $0,…,$9) для выполнения.

Для использования ссылок на позиции не измененными, укажите двойной символ доллара - например, awk '{print $$2}'.

Если опция UnsafeUserParameters не определена в конфигурационном файле Zabbix агента, то в командах недопустимы следующие символы: \ ' ” ` * ? [ ] { } ~ $ ! & ; ( ) < > | # @

Используемая команда должна всегда возвращать не пустое значение (и не перевод строки). Если командой возвращено несоответствующее требованиям значение, тогда агентом будет отправлено сообщение ZBX_NOTSUPPORTED.

Пример 1

Очень простой пример

UserParameter=ping[*],echo $1

Мы можем создать неограниченное количество элементов данных для наблюдения за чем угодно, указав в таком формате ping[что угодно].

  • ping[0] - будет всегда возвращать ‘0’
  • ping[aaa] - будет всегда возвращать ‘aaa’
Пример 2

Давайте добавим больше смысла!

UserParameter=mysql.ping[*],mysqladmin -u$1 -p$2 ping | grep -c alive

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

mysql.ping[zabbix,our_password]
Пример 3

Сколько строк в файле, которые соответствуют регулярному выражению?

UserParameter=wc[*],grep -c "$2" $1

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

wc[/etc/passwd,root]
wc[/etc/services,zabbix]

Обратите внимание, что демон Zabbix агента до версии 1.8.3 не поддерживает пользовательские параметры при запуске агента с ключом -t или -p (используются для тестирования одного элемента данных или для вывода списка всех поддерживаемых элементов данных). Смотрите manpage для получения более подробной информации по более ранним версиям.

 

11 Счетчики производительности в Windows

Счетчики производительности в Windows могут быть эффективно контролируемы при использовании perf_counter[].

Например:

perf_counter[“Processor(0)\Interrupts/sec”]

или

perf_counter["Processor(0)\Interrupts/sec", 10]

Для того чтобы получить полный список доступных счетчиков производительности для мониторинга вы можете запустить:

typeperf -qx

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

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

Выполните regedit, затем найдите HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib\009. Реестр содержит информацию:

1
1847
2
System
4
Memory
6
% Processor Time
10
File Read Operations/sec
12
File Write Operations/sec
14
File Control Operations/sec
16
File Read Bytes/sec
18
File Write Bytes/sec
....

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

System -> 2
% Processor Time -> 6
\System\% Processor Time

Затем используйте эти цифры, чтобы создать числовой формат:

\2\6

11.1 Простые пользовательские параметры

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

 

12 Триггеры

Триггеры это логические выражения, которые отображают собой состояние системы.

Триггер может принимать следующие значения:

Значение Описание
ПРОБЛЕМА Обычно означает, что что-то случилось. Например, высокая загрузка процессора. Называлось TRUE в предыдущих версиях Zabbix.
ОК Это нормальное состояние для триггера. Называлось FALSE в предыдущих версиях Zabbix.
НЕИЗВЕСТНО Означает что Zabbix не может высчитать выражение триггера. Это может произойти по нескольким причинам:
- сервер недоступен
- выражение триггера не может быть высчитано
- выражение триггера было недавно изменено

12.1 Выражения у триггеров

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

12.1.1 Операторы выражений

Следующие операторы поддерживаются для триггеров (представлены по убыванию приоритета выполнения):

Приоритет Оператор Определение
1 / Деление
2 * Умножение
3 - Арифметический минут
4 + Арифметический плюс
5 < Менее чем. Этот оператор может быть представлен в виде:
A<B ⇔ (A<=B-0.000001)
6 > Более чем. Этот оператор может быть представлен в виде:
A>B ⇔ (A>=B+0.000001)
7 # Не равен. Этот оператор может быть представлен в виде:
A#B ⇔ (A<=B-0.000001) | (A>=B+0.000001)
8 = Равен. Этот оператор может быть представлен в виде:
A=B ⇔ (A>B-0.000001) & (A<B+0.000001)
9 & Логическое И
10 | Логическое ИЛИ

12.2 Функции триггеров

Функции триггеров позволяют ссылаться на собранные значения, текущее время и другие факторы.

12.2.1 Функции основанные на времени

Состояние (выражение) триггера пересчитывается каждый раз когда Zabbix сервер получает новое значение данных, если это значение данных является частью выражения. Если в выражении триггера используются функции относящиеся ко времени такой триггер пересчитывается каждые 30 секунд.

Функции относящиеся ко времени:

  • nodata()
  • date()
  • dayofmonth()
  • dayofweek()
  • time()
  • now()
12.2.2 Список функций триггеров

Поддерживаются следующие функции:

1) Все функции возвращают только числовые значения. Сравнение строк, к примеру, не поддерживается.
2) Строковые аргументы должны быть заключены в двойные кавычки. В противном случае они могут быть не верно интерпретированы.

ФУНКЦИЯ Аргумент(ы) Типы поддерживаемых
значений
Описание
abschange игнорируется float, int, str, text, log
Возвращает абсолютную разницу между последним и предыдущим значениями.
Для строк:
0 - значения равны
1 - значения различны
avg секунды или #num float, int
Среднее значение за период времени. Параметр определяет продолжительность периода в секундах.
Эта функция принимает секунды, необязательный параметр time_shift. Это бывает полезно, когда нужно сравнить текущее среднее значение со средним значением time_shift секунд ранее. Например, avg(3600,86400) вернет среднее значение за один час одним днем ранее.
Параметр time_shift поддерживается начиная с Zabbix 1.8.2
change игнорируется float, int, str, text, log
Возвращает разницу между последним и предыдущим значениями.
Для строк:
0 - значения равны
1 - значения различны
count секунды или #num float, int, str, text, log
Количество значений данных из истории за период времени в секундах или количество последних #num значений попадающих под условие.
Функция может принимать второй необязательный параметр шаблон, третий параметр оператор, и четвертый параметр time_shift.
Например,
count(600,12) вернет точное количество значений равных '12' из истории за промежуток времени 10 минут.
Элементы данных с типом Целые числа: точное совпадение
Числа с плавающей запятой: совпадение с точностью до 0.00001
Строки, текст и журналы элементы данных: поддерживаются операторы like (по умолчанию), eq, ne.
Поддерживаемые операторы:
eq - равно
ne - не равно
gt - больше
ge - больше или равно
lt - меньше
le - меньше или равно
like (только текстовый поиск) - совпадение, если содержит шаблон.
Например,
count(600,12,”gt”) вернет точное количество значений больших чем '12' из истории за последние 10 минут.
Другой пример:
count(#10,12,”gt”,86400) вернет точное количество значений больших '12' из истории из последних 10 значений 24 часами ранее.
Если требуется подсчитывать произвольные значения, например, за последние 600 секунд 24 часами ранее, либо count(600,,86400) или count(600,,,86400) должно быть использовано в зависимости от того что требуется подсчитать - текст или числа, соответственно.
Параметр #num поддерживается начиная с Zabbix 1.6.1.
Параметр time_shift и строковые операторы поддерживаются начиная с Zabbix 1.8.2
date игнорируется любые
Возвращает текущую дату в формате ГГГГММДД.
Например: 20031025
dayofmonth игнорируется любые
Возвращает день месяца из диапазона от 1 до 31.
Эта функция поддерживается начиная с 1.8.5
dayofweek игнорируется любые
Возвращает день недели из диапазона от 1 до 7. Пн - 1, Вс - 7.
delta секунды или #num float, int
То же самое, что и max()-min().
Начиная с версии Zabbix 1.8.2 эта функция поддерживает секунды, необязательный параметр time_shift. Смотрите функцию avg для примера использования.
diff игнорируется float, int, str, text, log
Возвращает:
1 - последнее и предыдущее значения различаются
0 - наоборот
fuzzytime секунды float, int
Возвращает 1 если штамп времени (значения элемента данных) не отличается от времени на Zabbix сервере более чем на N секунд, 0 - наоборот.
Обычно применяется с system.localtime, для проверки синхронно ли локальное время с локальным временем Zabbix сервера.
iregexp 1-ый - строка, 2-ой - секунды или #num str, log, text
Это - не чувствительный к регистру аналог функции regexp.
last секунды или #num float, int, str, text, log
Последнее (самое новое) значение. Параметр:
секунды - игнорируется
#num - N-ное значение
Например,
last(0) всегда равняется last(#1)
last(#3) - третье из последних значений
Функция поддерживает необязательный параметр time_shift. Например:
last(0,86400) вернет последнее значение одним днем ранее.
Zabbix не гарантирует точный порядок значений, если за одну секунду имеется более одного значения.
Параметр #num поддерживается начиная с Zabbix 1.6.2.
Параметр time_shift поддерживается начиная с Zabbix 1.8.2.
logeventid строка log
Проверяет соответствие регулярному выражению Event ID последней записи в журнале. Параметр определяет регулярное выражение в формате расширенных регулярных выражений POSIX.
Возвращает:
0 - не соответствует
1 - соответствует
Эта функция поддерживается начиная с версии 1.8.5
logseverity игнорируется log
Возвращает важность последней записи в журнале (логе). Параметры игнорируются.
0 - важность по умолчанию
N - важность (целое число, полезно для журналов событий Windows). Zabbix берет важность журнала из колонки Информация из журнала событий Windows.
logsource строка log
Проверяет совпадает ли последняя запись в логе с параметром.
0 - не совпадает
1 - совпадает
Обычно используется для журнала событий Windows. Например, logsource(“VMWare Server”)
max секунды или #num float, int
Максимальное значение за период времени. Параметр определяет период времени в секундах.
Начиная с версии Zabbix 1.8.2, функция поддерживает секунды, необязательный параметр time_shift. Смотрите функцию avg для примера использования.
min секунды или #num float, int
Минимальное значение за период времени. Параметр определяет период времени в секундах.
Начиная с версии Zabbix 1.8.2, функция поддерживает секунды, необязательный параметр time_shift. Смотрите функцию avg для примера использования.
nodata секунды любые
Возвращает:
1 - если не было получено данных за указанный промежуток времени в секундах. Период не может быть меньше 30 секунд.
0 - наоборот
now игнорируется любые
Возвращает количество секунд с начала Эпохи (00:00:00 UTC, 1 Января 1970 г.).
prev игнорируется float, int, str, text, log
Возвращает предыдущее значение. Параметр игнорируется.
Аналог last(#2)
regexp 1-ый - строка, 2-ой - секунды или #num str, log, text
Проверяет, соответствует ли последнее значение регулярному выражению. Параметр должен задаваться регулярным выражением в формате расширенных регулярных выражений POSIX.
Второй необязательный параметр это количество секунд или количество строк для анализа. В этом случае будет обработано более одного значения.
Эта функция чувствительная к регистру.
Возвращает:
1 - если найдено
0 - наоборот
str 1-ый - строка, 2-ой - секунды или #num str, log, text
Ищет строку в последнем значении. Параметр определяет строку для поиска. Эта функция чувствительная к регистру!
Второй необязательный параметр это количество секунд или количество строк для анализа. В этом случае будет обработано более одного значения.
Возвращает:
1 - если найдено
0 - если не найдено
strlen секунды или #num str, log, text
Длина последнего (наиболее нового) значения в символах (не в байтах).
Параметры такие же, как и для функции last.
Например,
strlen(0) идентично strlen(#1)
strlen(#3) - длина третьего наиболее нового значения
strlen(0,86400) - длина наиболее нового значения один день назад.
Эта функция поддерживается начиная с версии Zabbix 1.8.4.
sum секунды или #num float, int
Сумма значений за период времени. Параметр определяет период времени в секундах.
Начиная с версии Zabbix 1.8.2, функция поддерживает секунды, необязательный параметр time_shift. Смотрите функцию avg для примера использования.
time игнорируется любые
Возвращает текущее время в формате ЧЧММСС. Например: 123055

Некоторые функции нельзя использовать для не числовых параметров!

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

ВЫЗЫВАЕМАЯ ФУНКЦИЯ СМЫСЛ
sum(600) Сумма всех значений в течении 600 секунд
sum(#5) Сумма последних 5 значений

Функция last имеет особый смысл для значений с префиксом решетки - функция выбирает N-ное предыдущее значение. Поэтому из представленных значений (выстроены от последних к предыдущим) 3, 7, 2, 6, 5, функция last(#2) вернет 7 и функция last(#5) вернет 5.

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

Простое полезное выражение может выглядеть так:

{<сервер>:<ключ>.<функция>(<параметр>)}<оператор><константа>

Параметр должен быть предоставлен даже для тех функций, которые его игнорируют. Например: last(0)

Пример 1

Высокая загрузка процессора на www.zabbix.com

{www.zabbix.com:system.cpu.load[all,avg1].last(0)}>5

'www.zabbix.com:system.cpu.load[all,avg1]' передает короткое имя наблюдаемого параметра. Эта строка указывает, что контролируется сервер 'www.zabbix.com' и ключ 'system.cpu.load[all,avg1]'. Используя функцию 'last()', мы ссылаемся на самое последнее значение. И наконец '>5' означает, что триггер будет определен как ПРОБЛЕМА всякий раз, когда последнее значение загрузки процессора на сервере www.zabbix.com будет превышать 5.

Пример 2

www.zabbix.com перегружен

{www.zabbix.com:system.cpu.load[all,avg1].last(0)}>5|{www.zabbix.com:system.cpu.load[all,avg1].min(600)}>2 

Это выражение будет определено как ПРОБЛЕМА, когда либо текущая загрузка процессора больше 5, либо загрузка процессора больше 2 за последние 10 минут.

Пример 3

Изменился файл /etc/passwd

Используем функцию diff:

{www.zabbix.com:vfs.file.cksum[/etc/passwd].diff(0)}>0

Это выражение будет определено как ПРОБЛЕМА, когда предыдущее значение контрольной суммы файла /etc/passwd отличается от последнего значения.

Аналогичные выражения могут быть полезны для мониторинга изменений в важных файлах, таких как /etc/passwd, /etc/inetd.conf, /kernel и других.

Пример 4

Кто-то скачивает большой файл из Интернет

Используем функцию min:

{www.zabbix.com:net.if.in[eth0,bytes].min(300)}>100K

Это выражение будет определено как ПРОБЛЕМА, когда сумма полученных байт за последних 5 минут на интерфейсе eth0 превышает 100КБ.

Пример 5

Оба узла кластера SMTP серверов недоступны

Примечание, в выражении используются два разных узла сети:

{smtp1.zabbix.com:net.tcp.service[smtp].last(0)}=0&{smtp2.zabbix.com:net.tcp.service[smtp].last(0)}=0

Это выражение будет определено как ПРОБЛЕМА, когда оба SMTP сервера недоступны smtp1.zabbix.com и smtp2.zabbix.com.

Пример 6

Zabbix агент нуждается в обновлении

Используем функцию str():

{zabbix.zabbix.com:agent.version.str("beta8")}=1

Это выражение будет определено как ПРОБЛЕМА, когда версия Zabbix агента содержит в себе 'beta8' (возможно 1.0beta8).

Пример 7

Сервер недоступен

{zabbix.zabbix.com:icmpping.count(1800,0)}>5

Выражение правдиво, если узел сети “zabbix.zabbix.com&quot; недоступен более 5 раз за последние 30 минут.

Пример 8

Нет получения данных за последние 3 минуты

Используем функцию nodata():

{zabbix.zabbix.com:tick.nodata(180)}=1

‘tick’ должен иметь тип ‘Zabbix trapper’’. Для того чтобы этот триггер заработал, элемент данных ‘tick’ должен существовать. Узел сети должен периодически отправлять данные этому элементу данных используя zabbix_sender. Если не было получено данных за последние 180 секунд, значение триггера будет определено как ПРОБЛЕМА.

Пример 9

Активность ЦПУ в ночное время

Используем функцию time():

{zabbix:system.cpu.load[all,avg1].min(300)}>2&{zabbix:system.cpu.load[all,avg1].time(0)}>000000&{zabbix:system.cpu.load[all,avg1].time(0)}<060000

Триггер может быть определен как ПРОБЛЕМА только в ночное время (00:00-06:00).

Пример 10

Проверяет, если локальное время на клиенте синхронизировано с временем на Zabbix сервере

Используется функция fuzzytime():

{MySQL_DB:system.localtime.fuzzytime(10)}=0

Триггер меняет состояние на проблему тогда, когда локальное время на сервере MySQL_DB и Zabbix сервере различаются более чем на 10 секунд.

12.3 Зависимости триггеров

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

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

Например, узел сети Хост находится позади маршрутизатора Роутер2, а Роутер2 находится позади Роутер1.

Zabbix - Роутер1 – Роутер2 - Хост

Если Роутер1 недоступен, то очевидно, что и Хост и Роутер2 недоступны. Никто не хочет получать три уведомления с информацией о Хост, Роутер1 и Роутер2. Это как раз тот случай, когда использование зависимостей триггера будет очень удобным.

Для этого случая, мы определяем эти зависимости:

триггер 'Хост недоступен' зависит от триггера 'Роутер2 недоступен'
триггер 'Роутер2 недоступен' зависит от триггера 'Роутер1 недоступен'

Перед изменением состояния триггера 'Хост недоступен', Zabbix будет проверять существуют ли у этого триггера заданные зависимости. Если это так, и один из триггеров в находится в состоянии ПРОБЛЕМА, то состояние триггера не будет изменено и, следовательно, действие не будет выполнено и оповещение не будет отправлено.

Zabbix выполняет эту проверку рекурсивно. Если Роутер1 или Роутер2 недоступен, тогда триггер у Хоста не будет изменен.

12.4 Важности триггеров

Важность триггера определяет насколько триггер важен. Zabbix поддерживает следующие важности триггеров:

Важность Определение Цвет
Не классифицировано Неизвестная важность. Серый.
Информация В информационных целях. Светло зеленый.
Предупреждение Предупреждающий. Светло желтый.
Средняя Средняя проблема. Темно красный.
Высокая Произошло что-то важное. Красный.
Чрезвычайная Чрезвычайный. Финансовые потери и т.п. Ярко красный.

Важности могут быть использованы в:

  • визуальном представлении триггеров. Различные цвета для различных уровней важности.
  • звуковой сигнализации на странице наблюдения за состоянием триггеров. Различные звуковые сигналы для различных важностей.
  • пользовательских действиях. Различные типы операций (каналы оповещения) для различных важностей. Например, СМС – для высокой важности, email – для остального.

12.5 Гистерезис

Иногда триггер должен иметь различные условия для разных состояний. Например, мы хотим определить триггер, который перейдет в состояние ПРОБЛЕМА если температура в серверной комнате поднимется выше 20 градусов. При этом триггер должен оставаться в состоянии ПРОБЛЕМА, пока температура не опустится ниже 15 градусов.

Для того чтобы сделать это, мы определим следующий триггер:

Пример 1

Температура в серверной комнате слишком высокая.

({TRIGGER.VALUE}=0&{server:temp.last(0)}>20)|
({TRIGGER.VALUE}=1&{server:temp.last(0)}>15)

Примечание: Здесь используется макрос {TRIGGER.VALUE}, который возвращает текущее состояние триггера (его числовое значение).

 

13 Комплексные экраны и слайдшоу

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

Комплексный экран это таблица которая может содержать в каждой ячейке следующую информацию:

  • часы
  • обзор данных
  • пользовательский график
  • историю действий
  • историю событий
  • информация об узлах сети
  • карта сети
  • текст
  • другой комплексные экраны
  • текстовую информацию
  • информацию о сервере (обзорная)
  • простой график
  • состояние триггеров группы узлов сети
  • состояние триггеров узла сети
  • состояние системы
  • информации о триггерах (обзорная)
  • обзор триггеров
  • URL (отображается страница по ссылке)

Количество элементов в каждом комплексном экране не ограничено.

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

Если высота графика установлена меньше 120 пикселов, то триггер не будет показан в легенде этого графика

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

Вы можете настроить слайд-шоу в Настройки → Слайды.

Параметр Описание
Имя Имя слайд-шоу.
Интервал обновления (в секундах) Этот параметр устанавливает интервал по умолчанию между ротацией комплексных экранов в секундах.
Слайды Список индивидуальных слайдов (комплексные экраны).
Комплексный экран Имя комплексного экрана
Задержка Как долго (в секундах) комплексный экран будет отображаться. Если установлено значение 0, тогда будет использоваться общий интервал обновления слайд-шоу.
Пример 1

Слайд-шоу “Zabbix administrators”

Слайд-шоу состоит из двух комплексных экранов, которые будут отображаться в следующем порядке:

Zabbix Server ⇒ Пауза в 60 секунд ⇒ Zabbix Server2 ⇒ Пауза в 30 секунд ⇒ Zabbix Server ⇒ Пауза в 60 секунд ⇒ Zabbix Server2 ⇒ …

 

14 IT услуги

ИТ-услуги предназначены для тех, кто хочет получить мониторинг более высокого уровня (бизнес). Во многих случаях мы не заинтересованы в низком уровне подробностей, таких как недостаток места на диске, высокая загрузка процессора и т.д. Чем мы заинтересованы это доступность услуг, предоставляемых нашим ИТ-отделом. Мы также можем быть заинтересованы в выявлении слабых мест в ИТ-инфраструктуре, SLA различных ИТ-услуг, структуре существующей ИТ-инфраструктуры, а также любой другой информации на более высоком уровне.

ИТ-услуги в Zabbix дают ответы на все выше упомянутые вопросы.

ИТ-услуги иерархичное представление данных мониторинга.

Очень простая структура ИТ-услуги может выглядеть следующим образом:

IT услуга
|
|-Рабочие станции
| |
| |-Workstation1
| |
| |-Workstation2
|
|-Сервера

Каждый узел структуры имеет аттрибут состояние. Состояние подсчитывается и распространяется на верхние уровни в соответствии с выбранным алгоритмом. На самом низком уровне IT услуги являются триггерами. Состояние отдельных узлов зависит от состояния их триггеров.

Заметьте, что триггеры с важностью Без классификации и Информационный не влияют на расчет SLA

Настройка IT услуг

Для настройки IT услуг, перейдите в Настройка → IT услуги.

На этой странице вы можете построить иерархию вашей наблюдаемой инфраструктуры инфраструктуры. Родительский сервис 'root' самого высокого уровня. Вы можете построить свою иерархию вниз, добавлением родительские сервисы более низкого уровня, а затем и отдельные узлы к ним.

Нажмите на сервис для добавления сервисов к нему или для редактирования сервиса. Отобразится форма, где вы можете редактировать аттрибуты сервиса.

Настройка IT сервиса

Аттрибуты IT сервиса:

ПараметрОписание
Имя Имя сервиса.
Родительская услуга IT Принадлежность к родительскому сервису.
Зависит от Список дочерних сервисов от которых сервис зависит.
Алгоритм подсчета статуса Метод вычисления состояния сервиса:
Не подсчитывать - не вычислять состояние сервиса
Проблема, если хотя бы один дочерний сервис в состоянии проблема - считается проблемой только если один дочерний сервис имеет проблему
Проблема, если все дочернии сервисы в состоянии проблем - считается проблемой, только если все дочерние сервисы имеют проблемы
Подсчет SLA Включить вычисление и отображение SLA.
Приемлимый SLA (в %) Процент SLA, который является приемлемым для этого сервиса. Используется для отчетности.
Интервалы времени услуги По умолчанию, все сервисы как ожидается работают 24x7x365. Если требуются исключения, добавьте новые времена сервиса.
Новый интервал времени услуги Интервал времени сервиса:
Единовременный простой - одиночный простой. Состояние сервиса, в течении этого периода не влияет на SLA.
Доступность - доступность сервиса
Недоступность - состояние сервиса, в течении этого периода не влияет на SLA.
Добавляет соответствующие часы.
Связать с триггером? Связь с триггером:
Пусто - нет связи
имя триггера - связан с триггером, таким образом зависит от состояния триггера
Сервисы нижнего уровня должны быть соединены с триггерами. (В противном случае их состояние не будет точно представлено.)
Порядок сортировки Порядок сортировки при отображении, меньшие значения на первом месте.

Мониторинг IT сервисов

Для мониторинга IT сервисов, перейдите в Мониторинг → IT сервисы.

Список существующих ИТ услуг отображается вместе с данными их состояния и SLA. Из раскрывающегося списка в правом верхнем углу вы можете выбрать требуемый период для отображения.

Отображаемые данные:

ПараметрОписание
Сервис Имя сервиса.
Состояние Состояние сервиса:
OK - нет проблем
(цвет и важность триггера) - указывает на наличие проблемы и её важности
Причина Указывает на причину проблемы (если таковая имеется).
SLA (период) Отображает полосу SLA. Соотношение зеленого/красного указывает на пропорцию доступности/проблем.
SLA Отображает приемлимое значение SLA в SLA/текущее. Если текущее значение ниже допустимого уровня, то значение отображается красным цветом.
График Содержит ссылку на график с данными доступности.

Вы также можете нажать на зеленую/красную полосу SLA для доступа к Отчет доступности IT услуг.

Здесь вы можете оценить доступность данных ИТ сервиса за более длительный период времени на основе дня/недели/месяца/года.

 

15 Права пользователей

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

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

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

15.1 Обзор

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

Права предоставляются для групп пользователей на уровне групп узлов сети.

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

15.2 Типы пользователей

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

Тип пользователя Описание
Пользователь ZabbixПользователь имеет доступ к меню Мониторинг. По умолчанию пользователь не имеет прав доступа к каким либо ресурсам. Права доступа на группу узлов сети должны быть предоставлены явно.
Администратор ZabbixПользователь имеет доступ в меню Мониторинг и в меню Настройка. По умолчанию пользователь не имеет прав доступа к каким либо ресурсам. Права доступа на группу узлов сети должны быть предоставлены явно.
Суперадминистратор ZabbixПользователь имеет доступ ко всем меню: Мониторинг, Настройка и Администрирование. Пользователь имеет права Чтения-Записи ко всем группам узлов сети. Права не могут быть запрещены ни для какой группы узлов сети.
 

16 Очередь

16.1 Обзор

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

Статистика, представленная в Очереди, является хорошим показателем производительности сервера Zabbix.

16.2 Как читать

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

В этом случае, мы видим, что у нас есть ноль элементов типа Zabbix агент ожидающих обновления 0-5 секунд, ноль элементов типа Zabbix агент (активный) ожидающий более чем пять минут (если здесь будет больше 0, то это например может означать что агент недоступен). Обратите внимание, что информация отображаемая для подчиненной ноды не является актуальной (свежей). Мастер нода получает данные истории с некоторой задержкой (как правило, вплоть до 10 секунд из-за передачи данных между нодами), так что информация отображается с задержкой.

На скриншоте мы видим, что существует 42 элемента данных с ожиданием обновления более 5 минут на подчиненной ноде, однако мы не обязаны доверять информации, поскольку она зависит от:

  • производительности подчиненной ноды
  • соединений между мастер и подчиненной нодой
  • возможной разницы локального времени между мастер и подчиненной нодой

Специальный элемент данных с ключем zabbix[queue] может быть использован для мониторинга общего состояния очереди Zabbix. Полный список элементов данных для внутренних проверок доступен в разделе настройки элементов данных

 

17 Утилиты

17.1 Скрипты автозапуска

Скрипты используются для автоматического запуска/остановки Zabbix процессов во время загрузки/завершения работы системы.

Скрипты размещаются в папке misc/init.d.

17.2 Скрипт snmptrap.sh

Скрипт используется для получения SNMP трапов. Скрипт должен быть использован в сочетании с snmptrapd, который является частью пакета Net-SNMP.

Руководство по конфигурации:

  • Установите snmptrapd (часть net-snmp или ucd-snmp)
  • Измените snmptrapd.conf.
    Добавьте следующую строку:

traphandle default /bin/bash /usr/local/bin/snmptrap.sh

  • Скопируйте misc/snmptrap/snmptrap.sh в /usr/local/bin
  • Отредактируйте snmptrap.sh для настройки некоторых основных параметров
  • Добавьте в Zabbix специальный узел сети с элементом данных типа “Zabbix траппер” (тип информации “Текст”). Ключ элемента данных смотрите в snmptrap.sh
  • Запустите snmptrapd
 

18 Регулярные выражения

Сложные регулярные выражения могут быть созданы и протестированы в веб-интерфейсе Zabbix. Перейдите в Администрирование → Общие → Регулярные выражения.

Общий вид

Добавление/редактирование одной группы регулярных выражений

18.1 Использование регулярных выражений

После того как регулярное выражение создано, его можно использовать везде где поддерживаются регулярные выражения, ссылаясь на его имя с префиксом @, например, @mycustomregexp.

18.1.1 Пример 1

Проверяем возвращает ли элемент данных правильное значение DNS имени.

Создайте новую группу регулярных выражений и добавьте туда регулярное выражение:

  ^[0-9a-zA-Z_\-]+\.[a-zA-Z]{2,4}$

Это регулярное выражение означает, что строка может начинаться с цифро-буквенных символов с количеством более одного, потом должна идти точка и далее может быть от двух до четырех буквенных символов. ^ - начало строки, $ - конец строки. Установите тип регулярного выражения “Результат TRUE” и отметьте галку регистрозависимый.

Протестируйте добавленное регулярное выражение: Введите zabbix.com в поле “Тестовая строка” и нажмите кнопку “Тест”. Если регулярное выражение составлено верно и тестируемая строка соответствует выражению, то результат тестирования будет ИСТИНА, в противном случае ЛОЖЬ.

Сохраним группу регулярных выражений с именем “check_dns”.

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

  ({Template_DNS_Check:dns_check.iregexp(@regexp_check_ip)}=1
 

18.2 Типы регулярных выражений

Все регулярные выражения в Zabbix, созданные при помощи расширенного редактора, или введенные вручную, поддерживают расширенные регулярные выражения стандарта POSIX.

Обратите внимание, что использование / / в начале и конце регулярного выражения соответственно не допускается!

 

20 Определения в веб-интерфейсе

Хотя многие параметры веб-интерфейса можно настроить используя сам интерфейс, но некоторые настройки в настоящее время возможно изменить только через файл определений. Этот файл размещается в папке веб-интерфейса, include/defines.inc.php. Параметры в этом файле, которые могут быть интересны пользователям:

  • TRIGGER_FALSE_PERIOD

Как долго отображать триггеры в состоянии ОК после изменения их состояния из ПРОБЛЕМА, в секундах.

По умолчанию: 1800

  • TRIGGER_BLINK_PERIOD

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

По умолчанию: 1800

  • ZBX_PERIOD_DEFAULT

Период графика по умолчанию, в секундах. По умолчанию один час.

  • ZBX_MIN_PERIOD

Минимальный период графика в секундах. По умолчанию один час.

  • ZBX_MAX_PERIOD

Максимальный период графика в секундах. По умолчанию два года начиная с 1.6.7 и один год до 1.6.7.

  • GRAPH_YAXIS_SIDE_DEFAULT

Размещение по умолчанию оси Y в простых графиках и значение по умолчанию в выпадающем списке при добавлении элементов данных в пользовательские графики. Возможные значения: 0 - слева, 1 - справа.

По умолчанию: 0

  • ZBX_UNITS_ROUNDOFF_THRESHOLD

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

По умолчанию: 0.01

  • ZBX_UNITS_ROUNDOFF_UPPER_LIMIT

Округлять к количеству знаков после запятой, когда значение больше порога округления.

По умолчанию: 2

  • ZBX_UNITS_ROUNDOFF_LOWER_LIMIT

Округлять к количеству знаков после запятой, когда значение меньше порога округления.

По умолчанию: 6

  • ZBX_HISTORY_DATA_UPKEEP (доступно начиная с 1.8.4)

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

  • меньше нуля - для выполнения вычислений zabbix берет значения элемента данных для выбранного периода графика, исходя из настройки элемента данных “сохранять историю”;
  • равно нулю - zabbix берет значения элементов данных только из тенденций;
  • больше чем нуль - zabbix переопределяет настройку элемента данных “сохранять историю” этим значением;

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

По умолчанию: -1

  • ZAPCAT_COMPATIBILITY

Включает поддержку синтаксиса ключей элементов данных для Zapcat Zabbix Java JMX bridge.

По умолчанию: false

ZAPCAT_COMPATIBILITY доступен только для версии 1.8.4.

 

21 Суффиксы

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

21.1 Стандартные множители

В следующей таблице представлены доступные стандартные множители для Zabbix веб-интерфейса и сервера:

До 1.8.2Дополнительные в 1.8.2
СерверK (Кило)
M (Мега)
G (Гига)
T (Тера)
Веб-интерфейсK (Кило)
M (Мега)
G (Гига)
T (Тера)
P (Пета)
E (Экза)
Z (Зетта)
Y (Йотта)

21.2 Множители, относящиеся ко времени

Начиная с Zabbix версии 1.8.2 доступны следующие множители, относящиеся ко времени:

  • s - секунды; если используется, тогда действует так же как и сырое значение (raw values);
  • m - минуты;
  • h - часы;
  • d - дни;
  • w - недели.

Это поддерживаемые в выражениях триггеров константы и параметры функций, а также параметры во внутренних элементах данных zabbix[очередь,<от>,<до>].

21.3 Примеры

Эти множители позволяют писать выражения, которые легче понять и управлять ими, например следующие выражения:

{host:zabbix[proxy,zabbix_proxy,lastaccess]}>120 
{host:system.uptime[].last()}<86400 
{host:system.cpu.load.avg(600)}<10

можно заменить на:

{host:zabbix[proxy,zabbix_proxy,lastaccess]}>2m 
{host:system.uptime.last()}<1d
 

22 Спецификация периода времени

22.1 Формат

Период времени имеет следующий формат:

d-d,hh:mm-hh:mm

Вы можете указать более одного периода времени используя разделитель точку с запятой (;):

d-d,hh:mm-hh:mm;d-d,hh:mm-hh:mm...

22.2 Описание

Формат Описание
d День недели: 1 - Понедельник, 2 - Вторник ,… , 7 - Воскресенье
hh Часы: 00-24
mm Минуты: 00-59

В спефификацию периода времени верхняя граница времени не включается. Например, если вы укажите 09:00-18:00, то последней секундой включенной в период времени будет 17:59:59. Это верно начиная с версии 1.8.7, исключая Рабочее время, эта опция всегда работала таким образом.

22.3 По умолчанию

Пустая спецификация времени равна 01-07,00:00-24:00

22.4 Примеры

Часы работы. Понедельник - Пятница с 9:00 до 18:00:

1-5,09:00-18:00

Часы работы плюс выходные. Понедельник - Пятница с 9:00 до 18:00 и Суббота, Воскресенье с 10:00 до 16:00:

1-5,09:00-18:00;6-7,10:00-16:00
 
 

5. Быстрый старт

1 Вход в систему

Это экран приглашения для входа в систему Zabbix. После инсталляции используйте имя пользователя Admin и пароль zabbix для входа в Zabbix под суперпользователем.

После входа вы увидите “Подключен под Admin” в нижнем правом углу страницы и доступ к разделам Настройка и Администрирование будет предоставлен:

1.1 Защита от брутфорс атак

В случае пяти последовательных неудачных попыток входа, Zabbix интерфейс будет принудительно делать паузу в 30 секунд для предотвращения атак методом перебора пароля и атак по словарю.

IP адрес, с которого были осуществлены неудачные попытки, будет отображен после успешного входа в систему.

 

2 Добавление пользователя

После первоначальной установки Zabbix имеет только двух пользователей. Пользователь “Admin” это суперпользователь в системе Zabbix, который имеет все привилегии. Пользователь “guest” это специальный пользователь по умолчанию. Если пользователь не вошел в систему, тогда он получит доступ с привилегиями пользователя “guest”. По умолчанию, “guest” не имеет разрешений на объекты Zabbix.

Для того, чтобы добавить нового пользователя, перейдите в Администрирование → Пользователи, затем выберите в выпадающем списке Пользователи и нажмите “Создать пользователя”.

В диалоге создания пользователя его следует добавить к одной из существующих групп, например Network administrators

По умолчанию, новые пользователи не имеют способов оповещений (методов уведомлений). Для их создания нажмите Добавить в разделе Способ оповещений.

В всплывающем окне введите почтовый адрес пользователя. Вы можете указать период времени, когда этот способ будет активен (смотрите страницуСпецификаций периода времени для получения сведений о формате), по умолчанию способ активен всегда. Вы также можете настроить важности, для которых способ оповещения будет использоваться, но сейчас оставьте все включенным. Нажмите Добавить, затем Сохранить в свойствах пользователя. Новый пользователь появится в списке пользователей.

По умолчанию, новый пользователь не имеет прав. Для предоставления ему прав нажмите на имя группы в колонке Группы. Откроются свойства группы. Этот пользователь будет иметь доступ только на чтение группы Linux серверов, поэтому нажмите Добавить внизу блока значений Только чтение.

В этом всплывающем окне выберите Linux серверы и затем нажмите Выбрать.

В форме свойств группы пользователей нажмите Сохранить.

В Zabbix все права доступа назначаются через группы.

Готово! Теперь вы можете попробовать войти под созданным пользователем.

 

3 Настройка Email

Изначально, в Zabbix имеется несколько предопределенных способов оповещения (средств передачи). Email - это один из них. Настройки оповещения по Email вы можете найти в меню Меню→Администрирование→Способы оповещений.

Выберите “Email” из списка предустановленных способов оповещений.

Установите корректные значения для SMTP сервер, SMTP приветствие и SMTP адрес электронной почты. Нажмите Сохранить когда завершите.

SMTP адрес электронной почты используется как адрес От для исходящей электронной почты.

Теперь у Вас имеется способ оповещения “Email”. Для того чтобы этот способ оповещения начал реально использоваться, он должен быть присоединен в свойствах профиля пользователя.

 

4 Мониторинг узла сети с агентом

Этот раздел содержит детальные сведения о мониторинге узла сети, на котором запущен Zabbix агент. Агент у вас должен быть установлен и правильно настроен.

4.1 Мониторинг по умолчанию Zabbix сервера

Откройте Настройки → Узлы сети, чтобы просмотреть список текущих добавленных узлов сети. Ситуация может быть разной в зависимости от используемой у вас версии Zabbix.

  • Если вы используете Zabbix до версии 1.8.3, тогда вы увидите один узел сети Zabbix server в состоянии “Не наблюдается”.
  • Если вы используете готовое решение Zabbix версии 1.8.3 или более поздней, вы увидите один узел сети Zabbix server в состоянии “Наблюдается”.

Если узел сети находится в состоянии “Не наблюдается”, тогда нажмите на Не наблюдается в колонке Состояние и подтвердите действие. Более мы ничего делать не должны - если демоны агента и сервера работают должным образом, тогда узел сети будет под наблюдением начиная с этого момента.

4.2 Мониторинг другого сервера

Откройте Настройки → Узлы сети и вы увидите текущий список добавленных узлов сети. Там будет один заранее добавленный узел сети, но теперь мы хотим добавить еще один.

Нажмите на Создать узел сети. Как минимум, мы должны указать следующие параметры:

  • Имя узла сети;
  • Узел сети обязан входить как минимум в одну группу узлов сети;
  • Для наблюдения с помощью пассивных проверок Zabbix агента должен быть указан IP адрес узла сети;
  • Так же для быстрого старта мы будем использовать один из заранее созданных шаблонов.

Остальные опции нам подойдут со значениями по умолчанию.

Имя узла сети

  • Здесь введите имя узла сети. Допускаются число-буквенные символы, пробелы и подчеркивания.

Группы

  • Узел сети обязан входить как минимум в одну группу узлов сети. Переместите группы из правого поля в левое поле и наоборот, пока вы не будете довольны результатом.

IP адрес

  • Введите IP адрес узла сети. Обратите внимание, Zabbix агенту нужно указать IP адрес Zabbix сервера в конфигурационном файле в параметре Server.

Присоединенные шаблоны

  • В блоке справа Присоединенные шаблоны нажмите кнопку Добавить и выберите Templates в выпыдыющем меню Группа, затем установите флажок напротив пункта Template_Linux (предполагается, что добавляемый узел сети работает под Linux) и нажмите Выбрать.

Когда закончите, нажмите Сохранить.

Узел сети должен быть успешно создан. Нажмите на Детали в верхнем левом углу на странице результата - вам будет показано какие действия были совершены в действительности.

Из деталей следует, что в результате использования шаблона новый узел сети теперь имеет записи из шаблона Template_Linux - давайте проверим это. В выпадающем списке Группы выберите одну из групп в которую вы добавили новый узел сети. Нам должен быть предоставлен обзор верхнего уровня настроек этого узла сети.

4.3 Проверка текущей настройки

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

Если иконка Z в колонке Доступность красная, то это значит что имеется какая то ошибка со связью - поместите курсор мышки над этой иконкой и вы увидите всплывающую подсказку о ошибке. Если иконка серая, значит состояние пока не обновилось. Проверьте запущен ли Zabbix сервер и попробуйте обновить страницу немного позже.

Сначала давайте убедимся, что узел сети действительно имеет те элементы данных. Нажмите далее на Элементы данных.

Выглядит так, что элементы данных были добавлены успешно. Обратите внимание на серый текст Template_Linux перед именем элемента данных - эта надпись отображает шаблон из которого были добавлены записи. А что насчет триггеров? Посмотрите выше списка элементов данных, там есть горизонтальная полоса, которая дает возможность легко перемещаться между различными категориями объектов у узла сети.

По умолчанию, списки объектов Zabbix ограничены 50 записями на страницу. Вы можете изменить этот параметр в своем профиле пользователя.

Здесь нажмите на Триггеры.

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

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

Теперь настало время посмотреть какая информация уже доступна. Перейдите в Мониторинг → Последние данные и разверните там в дереве какие-нибудь группы элементов данных.

Значения начали собираться и они отображаются рядом с информацией о изменении, если таковое имеет место.

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

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

Не стесняйтесь исследовать другие страницы, которые должны отображать информацию о мониторинге, в том числе:

  • Мониторинг → Графики для пользовательских графиков;
  • Мониторинг → Триггеры для списка текущих активных проблем;
  • Мониторинг → ПАНЕЛЬ для обзора верхнего уровня;
  • Мониторинг → Карты сети для карт сети;
  • Мониторинг → Комплексные экраны для комбинированных страниц, отображающих несколько элементов сразу.

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

 

5 Настройка оповещений

У нас есть один или несколько наблюдаемых узлов сети. Мы можем смотреть простые и пользовательские графики, а также данные индивидуальных элементов данных. У нас также есть настроенные условия определения проблем, называемые триггерами, и они меняют своё состояние с ОК на ПРОБЛЕМА и обратно в зависимости от изменения ситуации. Сейчас мы можем посмотреть на данные и определить текущее состояние, но нам не подходит смотреть и следить за состоянием постоянно - для этого нам нужно настроить оповещения. Для того чтобы это сделать, перейдите на страницу Настройки → Действия.

По умолчанию, в системе нет настроенных действий. Чтобы создать его, нажмите Создать действие. В появившейся форме введите имя действия. В самом простом случае, когда мы не будем добавлять никаких условий, действие будет выполнятся при изменении состояния любого триггера с ОК на ПРОБЛЕМА и наоборот. Мы еще должны указать какое действие следует выполнять - это настраивается в блоке Операции действия. Нажмите на Новый в этом блоке, и откроется форма настройки новой операции. Здесь, выберите Одному пользователю в выпадающем списке Отправить сообщение, затем нажмите Выбрать. В появившемся всплывающем окне, выберите пользователя, которого мы создали ранее.

Обратите внимание, что указанный нами адрес электронной почты для этого пользователя будет использоваться именно здесь.

Макросы (или переменные другими словами) {TRIGGER.NAME} и {STATUS}, которые сейчас отображаются в полях Тема по умолчанию и Сообщение по умолчанию, будут заменены на имя триггера и состояние триггера соответственно. Состояние триггера будет PROBLEM или ОК. Нажмите Добавить в блоке Изменить операцию.

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

Поздравляем - мы завершили простую настройку мониторинга некоторого узла сети и отправку оповещений на основе определений условия проблемы.

Если оповещения не работают, убедитесь что созданный вами пользователь имеет по крайней мере права на чтение узла сети который генерирует событие, как отмечается в шаге ”Добавления пользователя”. Кроме того, вы можете проверить журнал действий перейдя в Администрирование → Аудит и выбрав из расположенного в верхнем правом углу выпадающего списка Действия .

 
 

6. Импорт и экспорт XML

1 Предназначение

Функции Импорта/Экспорта в Zabbix дают возможность эффективного обмена различными наборами настроек.

Данные экспортируются в XML формат, который легко читать и изменять. Случаи использования:

  • Обмен шаблонами или картами сетей

Пользователи Zabbix могут делиться параметрами настроек.

  • Интеграция со сторонними инструментами

Универсальный формат XML делает возможной интеграцию и импорт/экспорт данных со сторонними инструментами и приложениями.

Экспортирование и импортирование карт сетей поддерживается начиная с Zabbix версии 1.8.2

 

2 Обзор

В настоящее время для экспортирования поддерживаются две основные категории настроек: узлы сети и связанные с ними данные, сетевые карты.

2.1 Импорт/Экспорт узлов сети

В Zabbix имеется возможность Импорта/Экспорта следующих данных:

  • Узлы сети и их соединения с шаблонами;
  • Шаблоны;
  • Группы элементов данных;
  • Элементы данных;
  • Триггеры;
  • Пользовательские графики;
  • Пользовательские макросы.

2.2 Импорт/Экспорт карт сети

Начиная с версии 1.8.2 Zabbix поддерживает импорт/экспорт следующих элементов:

  • Полная настройка карты сети;
  • Все элементы карты, включая изображения, триггеры, узлы сети, группы узлов сети и карты сети;
  • Все связи с сопутствующими данными, включая подписи и индикаторы состояний.

Кроме того, начиная с версии 1.8.3 используемые рисунки (иконки и фоновые изображения) могут быть также экспортированы.

2.3 Импорт/Экспорт комплексных экранов

Zabbix поддерживает импорт/экспорт комплексных экранов и всех их элементов.

 

3 Экспорт узлов сети

В версиях Zabbix до 1.8.3, экспорт узлов сети и шаблонов доступен из Настройки → Экспорт/Импорт. Начиная с версии 1.8.3, управление импортом и экспортом доступно на соответствующих страницах (Настройки → Узлы сети и Настройки → Шаблоны).

3.1 Начиная с Zabbix 1.8.3

3.1.1 Шаг 1

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

3.1.2 Шаг 2

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

3.2 До версии Zabbix 1.8.3

Шаг 1

Выберите элементы для экспорта

Мы выбрали узел сети “Template_Linux” и все его элементы данных и триггеры.

Нажмите кнопку “Предпросмотр” для просмотра списка элементов для последующего экспорта:

Шаг 2

Экспорт данных

Нажмите кнопку “Экспорт” для экспорта выбранных элементов в XML файл с именем по умолчанию zabbix_export.xml. Файл имеет следующий формат (показано по одному элементу каждого типа):

<?xml version="1.0"?>
<zabbix_export version="1.0" date="11.05.07" time="11.11">
	<hosts>
		<host name="Zabbix Server">
			<useip>1</useip>
			<ip>127.0.0.1</ip>
			<port>10050</port>
			<status>1</status>
			<groups>
			</groups>
			<items>
				<item type="0" key="agent.ping" value_type="3">
					<description>Ping to the server (TCP)</description>
					<delay>30</delay>
					<history>7</history>
					<trends>365</trends>
					<snmp_port>161</snmp_port>
					<valuemap>Service state</valuemap>
					<applications>
						<application>General</application>
					</applications>
				</item>
                  ....
			</items>
			<triggers>
				<trigger>
					<description>Version of zabbix_agent(d) was changed on {HOSTNAME}</description>
					<expression>{{HOSTNAME}:agent.version.diff(0)}&gt;0</expression>
					<priority>3</priority>
				</trigger>
                  ....
			<graphs>
				<graph name="CPU Loads" width="900" height="200">
					<show_work_period>1</show_work_period>
					<show_triggers>1</show_triggers>
					<yaxismin>0.0000</yaxismin>
					<yaxismax>100.0000</yaxismax>
					<graph_elements>
						<graph_element item="{HOSTNAME}:system.cpu.load[,avg15]">
							<color>990000</color>
							<yaxisside>1</yaxisside>
							<calc_fnc>2</calc_fnc>
							<periods_cnt>5</periods_cnt>
						</graph_element>
						<graph_element item="{HOSTNAME}:system.cpu.load[,avg1]">
							<color>009900</color>
							<yaxisside>1</yaxisside>
							<calc_fnc>2</calc_fnc>
							<periods_cnt>5</periods_cnt>
						</graph_element>
						<graph_element item="{HOSTNAME}:system.cpu.load[,avg5]">
							<color>999900</color>
							<yaxisside>1</yaxisside>
							<calc_fnc>2</calc_fnc>
							<periods_cnt>5</periods_cnt>
						</graph_element>
					</graph_elements>
				</graph>
                  ....
			</graphs>
		</host>
                  ....
	</hosts>
</zabbix_export>
 

4 Импорт узла сети

В Zabbix версиях ниже 1.8.3, импорт узлов сети и шаблонов доступен в Настройки → Экспорт/Импорт. Начиная с версии 1.8.3, управление импортом и экспортом доступно на соответствующих страницах настройки (Настройки → Узлы сети и Настройки → Шаблоны).

Шаг 1

Установите параметры для импортирования данных и нажмите “Импорт”.

Обратите внимание на следующие параметры:

ПараметрОписание
Файл для импортаИмя XML файла.
ПравилаЭлемент определяет элемент данных из XML файла.
Если параметр Обновление установлен для Существующее элементов данных, то импортирование будет обновлять его в соответствии с данными взятыми из файла. В противном случае элемент данных не будет обновлен.
Если параметр Добавлять установлен для Отсутствующих элементов данных, то импортирование будет добавлять новый элемент данных на основе данных из файла. В противном случае элемент данных не будет добавлен.

Обратите внимание, что в версиях Zabbix 1.8.x триггера располагаются ранее элементов данных при экспорте и такие данные не будут импортироваться в Zabbix версии 1.6.x. Если сложилась такая ситуация, тогда элементы данных должны быть перемещены ранее триггеров

 

5 Экспорт и импорт карт сети

Экспорт и импорт карт сети доступен начиная с версии 1.8.2 .

Элементы управления экспортом и импортом карт сети могут быть найдены в меню Настройка → Карты сети, где отображаются все установленные карты сети.

5.1 Экспорт карт сети

В левом нижнем углу имеется список с доступными двумя опциями: “Экспортировать выбранное” и “Удалить”. Для экспорта карт сети:

  1. Выберите карты, которые вы хотите экспортировать;
  2. Выберите опцию “Экспорт карт”, если еще не выбрана;
  3. Нажмите кнопку “Перейти”;
  4. Выберите файл, в который будет сохранено данные XML с экспортированными картами сети.

5.2 Импорт карт сети

Импортирование карт такое же простое как и экспортирование. Сверху справа рядом с кнопкой “Создать карту” вы можете найти новую кнопку - “Импорт карты”.

Для импортирования карты:

  1. Нажмите кнопку “Импорт карты сети”. Вы перейдете на страницу похожую на ту, что вы видите при импортировании узлов сети в меню Настройка → Экспорт/Импорт;
  2. Нажмите на кнопку “Выбрать файл” для выбора XML файла содержащего данные о экспортированных картах сети Zabbix;
  3. Проверьте опцию “Обновить существующее”, если вы хотите обновить (перезаписать) существующие карты;
  4. Проверьте опцию “Добавить отсутствующее”, если вы хотите создать новую карту, если такой карты нет;
  5. Нажмите импорт для отправки требуемых данных веб-интерфейсу Zabbix;
  6. Подождите обновления страницы. Это может занять некоторое время, если у вас много карт для импорта или много узлов сети, триггеров и т.д.. Веб-интерфейс Zabbix сообщит вам о успешном импорте или об ошибке импорта.
Диалог импорта картыДиалог импорта карты для суперадминистратора Zabbix, отображает опции импорта изображений (доступно начиная с версии 1.8.3)

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

5.3 Что экспортируется?

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

5.4 Что не экспортируется?

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

Например, если карта ссылается на специфичный триггер в специфичной ноде, но этот триггер был тем временем удален, импортирование завершится неудачей с сообщением об ошибке:

Не удалось найти триггер "our_node5:Zabbix server:Disk is full" используемый в экспортируемой карте "Small map".

5.5 Формат экспорта

Например экспорт пустой карты с фоновым изображением из узла распределенной установки:

 <sysmap>
   <selements>
   </selements>
   <links>
   </links>
   <name>TEST</name>
   <width>800</width>
   <height>600</height>
   <backgroundid>
     <node>aly_trunk</node>
     <name>Map BG</name>
   </backgroundid>
   <label_type>2</label_type>
   <label_location>0</label_location>
   <highlight>1</highlight>
   <expandproblem>1</expandproblem>
 </sysmap>
5.5.1 Элементы карты

Давайте возьмем XML выборку некоторых элементов карты Zabbix, например:

     <selement>
       <selementid>100100000000372</selementid>
       <elementid>
         <node>noden1</node>
         <host>LocalHost</host>
         <description>DOUBLE</description>
         <expression>{TimeHost:system.localtime[local].last(0)}=0 &amp; {TimeHost:system.localtime[local].last(0)}=2</expression>
       </elementid>
       <elementtype>2</elementtype>
       <iconid_off>
         <node>noden1</node>
         <name>Hub</name>
       </iconid_off>
       <label>New Element</label>
       <label_location>-1</label_location>
       <x>231</x>
       <y>122</y>
     </selement>
  • <selement> является открывающим тэгом для элемента (сокращение от “Элемент карты сети);
  • <selementid> уникальный id элемента, используемый для связей на карте;
  • <elementid> ссылка на физическую запись в Zabbix, которая изображена на карте сети (карта, группа узлов сети/узел сети и др.);
  • <node> тэг будет присутствовать, если экспортируемая карта сделана на распределенной установке, иначе пропускается;
  • <elementtype> описывает, что за тип элемента хранится в тэге <elementid>;

При импортировании XML, значения selementid не должны совпадать с любыми значениями в существующем наборе данных - они используются только для определения связей на карте.

5.5.2 Типы элементов и их сохранение

Тэг elementtype в экспортируемой карте может быть одним из:

ЗначениеТип
0Узел сети
1Карта сети
2Триггер
3Группа узлов сети
4Изображение
  • Ссылка на узел сети

Установка DM (распределенный мониторинг)

       <node>noden1</node>
       <host>LocalHost</host>

Одиночная установка сервера

       <host>LocalHost</host>

Узлы сети ссылаются по имени узла сети.

  • Ссылка на карту сети

Установка DM (распределенный мониторинг)

       <node>noden1</node>
       <name>Local map</name>

Одиночная установка сервера

       <name>Local map</name>

Карты ссылаются по имени карт.

  • Ссылка на триггер

Триггеры описываются более сложным способом: Установка DM (распределенный мониторинг)

       <node>noden1</node>
       <host>LocalHost</host>
       <description>Lack of free memory on server {HOSTNAME}</description>
       <expression>{LocalHost:vm.memory.size[free].last(0)}&lt;10000</expression>

Одиночная установка сервера

       <host>LocalHost</host>
       <description>Lack of free memory on server {HOSTNAME}</description>
       <expression>{LocalHost:vm.memory.size[free].last(0)}&lt;10000</expression>

Триггеры ссылаются по имени узла сети, имени триггера и выражению триггера.

  • Ссылка на группу узлов сети

Установка DM (распределенный мониторинг)

       <node>noden1</node>
       <name>Local Host Group</name>

Одиночная установка сервера

       <name>Local Host Group</name>

Группы узлов сети ссылаются по имени группы узлов сети.

  • Ссылка на изображения

Для изображений <elementid> ноды может быть пропущенным.

Узлы <iconid_off>, <iconid_on>, <iconid_unknown>, <iconid_maintenance> и <iconid_disabled> описываются, какие иконки будут использоваться для элементов карты в зависимости от его состояния.

По умолчанию используется пиктограмма <iconid_off>.

Внутри блока иконки, указывается само изображение: Установка DM (распределенный мониторинг)

       <node>noden1</node>
       <name>Local Image</name>

Одиночная установка сервера

       <name>Local Image</name>

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

5.5.3 Подписи к элементам
  • <label> описываются подписи к элементам карты. Здесь могут использоваться макросы.
  • <label_location> используется для позиционирования подписи к элементам:
Значение Тип
-1использовать значение по умолчанию для карты
0снизу
1слева
2справа
3сверху
5.5.4 Позиционирование элемента

Тэги <x> и <y> используются для позиционирования элемента карты по координатам x и y.

5.5.5 Связи на карте

Пример:

     <link>
       <selementid1>100100000000399</selementid1>
       <selementid2>100100000000402</selementid2>
       <drawtype>0</drawtype>
       <color>00AA00</color>
       <linktriggers>
       </linktriggers>
     </link>
  • тэги <selemetid1> и <selementid2> используются для указания элементов карты, которые объединяет связь.
  • <drawtype> определяет стиль связи по умолчанию:
Значение Стиль
0линия
2жирная линия
3точечная линия
4пунктирная линия

* <color> указывает цвет связи по умолчанию;

  • <linktriggers> содержит информацию о индикаторах состояния связи.

Пример:

         <linktrigger>
           <triggerid>
             <node>aly_trunk</node>
             <host>Symmetra PX40 Clone2</host>
             <description>APC: Input Current (PHASE L3)</description>
             <expression>{Symmetra PX40 Clone2:upsPhaseInputCurrent.L3.last(0)}&lt;15 | {Symmetra PX40 Clone2:upsPhaseInputCurrent.L3.last(0)}&gt;18</expression>
           </triggerid>
           <drawtype>0</drawtype>
           <color>0</color>
         </linktrigger>
  • <triggerid> описывает какой триггер используется для индикации состояния связи. Связанный триггер ссылается так же как и триггер элемента карты;
  • <drawtype> и <color> используются для индикации того, как связь должна быть отрисована на карте, если этот триггер имеет наивысший уровень важности среди всех активных триггеров, присоединенных к этой связи.
5.5.6 Изображения

Экспорт/импорт изображений поддерживается в Zabbix начиная с версии 1.8.3

Эта функция дает возможность импорта и экспорта изображений, использованных в картах сети. Если экспортируемая карта сети использует какие-либо изображения, то они будут записаны в результирующий XML файл. Например, как будет выглядеть экспортированное изображение:

<images>
  <image>
    <name>Server (small)</name>
    <imagetype>1</imagetype>
    <encodedImage>iVBORw0KGgoAA...ErkJggg==</encodedImage>
  </image>
</images>

Значение для тэга <encodedImage> укорочено в этом примере

Используемые тэги:

  • <images> - корневой тэг для изображений
  • <image> - индивидуальный тэг изображения
  • <name> - имя изображения, уникальное
  • <imagetype> - тип изображения, где 1 ⇒ иконка, 2⇒ фоновое изображение
  • <encodedImage> - закодированное в base64 изображение

При импортировании, отсутствующие изображения могут быть добавлены и существующие изображения могут быть перезаписаны в зависимости от выбранных галочек. Импортирование изображений доступно только пользователем с типом Zabbix Super Admin.

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

Есть возможность импортировать только изображения, сняв обе галочки напротив “Карта сети”.

 

6 Экспорт и импорт комплексных экранов

Экспорт и импорт комплексных экранов доступен в Zabbix начиная с версии 1.8.2.

Управление экспортом и импортом комплексных экранов вы можете найти в меню Настройка → Комплексные экраны, там где и отображаются все настройки комплексных экранов.

6.1 Экспортирование комплексного экрана

В левом нижнем углу имеется список в двумя опциями: “Экспортировать выбранное” и “Удалить”.

Для экспорта комплексных экранов:

  1. Установите флажки выбора рядом с комплексными экранами, которые вы хотите экспортировать;
  2. Выберите “Экспортировать выбранное”, если вы этого еще не выбрали;
  3. Нажмите кнопку “Выполнить”;
  4. Выберите где вы хотите сохранить файл, в который будут сохранены XML данные с экспортированными комплексными экранами Zabbix.

6.2 Импортирование комплексного экрана

Импортирование комплексных экранов производить так же легко как и экспортирование. В верхнем правом углу рядом с кнопкой “Создать комплексный экран”, вы можете найти новую кнопку - “Импорт комплексного экрана”.

Для импорта комплексного экрана:

  1. Нажмите кнопку “Импорт комплексного экрана”. Будет отображена форма для выбора файла и соответствующие параметры импорта;
  2. Нажмите на кнопку и выберите XML файл, содержащий экспортированные комплексные экраны Zabbix;
  3. Отметьте галочку “Обновить существующее”, если вы хотите обновить (перезаписать) существующие комплексные экраны;
  4. Отметьте галочку “Добавить отсутствующее”, если вы хотите создать новый комплексный экран, в случае если таковой отсутствует;
  5. Нажмите импорт для начала импорта требуемых данных в веб-интерфейс Zabbix;
  6. Подождите пока страница обновиться. Этот процесс может занять некоторое время если у вас много комплексных экранов для импорта или они содержат много элементов. Веб-интерфейс Zabbix сообщит о успешности или ошибке импортирования комплексных экранов. Нажмите на ссылку “Детали” в левом верхнем углу для просмотра подробной информации о том, что было сделано при импортировании или почему не удалось выполнить импорт.
Форма импорта комплексного экрана

6.3 Экспортируемые данные

Экспортируется только структура комплексного экрана. Она включает все настройки комплексного экрана и все элементы комплексного экрана вместе с их настройками.

6.4 Не экспортируемые данные

Все, что включено в сам комплексный экран (например узел сети, группа узлов сети или любые другие данные) не экспортируются.

При импорте комплексного экрана, если любой из указанных элементов отсутствует, импорт будет завершен с ошибкой, например с такой:

Не удалось найти триггер "child_node5: ZBXHost:DOUBLE CHECK" используемый в экспортированном комплексном экране "Link Screen".

6.5 Формат XML - определения в комплексном экране

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

<screens>
  <screen>
    <name>Screen name</name>
    <hsize>1</hsize>
    <vsize>2</vsize>
    <screenitems>
      <screenitem></screenitem>
      <screenitem></screenitem>
    </screenitems>
  </screen>
</screens>
  • name - имя комплексного экрана;
  • hsize - строки;
  • vsize - колонки.
  • screenitem - индивидуальные элементы комплексного экрана, которые описаны ниже.

6.6 XML формат - элементы комплексного экрана

6.7 Формат XML - Возможные тэги элементов

Жирный текст - обязательный тэг для всех элементов;
Нормальный текст - тэг доступный для всех элементов;
Наклонный текст - тэг опционально доступный для некоторых элементов (смотрите ниже для подробных сведений).

  • <resourcetype> - определение типа элемента, по таблице выше;
  • <resourceid> - идентифицирует ресурс, если применимо; зависит от типа ресурса;
  • <width> - ширина элемента в пикселах, если применимо;
  • <height> - высота элемента в пикселах, если применимо;
  • <x> - размещение элемента по оси X в таблице комплексного экрана (ячейка левого верхнего угла);
  • <y> - размещение элемента по оси Y в таблице комплексного экрана (ячейка левого верхнего угла);
  • <colspan> - если больше чем 1, тогда это определяет количество объединенных колонок (направо);
  • <rowspan> - если больше чем 1, тогда это определяет количество объединенных строк (вниз);
  • <elements> - количество отображаемых строк, если применимо;
  • <valign> - выравнивание по вертикали: 0 - по середине, 1 - по верхнему краю, 2 - по нижнему краю;
  • <halign> - выравнивание по горизонтали: 0 - по центру, 1 - по левой стороне, 2 - по правой стороне;
  • <style> - предназначение зависит от типа ресурса;
  • <dynamic> - позволяет применять элемент для различных групп узлов сети и/или узлов сети, если применимо.

Если <resourceid> относится к имени объекта, то он может иметь вложенные тэги. Если данные экспортируются с системы, настроенной на распределенный мониторинг, тогда нода всегда будет идентифицироваться по имени:

<node>Zabbix node</node>

Например, запись о Простой график <resourceid> с системы без распределенного мониторинга будет выглядеть примерно так:

<resourceid>
  <host>Zabbix server</host>
  <key_>system.cpu.load</key_>
</resourceid>

В распределенном мониторинге, она будет:

<resourceid>
  <node>Zabbix node</node>
  <host>Zabbix server</host>
  <key_>system.cpu.load</key_>
</resourceid>

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

6.8 Формат XML - индивидуальные детали каждого элемента комплексного экрана, A-Z

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

6.8.1 Часы

Ресурс с типом 7. Дополнительные тэги:

  • <width>;
  • <height>;
  • <style> - Локальное время (0), Время на сервере (1).
6.8.2 Обзор данных

Ресурс с типом 10. Дополнительные тэги:

  • <resourceid> - Группа узла сети (имя);
  • <width>;
  • <height>.

Возможное содержимое <resourceid>:

<name>Linux servers</name>
6.8.3 График

Ресурс с типом 0. Дополнительные тэги:

  • <resourceid> - График (имя);
  • <dynamic>.

Возможное содержимое <resourceid>:

<host>Zabbix host</host>
<name>Graph name</name>
6.8.4 История действий

Ресурс с типом 12. Дополнительные тэги:

  • <elements> - количество строк для отображения.
6.8.5 История событий

Ресурс с типом 13. Дополнительные тэги:

  • <elements> - количество строк для отображения.
6.8.6 Информация об узлах сети

Ресурс с типом 4. Дополнительные тэги:

  • <resourceid> - Група узла сети (имя).

Возможное содержимое <resourceid>:

<name>Linux servers</name>
6.8.7 Карта сети

Ресурс с типом 2. Дополнительные тэги:

  • <resourceid> - Карта сети Zabbix (имя).

Возможное содержимое <resourceid>:

<name>City map</name>
6.8.8 Простой текст

Ресурс с типом 3. Дополнительные тэги:

  • <resourceid> - Элемент данных (ключ);
  • <elements> - количество строк для отображения;
  • <style> - если установлено, HTML код будет отрисован для данных элемента данных, который содержит строки;
  • <dynamic>.

Возможное содержимое <resourceid>:

<host>Zabbix server</host>
<key_>system.cpu.load</key_>
6.8.9 Комплексный экран

Ресурс с типом 8. Дополнительные тэги:

  • <resourceid> - Комплексный экран (по имени);

Возможное содержимое <resourceid>:

<name>Application servers screen</name>
6.8.10 Информация о сервере

Ресурс с типом 6. Дополнительные тэги отсутствуют.

6.8.11 Простой график

Ресурс с типом 1. Дополнительные тэги:

  • <resourceid> - Элемент данных (ключ);
  • <dynamic>.

Возможное содержимое <resourceid>:

<host>Zabbix server</host>
<key_>system.cpu.load</key_>
6.8.12 Состояние триггеров узла сети

Ресурс с типом 16. Дополнительные тэги:

  • <resourceid> - Узел сети (имя);
  • <elements> - количество строк для отображения.

Возможное содержимое <resourceid>:

<host>aleksei_host</host>
6.8.13 Состояние триггеров группы узлов сети

Ресурс с типом 14. Дополнительные тэги:

  • <resourceid> - Група узла сети (имя);
  • <elements> - количество строк для отображения.

Возможное содержимое <resourceid>:

<name>aaa</name>
6.8.14 Состояние системы

Ресурс с типом 15. Дополнительные тэги отсутвуют.

6.8.15 Информация о триггерах

Ресурс с типом 5. Дополнительные тэги:

  • <resourceid> - Група узла сети (имя);

Возможное содержимое <resourceid>:

<name>aaa</name>
6.8.16 Обзор триггеров

Ресурс с типом 9. Дополнительные тэги:

  • <resourceid> - Група узла сети (имя);

Возможное содержимое <resourceid>:

<name>aaa</name>
6.8.17 Ссылка URL

Ресурс с типом 11. Дополнительные тэги:

  • <url> - полная или относительная ссылка URL.

6.9 Пример XML экспорта

Представленное ниже - это простой комплексный экран (2х2), экспортированный в XML. Он содержит один пользовательский график в верхней левой ячейке (растянутой на две колонки), один простой график в нижней левой ячейке и элемент статуса тригера, отфильтрованный по группе узлов сети, в нижней правой ячейке. Примечание - символ & закодирован как &amp;.

<?xml version="1.0" encoding="UTF-8"?>
<screens>
  <screen>
    <name>Excellent screen</name>
    <hsize>2</hsize>
    <vsize>2</vsize>
    <screenitems>
      <screenitem>
        <resourcetype>0</resourcetype>
        <resourceid>
          <host>Zabbix server</host>
          <name>CPU Load &amp; traffic</name>
        </resourceid>
        <width>1000</width>
        <height>100</height>
        <x>0</x>
        <y>0</y>
        <colspan>2</colspan>
        <rowspan>0</rowspan>
        <elements>0</elements>
        <valign>0</valign>
        <halign>0</halign>
        <style>0</style>
        <dynamic>0</dynamic>
      </screenitem>
      <screenitem>
        <resourcetype>1</resourcetype>
        <resourceid>
          <host>Zabbix server</host>
          <key_>zabbix[uptime]</key_>
        </resourceid>
        <width>500</width>
        <height>90</height>
        <x>0</x>
        <y>1</y>
        <colspan>0</colspan>
        <rowspan>0</rowspan>
        <elements>0</elements>
        <valign>0</valign>
        <halign>0</halign>
        <style>0</style>
        <dynamic>0</dynamic>
      </screenitem>
      <screenitem>
        <resourcetype>14</resourcetype>
        <resourceid>
          <name>Linux servers</name>
        </resourceid>
        <width>500</width>
        <height>100</height>
        <x>1</x>
        <y>1</y>
        <colspan>0</colspan>
        <rowspan>0</rowspan>
        <elements>25</elements>
        <valign>0</valign>
        <halign>0</halign>
        <style>0</style>
        <dynamic>0</dynamic>
      </screenitem>
    </screenitems>
  </screen>
</screens>
 
 

7. Обучение

Этот раздел содержит пошаговые инструкции для наиболее обобщенных задач.

1 Расширение Zabbix агентов

В этом руководстве приведены пошаговые инструкции как расширить функциональность Zabbix агента.

Шаг 1

Напишите скрипт или составьте командную строку для получения необходимого параметра.

Например, мы можем написать следующую команду, чтобы получить общее количество запросов, выполненных сервером MySQL:

mysqladmin -uroot status|cut -f4 -d":"|cut -f1 -d"S"

После выполнения, команда возвращает общее количество SQL запросов.

Шаг 2

Добавим эту команду в конфигурационный файл агента.

Добавьте в zabbix_agentd.conf команду:

UserParameter=mysql.questions,mysqladmin -uroot status|cut -f4 -d":"|cut -f1 -d"S"

mysql.questions это уникальный идентификатор. Здесь может быть любая строка, например, queries.

Протестируем этот параметр, используя утилиту zabbix_get.

Шаг 3

Перезапустите Zabbix агента.

Агент заново загрузит конфигурационный файл.

Шаг 4

Добавим новый элемент данных для мониторинга.

Добавьте новый элемент данных с ключем=mysql.questions к наблюдаемому узлу сети. Тип этого элемента данных должен быть “Zabbix агент” или “Zabbix агент (активный)”.

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

 

2 Мониторинг лог-файлов

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

Шаг 1

Настроим Zabbix агента.

Следуйте стандартной инструкции по установке и настройке агента на наблюдаемом узле сети. Удостоверьтесь, что параметр Hostname совпадает с именем узла сети, настроенного в веб-интерфейсе Zabbix.

Так же убедитесь, что параметр DisableActive не задан в zabbix_agentd.conf

Шаг 2

Добавим новый элемент данных для наблюдения лог-файла.

Обратите внимание на следующие параметры элемента данных:

Параметр Описание
Тип Должен быть установлен в 'Zabbix агент (активный)'.
Ключ Должен быть установлен в 'log[файл<,regexp>]'. Например: log[/var/log/syslog], log[/var/log/syslog,error]. Убедитесь, что у пользователя 'zabbix' имеются права на чтение этого файла, иначе элемент данных перейдет в состояние ‘Не поддерживается. Zabbix агент будет фильтровать записи в лог-файле по указанному регулярному выражению.
Тип информации Должен быть установлен в 'Журнал (лог)'.
Интервал обновления (в сек) Параметр определяет как часто Zabbix агент будет проверять лог-файл на предмет его любых изменений. Обычно нужно установить в 1 секунду, для того чтобы получить новые записи как можно быстрее.
 

3 Удаленные команды

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

Шаг 1

В Zabbix агенте включите выполнение удаленных команд. Убедитесь, что параметр EnableRemoteCommands установлен в 1 и раскомментирован в zabbix_agentd.conf. Перезапустите демон агента, если вы изменили этот параметр.

Шаг 2

Настройте новое действие перейдя в Настройка → Действия и в блоке Новое действие выберите тип операции Удаленная команда.

Обратите внимание на следующие параметры в действии:

Параметр Описание
Тип действия Должен быть установлен в 'Удаленная команда'.
Удаленная команда Каждая строка должна содержать выполняемую команду. Например: хост:sudo /etc/init.d/apache restart. Удаленные команды могут содержать макросы!

Обратите внимание на использование sudo - по умолчанию пользователь Zabbix не имеет прав перезапускать системные сервисы. Ниже смотрите советы о том, как настроить sudo.

Синтаксис удаленных команд:

Удаленная команда Описание
{HOSTNAME}:<команда> Команда 'команда' будет выполнена на том узле сети где произошло событие.
<узел сети>:<команда> Команда 'команда' будет выполнена на стороне хоста 'узел сети'.
<группа узлов сети>#<команда> Команда 'команда' будет выполнена на всех узлах сети в группе узлов сети 'группа узлов сети'.

Zabbix агент выполняет команды в фоновом режиме. Zabbix не проверяет успешность выполнения команды.

Удаленные команды в Zabbix версии младше 1.4 ограничены 44 символами, а начиная с Zabbix версии 1.4 удаленные команды ограничены 255 символами.

Синтаксис удаленных команд IPMI:

Удаленная команда Описание
{HOSTNAME}:IPMI <ipmi control> [значение] Синтаксис для выполнения IPMI команды, на том узле сети где произошло событие. Поддерживаемые значения: “on”, “off” или числа (по умолчанию 1).
<узел сети>:IPMI <ipmi control> [значение] Синтаксис для выполнения IPMI команды на конкретном узле сети.
<группа узлов сети>#IPMI <ipmi control> [значение] Синтаксис для выполнения IPMI команды на всех узлах сети в группе узлов сети.
Права доступа

Удостоверьтесь, что пользователь 'zabbix' имеет права на выполнение настроенных команд. Может быть нужно будет использовать sudo для получения доступа к привилегированным командам. Для настройки доступа, выполните под root:

# visudo

Примеры строк, которые могут быть использованы в файле sudoers:

# разрешает пользователю 'zabbix'  выполнять все команды без ввода пароля.
zabbix ALL=NOPASSWD: ALL
# разрешает пользователю 'zabbix' перезапускать apache без ввода пароля.
zabbix ALL=(ALL) NOPASSWD: /etc/init.d/apache restart

На некоторых системах файл sudoers препятствует нелокальным пользователям выполнять команды. Для изменения этого, закомментируйте опцию requiretty в /etc/sudoers.

Пример 1

Перезагрузка Windows при определенном условии.

Для того, чтобы автоматически перезагрузить Windows в случае возникновения проблем обнаруженных Zabbix, определим следующие действия:

Параметр Описание
Тип действия 'Удаленная команда'
Удаленная команда host:c:\windows\system32\shutdown.exe –r –f
Замените 'host' на имя узла сети сервера Windows согласно веб-интерфейса Zabbix
Пример 2

Перезагрузка хоста используя управление через IPMI.

ПАРАМЕТРОПИСАНИЕ
Тип действия'Удаленная команда'
Удаленная команда{HOSTNAME}:IPMI reset on
Пример 3

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

ПАРАМЕТРОПИСАНИЕ
Тип действия'Удаленная команда'
Удаленная команда{HOSTNAME}:IPMI power off
 

4 Мониторинг сервисов Windows

Этот руководство содержит пошаговые инструкции по настройке мониторинга сервисов Windows. Предполагается, что Zabbix сервер и Zabbix агент настроены и работают.

Шаг 1

Получение имени сервиса

Вы можете получить это имя, перейдя к оснастке Службы в консоли mmc и открыв свойства службы, состояние которой вы хотите наблюдать. На вкладке Общие вы должны увидеть поле, называемое именем службы. Это значение без скобок и будет нужным именем сервиса. Например, если бы я хотел наблюдать за сервисом “workstation”, то мой сервис будет lanmanworkstation.

Шаг 2

Добавление элемента данных для наблюдения

Добавьте новый элемент данных с ключем service_state[lanmanworkstation], типом данных Числовой (целое положительное) и с преобразованием значений Windows service state.

 
 

9. Веб мониторинг

1 Предназначение

Поддержка так называемого Веб мониторинга в Zabbix разработана для достижения следующих целей:

  • Мониторинг производительности веб-приложений.
  • Мониторинг доступности веб-приложений.
  • Поддержка HTTP и HTTPS.
  • Поддержка сложных сценариев, состоящих из многих шагов (HTTP запросов).
 

2 Обзор

Zabbix обеспечивает эффективный и очень гибкий Веб мониторинг. Модуль осуществляет периодическое выполнение Веб сценариев и сохраняет полученные данные в базе данных. Эти данные автоматически используются для графиков, триггеров и оповещений.

Следующая информация будет получена после каждого шага Веб сценария:

  • Время отклика
  • Скорость загрузки в секунду
  • Код ответа

Zabbix также проверяет имеет ли возвращенная HTML страница предопределенные строки.

Zabbix Веб мониторинг поддерживает HTTP и HTTPS.

При выполнении Веб-сценария, Zabbix сервер всегда следует перенаправлениям.

Для использования HTTP прокси, установите переменную среды http_proxy для пользователя, под которым запускается Zabbix сервер. Например, http_proxy=http://proxy_ip:proxy_port.

 

3 Веб сценарий

Сценарий это набор HTTP запросов (шагов), которые будет периодически выполнять Zabbix сервер. Обычно сценарии делаются для одной конкретной части функциональности Веб приложения. Сценарии представляют собой весьма удобный способ мониторинга за ощущениями пользователя. Веб сценарий для группировки связан с группой элементов данных у узла сети. Веб сценарий периодически выполняется и состоит из одного или более шагов. Все кукисы (cookies) запоминаются на протяжении выполнения одного сценария.

Пример 1

Мониторинг графического интерфейса Zabbix

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

Сценарий может иметь следующие шаги:

  1. Вход в систему
  2. Переход на экран обзор
  3. Переход на экран состояния триггеров
  4. Выход из системы

Если шаг не удалось выполнить, тогда выполнение сценария прерывается.

Параметр Описание
Группа элементов данныхВеб сценарий будет связан с этой группой элементов данных. Группа элементов данных данных должна существовать.
Например: Zabbix Server
ИмяИмя Веб сценария.
Имя появится в Мониторинг→Веб
Например: Zabbix GUI
Простая аутентификацияИспользовать или нет простую аутентификацию для доступа на страницы.
Нет: не использовать простую аутентификацию.
Простая аутентификация: использовать простую аутентификацию.
ПользовательПри включенной простой аутентификации требуется ввести пользователя для доступа к страницам.
ПарольПри включенной простой аутентификации требуется ввести пароль для доступа к страницам.
Интервал обновленияКак часто сценарий будет выполняться, в секундах.
Например: 60
АгентZabbix будет представляться выбранным браузером. Полезно для мониторинга Веб сайтов, которые генерируют различное содержимое для разных браузеров.
Например: Opera 9.02 в Linux.
СостояниеАктивен: активирование сценария для его выполнения
Деактивирован: отключение сценария, он не будет выполнятся.
ПеременныеСписок макросов, которые будут использоваться при настройке шагов.
Синтакис:
{макрос}=значение
Макрос {макрос} будет заменен на “переменную” в URL шагов или в переменных POST.
Например:
{user}=guest
{password}=guest
ШагиШаги сценария.

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

Элемент данных Описание
Скорость загрузки для сценария 'Сценарий' Этот элемент данных будет собирать информацию о скорости загрузки (байт в секунду) всего сценария, т.е. средний показатель для всех шагов.
Ключ элемента данных: web.test.in[Scenario,,bps]
Тип: Числовой (с плавающей точкой)
Неуспешный шаг у сценария 'Сценарий' Этот элемент данных сохраняет количество неуспешных шагов в сценарии. Если все шаги в сценарии выполнены успешно, то возвращается 0.
Ключ элемента данных: web.test.fail[Scenario]
Тип: Целочисленный

При добавлении элементов данных веб-мониторинга им устанавливается 30-дневный срок хранения истории и 90-дневный срок хранения тенденций.

Эти элементы данных могут быть использованы для создания триггеров и для определения условий оповещения.

Пример 1

Триггер “WEB scenario failed”

Выражение триггера может быть определено как:

{host: web.test.fail[Scenario].last(0)}#0

Не забудьте заменить Scenario на реальное название вашего сценария.

Пример 2

Триггер “WEB application is slow”

Выражение триггера может быть определено как:

{host: web.test.in[Scenario,,bps].last(0)}<10000

Не забудьте заменить Scenario на реальное название вашего сценария.

 

4 Шаг Веб сценария

Шаг по своей сути это HTTP запрос. Шаги выполняются в заранее определенном порядке.

Параметр Описание
Имя Имя для шага.
Например: Login
URL URL
Например: www.zabbix.com
Post Переменные для HTTP POST, если необходимо.
Например:
id=2345&userid={user}
Если {user} определено как макрос в Веб сценарии, тогда это определение будет заменено на его значение при выполнении шага.
Информация будет отправлена как есть.
Время ожидания Не тратить больше времени чем Время ожидания на выполнение шага. Фактически этот параметр задает максимальное время на соединение с URL и максимальное время на ожидание ответа на HTTP запрос. Следовательно, Zabbix не будет тратить времени больше чем 2 x Время ожидания на шаг.
Например: 15
Требуется Строка (задается как расширенное регулярное выражение POSIX) должна присутствовать в возвращенном содержимом.
Иначе шаг считается не успешным. Если пусто, тогда любое содержимое будет считаться успешным.
Например: Homepage of Zabbix
Коды состояний Список кодов HTTP состояний, которые будут считаться успешными. Если возвращенный код состояния не присутствует в этом списке, тогда шаг будет считаться не успешным.
Если пусто, тогда любой код будет считаться успешным.
Например: 200,210

Как только шаг будет создан, Zabbix автоматически добавляет соответствующие элементы данных для мониторинга и привязывает их к выбранной группе элементов данных. Фактические имя сценария и имена шагов будут использоваться вместо понятий “Сценарий” и “Шаг” соответственно.

Элемент данных Описание
Скорость загрузки для шага 'Шаг' из сценария 'Сценарий' Этот элемент данных собирает информацию о скорости загрузки (байт в секунду) для указанного шага.
Элемент данных: web.test.in[Сценарий,Шаг,bps]
Тип: Числовой (с плавающей точкой)
Время ответа для шага 'Шаг' из сценария 'Сценарий' Этот элемент данных собирает информацию о времени ответа в секундах для указанного шага. Время ответа считается от начала отправки запроса до окончания получения всей передаваемой информации.
Элемент данных: web.test.time[Сценарий,Шаг]
Тип: Числовой (с плавающей точкой)
Код ответа для шага 'Шаг' из сценария 'Сценарий' Этот элемент данных собирает информацию о возвращенных кодах ответа для указанного шага.
Элемент данных: web.test.rspcode[Сценарий,Шаг]
Тип: Числовой (целое положительное)

При добавлении элементов данных Веб мониторинга им устанавливается 30-дневный срок хранения истории и 90-дневный срок хранения тенденций.

Эти элементы данных могут быть использованы для создания триггеров и определения условий оповещения.

Пример 1

Триггер “Zabbix GUI login is too slow”

Выражение триггера может быть определено как:

{zabbix: web.test.time[ZABBIX GUI,Login].last(0)}>3
 

5 Реальный сценарий из жизни

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

Шаг 1

Добавление новой группы элементов данных к узлу сети.

Перейдите в Настройка → Узлы сети, затем нажмите на Группы элементов данных у узла сети, который вы хотите использовать для Веб мониторинга. В разделе групп элементов данных нажмите на Создать группу элементов данных.

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

Шаг 2

Добавление нового веб сценария.

Мы добавим новый сценарий для наблюдения за Веб-интерфейсом Zabbix. Сценарий будет выполнять несколько шагов. Перейдите в Настройка → Веб, выберите узел сети, затем нажмите кнопку Создать сценарий.

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

Обратите внимание, что мы также создаем два макроса, {user} и {password}.

Шаг 3

Определение шагов для сценария.

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

Веб сценарий шаг 1

Начнем с проверки того, что первая страница отвечает правильно, возвращая код ответа HTTP 200 и содержит текст “SIA Zabbix”.

После завершения настройки этого шага, нажмите Добавить.

Веб сценарий шаг 2

Мы продолжаем, осуществляя вход в веб-интерфейс Zabbix, мы используем для этого макросы (переменные) {user} и {password}, которые мы определили на уровне сценария.

Заметьте, что в интерфейсе Zabbix используется JavaScript перенаправление при входе в интерфейс, поэтому первый шагом мы должны сделать вход в систему, и только в дальнейших шагах мы можем осуществлять проверки, требующие авторизованной сессии. К тому же, шаг входа в систему должен выполняться используя полный URL к файлу index.php.

Все передаваемые переменные должны быть в одной строке и должны быть связаны символом &. Пример строки для входа в интерфейс Zabbix:

name=Admin&password=zabbix&enter=Enter

Если использовать макросы из этого примера, то строка входа в систему будет: name={user}&password={password}&enter=Enter

Веб-сценарий шаг 3

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

Веб-сценарий шаг 4

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

Завершающий шаг настройки

Завершающий шаг настройки Веб сценария будет выглядеть примерно так:

Шаг 4

Сохраняем завершенный сценарий Веб мониторинга.

Список групп элементов данных и связанные сценарии будут доступны в меню Мониторинг→Веб:

Нажмите на имя сценария, чтобы просмотреть более детальную статистику:

 
 

10. Мониторинг файлов логов

7 Обзор

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

 

2 Как это работает

Мониторинг лог файлов требует запущенного Zabbix агента на удаленном узле сети. Элемент данных используемый для мониторинга лог-файла должен иметь тип Zabbix Агент (Активный), его тип значения должен быть Журнал и ключ должен быть установлен как log[файл,<шаблон>,<кодировка>,<макс кол-во строк>] или logrt[путь к файлу журнала с форматированным именем файла,<шаблон>,<кодировка>,<макс кол-во строк>].

Например:

log["/home/user/file.log","pattern_to_match","UTF-8",100]
или
logrt["/home/user/filelog_.*_[0-9]{1,3}","pattern_to_match","UTF-8",100]

Последний пример будет собирать данные из файлов, таких как “filelog_abc_1” или “filelog__001”.

Важные замечания:

  • Сервер и агент следят за размером наблюдаемого журнала и временем последнего изменения (для logrt) в двух счетчиках.
  • Агент начинает читать лог-файл с той позиции, в которой он остановился последний раз.
  • Количество уже проанализированных данных (счетчик размера) и время последнего изменения (счетчик времени) хранятся в базе данных Zabbix и отправляются агенту, чтобы указать ему с какой именно позиции следует начинать читать лог-файл.
  • Всякий раз, когда лог-файл становится меньше, чем известное агенту значение счетчика размера, счетчик обнуляется и агент начинает читать лог-файл с самого начала, принимая во внимание счетчик времени.
  • Все файлы, соответствующие формату имени файла в соответствующей папке, анализируются каждый цикл и агент пытается получить следующую строку из лог-файла (для logrt).
  • Если в папке существует несколько соответствующих файлов с тем же временем последнего изменения, то агент будет лексикографически читать наименьший из этих файлов.
  • Zabbix агент обрабатывает новые записи лог-файла один раз на Период обновления в секундах.
  • Zabbix агент отправляет не более чем maxlines записей из лог-файла в секунду. Это ограничение предотвращает перегрузку сети и ресурсов процессора и переопределяет значение по умолчанию предусмотренное параметром MaxLinesPerSecond в файле настроек агента.
  • Специальное примечание для разделителей пути “\”: если формат файла представлен как “file\.log”, тогда там не должно быть папки “file”, поскольку невозможно однозначно определить, экранируется ли это символ ”.” или это первый символ в имени файла.
 
 

11. Обнаружение

1 Предназначение

У Zabbix модуля обнаружения есть несколько предназначений:

  • Упростить развертывание

Обнаружение сети может быть использовано для значительного упрощения и ускорения развертывания Zabbix. Эта функция также деет возможность создать дружественную к пользователю систему.

  • Упрощение администрирования

Правильно настронный модуль обнаружения намного упрощает администрирование Zabbix системы.

  • Поддержка меняющихся сред

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

 

2 Обзор

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

  • Диапазоны IP
  • Доступность внешних сервисов (FTP, SSH, WEB, POP3, IMAP, TCP и другие)
  • Полученная информация от Zabbix агента
  • Полученная информация от SNMP агента

Обнаружение НЕ обеспечивает:

  • Обзор сетевой топологии

Каждый сервис и узел сети (IP) проверямый модулем обнаружения Zabbix генерирует события, которые могут быть использованы для создания правил для следующих действий:

  • Генерирование оповещений пользователям
  • Добавление и удаление узлов сети
  • Активирование и деактивирование узлов сети
  • Добавление узлов сети в группу узлов сети
  • Удаление узлов сети из группы узлов сети
  • Присоединение узлов сети к шаблону
  • Отсоединение узлов сети от шаблона
  • Выполнение удаленных команд

Действия могут быть настроены относительно продолжительности доступности и недоступности узлов сети или сервисов.

Если Zabbix сервер скомпилирован с поддержкой IPv6 и утиллита fping6 отсувствует, тогда проверки по ICMP для устройств с IPv4 будут тоже не работать. Только начиная с версии 1.8.2 IPv4 адреса обрабатываются используя fping.

 

3 Как это работает

Обнаружение устройств в сети состоит из двух этапов: Обнаружение и Действие.

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

Затем мы обрабатываем события и осуществляем некоторые действия в зависимости от вида обнаруженного устройства, IP адреса, его состояния, продолжительности доступности/недоступности и т.д.

3.1 Обнаружение

Zabbix периодически сканирует установленные в правилах обнаружения диапазоны IP. Частота сканирования настраивается для каждого правила индивидуально.

Каждое правило определяет набор проверок сервисов, которые будут выполняться по диапазону IP.

События генерируемые модулем обнаружения имеют Источник События “Обнаружение”.

Zabbix генерирует следующие события:

Событие Когда генерируется
Сервис доступен Каждый раз когда Zabbix обнаруживает активный сервис.
Сервис недоступен Каждый раз когда Zabbix не может обнаружить сервис.
Узел сети доступен Если хотя бы один сервис доступен для IP.
Узел сети недоступен Если все сервисы не доступны.
Сервис обнаружен Если сервис стал доступен после его недоступности или обнаружен впервые.
Сервис потерян Если сервис потерян после того как был доступен.
Узел сети обнаружен Если узел сети стал доступен после его недоступности или обнаружен впервые.
Узел сети потерян Если узел сети потерян после того как был доступен.

3.2 Действия

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

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

 

4 Правило обнаружения в сети

Правило обнаружения в сети - это правило, используемое Zabbix для обнаружения узлов сети и сервисов.

Параметры правила сетевого обнаружения:

Параметр Описание
Имя Имя правила. Например, “Local network”.
Диапазон IP адресов Диапазон IP адресов для обнаружения. Можно записывать в следующих форматах:
Один IP: 192.168.1.33
Диапазон IP адресов: 192.168.1.1-255
Диапазон IP с маской: 192.168.4.0/24
Список: 192.168.1.1-255,192.168.2.1-100,192.168.2.200,192.168.4.0/24
Задержка (в секундах) Этот параметр определяет как часто Zabbix будет выполнять это правило.
Проверки Zabbix будет использовать этот список проверок для обнаружения узлов сети и сервисов.
Список поддерживаемых проверок: SSH, LDAP, SMTP, FTP, HTTP, POP, NNTP, IMAP, TCP, Zabbix агент, SNMPv1 агент, SNMPv2 агент, SNMPv3 агент
Параметр Порты может принимать следующие значения:
Один порт: 22
Диапазон портов: 22-45
Список: 22-45,55,60-70
Критерий уникальности устройства Критерий уникальности может быть по:
IP адресу (не обрабатываются устройства с несколькими IP)
Одна из проверок обнаружения - будет основан на одной из SNMP или Zabbix агенте проверке.
Состояние Активно – это правило активно и будет выполняться Zabbix сервером
Деактивировано – это правило не активно. Оно не будет выполняться.

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

 

5 Сценарий из жизни

Допустим, мы хотим настроить обнаружение для локальной сети с IP диапазоном 192.168.1.1-192.168.1.255. В нашем случае мы хотим получить:

  • обнаружение тех узлов сети, на которых имеется Zabbix агент
  • запуск обнаружения каждые 10 минут
  • добавление узла сети для наблюдения, если время работы узла сети больше чем 1 час
  • удаление узла сети, если узел сети недоступен на протяжении более 24 часов
  • использование Template_Windows для хостов Windows
  • использование Template_Linux для хостов Linux
  • добавление Linux хостов в группу “Linux servers”
  • добавление Windows хостов в группу “Windows Servers”
Шаг 1

Установим правило обнаружения в сети для нашего диапазона IP адресов (Настройка → Обнаружение → Создать правило).

Zabbix будет пытаться обнаружить узлы сети в диапазоне IP адресов 192.168.1.1-192.168.1.255, пытаясь подключиться к Zabbix агенту и получить значение ключа system.uname. Полученное значение от агента может быть использовано для создания различных действий для разных операционных систем. Например, присоединить шаблон Windows_Template к Windows серверам, шаблон Linux_Template к Linux серверам.

Правило будет выполняться каждые 10 минут (600 секунд).

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

Шаг 2

Определим действия для добавления новых обнаруженных Linux серверов в соответвующие группы/шаблоны. (Настройка → Действия → Создать действие)

Это действие выполняется если:

  • сервис “Zabbix агента” в состоянии “Доступен”
  • значение от system.uname (ключ Zabbix агента, который мы использовали в создании правила) содержит “Linux”
  • Время работы больше чем 1 час (3600 секунд)

Это действие будет выполнять следующие операции:

  • добавление нового обнаруженного узла сети в группу “Linux servers” (также добавляет узел сети, если он не был добавлен ранее)
  • присоединение к шаблону “Template_Linux”. Zabbix будет автоматически запускать наблюдение за узлом сети, используя элементы данных и триггеры из шаблона “Template_Linux”.
Шаг 3

Определим действия для добавления новых обнаруженных Windows серверов в соответвующие группы/шаблоны.

Шаг 4

Определим действия для удаления потерянных серверов.

Сервер будет удален из мониторинга, если сервис “Zabbix агент” будет “Недоступен” на протяжении более 24 часов (86400 секунд).

 
 

12. Расширенный мониторинг по SNMP

1 Специальные OID

Некоторые OID, наиболее используемые в SNMP, автоматически преобразовываются в числовые представления самим Zabbix. Например, ifIndex преобразовывается в 1.3.6.1.2.1.2.2.1.1, ifIndex.0 преобразовывается в 1.3.6.1.2.1.2.2.1.1.0.

В таблице содержится перечень специальных OID.

Специальный MIB Идентификатор Описание
ifIndex 1.3.6.1.2.1.2.2.1.1 Уникальное значение для каждого интерфейса. От 1 до ifnumber.
ifDescr 1.3.6.1.2.1.2.2.1.2 Текстовая строка содержащая информацию о интерфейсе. Эта строка может включать в себя название компании производителя, имя продукта, аппаратную версию интерфейса.
ifType 1.3.6.1.2.1.2.2.1.3 Тип интерфейса, например, 6 - ethernet; 9 - 802.5 маркерное кольцо; 23 - PPP; 28 - SLIP.
ifMtu 1.3.6.1.2.1.2.2.1.4 Mtu для конкретного интерфейса. Размер наибольшей датаграммы, которую может отправить/получить интерфейс, указывается в байтах
ifSpeed 1.3.6.1.2.1.2.2.1.5Текущая скорость интерфейса в битах за секунду.
ifPhysAddress 1.3.6.1.2.1.2.2.1.6 Физический адрес интерфейса или строка нулевой длины для интерфейсов без физического адреса (напр. последовательный).
ifAdminStatus 1.3.6.1.2.1.2.2.1.7 Текущее административное состояние интерфейса.
ifOperStatus 1.3.6.1.2.1.2.2.1.8 Текущее рабочее состояние интерфейса.
ifInOctets 1.3.6.1.2.1.2.2.1.10 Полное число полученных байтов, включая символы заголовков.
ifInUcastPkts 1.3.6.1.2.1.2.2.1.11 Количество пакетов одноадресной рассылки, доставленных на верхний уровень стека протокола.
ifInNUcastPkts 1.3.6.1.2.1.2.2.1.12 Количество пакетов НЕ одноадресной рассылки (broadcast и multicast), доставленных на верхний уровень стека протокола.
ifInDiscards 1.3.6.1.2.1.2.2.1.13 Количество входящих, но отвергнутых пакетов, даже если не было обнаружено ошибок, мешающих доставке пакетов на верхний уровень стека протокола. Одна из возможных причин для отвержения пакета могло быть освобождение места в буфере.
ifInErrors 1.3.6.1.2.1.2.2.1.14 Количество входящих пакетов, полученных с ошибкой, из за которой пакеты не были доставлены на верхний уровень стека протокола.
ifInUnknownProtos 1.3.6.1.2.1.2.2.1.15 Количество пакетов, полученных через интерфейс, но отвергнутых из за неизвестного или не поддерживаемого протокола.
ifOutOctets 1.3.6.1.2.1.2.2.1.16 Полное количество отправленных октетов с интерфейса, включая символы заголовков.
ifOutUcastPkts1.3.6.1.2.1.2.2.1.17 Полное количество пакетов, которые пытался отправить верхний уровень стека протокола, и которые адресованы НЕ на broadcast или multicast адреса на этом суб-уровне, включая те которые были отвергнуты или не отправлены.
ifOutNUcastPkts 1.3.6.1.2.1.2.2.1.18 Полное количество пакетов, которые пытался отправить верхний уровень стека протокола, и которые адресованы на broadcast или multicast адреса на этом суб-уровне, включая те которые были отвергнуты или не отправлены.
ifOutDiscards 1.3.6.1.2.1.2.2.1.19 Количество исходящих пакетов, которые были отвергнуты даже если не было обнаружено ошибок, мешающих отправке. Одна из возможных причин отвержения пакета могло быть освобождение места в буфере.
ifOutErrors 1.3.6.1.2.1.2.2.1.20 Количество исходящих пакетов, которые не могут быть отправлены из за ошибок.
ifOutQLen 1.3.6.1.2.1.2.2.1.21 Длина очереди исходящих пакетов (количество).
 

2 Динамические индексы

Динамические индексы поддерживаются в Zabbix начиная с версии 1.5.

Специальный синтаксис для значения SNMP OID в элементе данных может быть использован в целях обхождения проблем с динамическими данными (случайные идентификаторы сетевых интерфейсов и т.д.). Синтаксис:

<базовый OID данных>["index","<базовый OID индекса>","<искомая строка>"]

Например, для получения ifInOctets c интерфейса GigabitEthernet0/1 устройства Cisco, используйте следующий OID:

ifInOctets["index","ifDescr","GigabitEthernet0/1"]
Параметр Описание
базовый OID данных Базовый OID, используемый для возвращенных данных.
index Метод обработки. В данный момент поддерживается только один метод
index – поиск по индексу и присоединение его к базовому OID
базовый OID индекса Этот OID будет использоваться для поиска искомой строки.
искомая строка Эта строка используется для точного совпадения со значением при поиске. Регистрозависимая.

Другой пример: получение объема памяти, использованной процессом apache:

HOST-RESOURCES-MIB::hrSWRunPerfMem["index","HOST-RESOURCES-MIB::hrSWRunPath", "/usr/sbin/apache2"]
...

HOST-RESOURCES-MIB::hrSWRunPath.5376 = STRING: "/sbin/getty"
HOST-RESOURCES-MIB::hrSWRunPath.5377 = STRING: "/sbin/getty"
HOST-RESOURCES-MIB::hrSWRunPath.5388 = STRING: "/usr/sbin/apache2"
HOST-RESOURCES-MIB::hrSWRunPath.5389 = STRING: "/sbin/sshd"
...

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

HOST-RESOURCES-MIB::hrSWRunPerfMem.5376 = INTEGER: 528 KBytes
HOST-RESOURCES-MIB::hrSWRunPerfMem.5377 = INTEGER: 528 KBytes
HOST-RESOURCES-MIB::hrSWRunPerfMem.5388 = INTEGER: 31468 KBytes
HOST-RESOURCES-MIB::hrSWRunPerfMem.5389 = INTEGER: 31740 KBytes
HOST-RESOURCES-MIB::hrSWRunPerfMem.5390 = INTEGER: 32116 KBytes
HOST-RESOURCES-MIB::hrSWRunPerfMem.5391 = INTEGER: 30420 KBytes
HOST-RESOURCES-MIB::hrSWRunPerfMem.5392 = INTEGER: 32560 Kbytes

Динамические индексы кэшируются в Zabbix начиная с версии 1.6.3.

Использование динамических индексов приводит к большему числу SNMP запросов в Zabbix версиях до 1.7. Начиная с версии Zabbix 1.7. просмотр динамических индексов и возвращение данных осуществляется за одно соединение

 
 

13. Мониторинг устройств IPMI

1 Предназначение

В Zabbix есть несколько предназначений по мониторингу IPMI:

  • Мониторинг работоспособности и доступности IPMI устройств
  • Функции удаленного управления, базирующиеся на IPMI

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

 

2 Параметры IPMI

Мониторинг IPMI в Zabbix работает только для устройств, имеющих поддержку технологии IPMI (HP iLO, Sun hardware и другие).

Для того чтобы использовать IPMI мониторинг, узел сети должен быть настроен на обработку IPMI команд. IP адрес IPMI агентов, номер порта, имя пользователя и пароль должны быть настроены должным образом.

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

 

3 Действия с IPMI

Можно задать два типа действий:

  • автоматические действия, которые будут выполняться автоматически
  • скрипты IPMI, которые могут быть выполнены вручную из веб-интерфейса Zabbix

Смотрите соответствующие разделы Документации для получения более подробных сведений.

 
 

14. Использование Прокси

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

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

1 Почему использовать Прокси?

Zabbix Прокси может быть использован для различных целей:

  • Снижение нагрузки на Zabbix Сервер при мониторинге за тысячами устройств
  • Мониторинг в отдаленных местах
  • Мониторинг в местах с ненадежной связью
  • Упрощение обслуживания распределенного мониторинга

 

2 Прокси или Нода ?

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

Легкость GUI Независимая работа Легкое обслуживание Автоматическое создание БД1 Локальное администрирование
Нода Нет Да Да Нет Нет Да
Прокси Да Нет Да Да Да Нет
Готовность к встроенному железу TCP соединение в одну сторону Централизованная конфигурация Генерация оповещений
Нода Нет Да Нет Да
Прокси Да Да Да Нет

[1] Функция автоматического создания БД работает только с SQLite. Остальные базы данных требуют ручной настройки.

 

3 Настройка

3.1 Управление Прокси

Страницу управления Zabbix Прокси можно найти в меню Администрирование → РМ и затем выбрать Прокси из раскрывающегося списка в правом верхнем углу. На этой странице можно создавать и удалять Прокси. Для каждого Прокси отображается время последнего обращения к Серверу (как от отправки новых данных так и от сообщений доступности).

Открыв форму свойств Прокси, Вы можете выбрать узлы сети, которые должны мониториться через Прокси.

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

3.2 Мониторинг узла сети через Прокси

Каждый узел сети может мониториться либо самим Zabbix Сервером либо через Zabbix Прокси. Мониторинг через прокси устанавливается в Настройках → Узлы сети → открыть форму определения узла сети:

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

 
 

15. Распределенный мониторинг

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

1 Предназначение

Распределенный мониторинг предназначен для достижения нескольких целей:

  • Возможность контроля над всем мониторингом из одного или нескольких местоположений

Zabbix администратор может управлять настройками всех Нод из одного веб-интерфейса Zabbix.

  • Иерархический мониторинг.

Предназначено для мониторинга в сложных многоуровневых средах.

  • Мониторинг больших сложных сред.

Это особенно полезно если мониторятся несколько мест, разнесенных географически.

  • Снижение нагрузки на перегруженном Zabbix сервере.

Мониторите тысячи узлов сети используя один Zabbix сервер? Это может быть как раз для вас!

 

2 Обзор

Zabbix предоставляет возможность эффективного и надежного мониторинга распределенной IT инфраструктуры. Настройку всей распределенной установки можно выполнить из одного места через общий веб-интерфейс.

Zabbix поддерживает вплоть до 1000 (одной тысячи) Нод в режиме распределенной установки. Каждая Нода отвечает за мониторинг своей собственной территории. Нода может быть настроена как локально так и через Мастер Ноду, которая имеет копию конфигурационных данных всех Дочерних Нод. Настройку Дочерних Нод можно осуществить в режиме оффлайн, т.е. при отсутствии связи между Мастер и Дочерней Нодой.

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

Все Ноды могут работать даже в случае проблем со связью. История собранных данных и событий хранится локально. Когда связь восстанавливается, тогда Дочерние Ноды будут выборочно отправлять данные Мастер Ноде.

Новые Ноды могут быть прикреплены к или откреплены от распределенной установки Zabbix без какой либо потери их функциональности. При этом нет необходимости перезапускать какую либо Ноду.

Каждая Нода имеет свои собственные настройки и работает как обычный Zabbix сервер.

 

3 Настройка

3.1 Настройка Нод

Настройка конфигурации нод представлена в разделе Администрирование → РМ.

Параметры Нод:

Параметр Описание
имя Уникальное имя Ноды.
Id Уникальный ID Ноды.
Тип Мастер – Локальная нода
Удаленный – Удаленная нода
Часовой пояс Часовой пояс Ноды. Zabbix автоматически конвертирует время в локальный часовой пояс при передаче соответствующих данных между Нодами.
IP IP адрес Ноды. Zabbix траппер должен прослушивать этот IP адрес.
Порт Номер порта Ноды. Zabbix траппер должен прослушивать этот порт. По умолчанию 10051.
Не хранить историю старше чем (в днях) Только для не локальных данных истории. Zabbix не будет хранить историю с Ноды дольше N дней.
Не хранить тенденции старше чем (в днях) Только для не локальных данных тендеций. Zabbix не будет хранить тенденции с Ноды дольше N дней.

3.2 Простая конфигурация

Наша простая конфигурация состоит из Мастер Ноды и одной Дочерней.

Мастер Нода будет иметь полный контроль над конфигурацией Дочерней Ноды. Дочерняя Нода будет пересылать Мастер Ноде события, историю и тенденции собранных данных.

Мастер Нода будет иметь NodeID =1, а Дочерняя Нода NodeID =2.

IP Мастер Ноды: 192.168.3.2
IP Дочерней Ноды: 192.168.3.5

Для Мастер Ноды

Шаг 1 Установите Zabbix.

Следуйте инструкциям по стандартному созданию базы данных, установке веб-интерфейса Zabbix и его исполняемых файлов.

Шаг 2 Установите NodeID в конфигурационном файле сервера.

В файле zabbix_server.conf:

 NodeID=1

Шаг 3 Сконвертируйте данные в базе данных.

Нужно запустить сам Zabbix сервер для конвертации уникального ID для использования его в качестве первой Ноды.

cd bin
./zabbix_server -n 1 -c /etc/zabbix/zabbix_server.conf
Converting tables .................................................................. done.

Conversion completed.

Этот шаг должен быть выполнен только один раз. Эта опция не требуется для обычного запуска Zabbix сервера! Запуск Zabbix сервера с параметром -n не запускает процессы сервера.

Шаг 4 Настройте параметры Ноды.

Шаг 5 Добавьте Дочернюю Ноду.

Шаг 6 Запустите Мастер Ноду.

Вы должны увидеть NodeID в сообщениях запуска сервера в лог-файле:

31754:20070629:150342 server #16 started [Node watcher. Node ID:1]
Для Дочерней Ноды

Шаг 1 Установите Zabbix.

Следуйте инструкциям по стандартному созданию базы данных, установке веб-интерфейса Zabbix и его исполняемых файлов.

Шаг 2 Установите NodeID в конфигурационном файле сервера.

В файле zabbix_server.conf:

NodeID=2

Шаг 3 Сконвертируйте данные в базе данных.

Zabbix сервер cконвертирует все ID в уникальные для второй Ноды.

cd bin
./zabbix_server -n 2 -c /etc/zabbix/zabbix_server.conf
Converting tables .................................................................. done.

Conversion completed.

Этот шаг должен быть выполнен только один раз. Эта опция не требуются для обычного запуска Zabbix сервера!

Шаг 4 Настройте параметры Ноды.

Шаг 5 Добавьте Мастер Ноду.

Шаг 6 Запустите Дочернюю Ноду.

Вы должны увидеть NodeID в сообщениях запуска сервера в лог-файле:

27524:20070629:150622 server #9 started [Node watcher. Node ID:2]
Оно работает?

Возможность выбора текущей Ноды появится автоматически после того как Ноды будут определены:

Добавьте узел сети для мониторинга Дочерней Нодой и смотрите приходящие в Мастер Ноду события:

3.3 Более сложная конфигурация

Установка состоит из семи Нод. Каждая Нода может быть настроена как локально (используя локальный веб-интерфейс), так и с одной из Мастер Нод.

В этом примере, Riga (Нода 4) будет собирать события со всех Дочерних Нод. Дополнительно она может также собирать и данные истории.

 

4 Независимость от платформ

Нода может использовать свою собственную платформу (ОС, аппаратное обеспечение) и СУБД независимо от других Нод. Кроме того Дочерние Ноды можно устанавливать без установки самого веб-интерфейса Zabbix.

Может быть целесообразным использовать не мощное железо для Zabbix сервера, использующего SQLite или MySQL MyISAM, в то время как Ноды более высокого уровня могут использовать комбинацию с лучшего железа и InnoDB MySQL, Oracle или PostgreSQL.

 

5 Настройка одиночной Ноды

Каждая Нода в распределенной среде должна быть правильно настроена, т.е. чтобы она имела уникальный Node ID. Дополнительные шаги.

Шаг 1

Следуйте стандартной процедуре по установке.

Следуйте стандартной процедуре по установке, но не запускайте Zabbix сервер. Веб-интерфейс Zabbix должен быть установлен и настроен. База данных Zabbix должна быть создана и в нее должны быть загружены данные из data.sql.

Шаг 2

Сконфигурируйте zabbix_server.conf.

Добавьте NodeID в конфигурационный файл Zabbix сервера. NodeID должен быть уникальным ID Ноды.

Шаг 3

Настройте Мастер и Дочерние Ноды.

Используя веб-интерфейс Zabbix, настройте параметры Нод, имеющих прямую связь с этой Нодой. Удостоверьтесь, что все параметры IP адресов и номера портов настроены правильно.

Шаг 4

Запустите Zabbix Ноду.

Запустите Zabbix Сервер:

shell> ./zabbix_server

Если все настроено правильно, тогда Zabbix Нода автоматически начнет обмениваться настройками и данными со всеми Нодами в распределенной установке. Вы можете увидеть следующие сообщения в лог-файле Zabbix Сервера:

...
11656:20061129:171614 NODE 2: Sending data of node 2 to node 1 datalen 3522738
11656:20061129:171614 NODE 2: Sending data of node 2 to node 1 datalen 20624
...
 

6 Переключение между Нодами

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

Вся информация, доступная в веб-интерфейсе, относится к выбранной Ноде.

 

7 Потоки данных

7.1 Дочерняя к Мастер

Каждый Дочерняя Нода периодически отправляет изменения конфигурации, данные истории и события своей Мастер Ноде.

Данные Частота
Изменения конфигурации Каждые 120 секунд.
События Каждые 10 секунд.
История Каждые 10 секунд.

Дочерняя Нода будет повторять попытки отправки данных в случае возникновения проблем со связью.

Данные тенденций подсчитываются локально на основе полученных данных истории.

Zabbix не пересылает рабочих данных между Нодами. Например, информация относящаяся к элементам данных (последняя проверка, последнее значение, и т.д.), существует только локально.

Отправку событий и истории можно регулировать параметрами настроек NodeNoEvents и NodeNoHistory

7.2 Мастер к Дочерней

Каждая мастер Нода (нода с хотя бы одной дочерней нодой) периодически оправляет изменения конфигурации для Дочерних Нод либо прямо, либо через другие Дочерние Ноды, имеющие прямую связь с Мастер Нодой.

Данные Частота
Изменения конфигурации Каждые 120 секунд.

Zabbix не отправляет конфигурацию самой Мастер Ноды для Дочерних Нод.

7.3 Настройки файерволла

Соединения между Нодами используют только протокол TCP.

Поток данных Исходящий порт Порт назначения
Дочерняя к Мастер Любой 10051

Здесь используется порт по умолчанию для процесса Zabbix траппер.

 

8 Анализ производительности

Любая Нода требует достаточных вычислительных ресурсов для в распределенной установке. Мастер Нода должна быть достаточно мощной чтобы обрабатывать и хранить не только локальные данные, но и данные, полученные от всех его Дочерних Нод. Связь между Нодами должна быть также достаточно быстрой для своевременной передачи новых данных.

 
 

16. Режим обслуживания для Zabbix GUI

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

База данных Zabbix может быть остановлена в то время как Zabbix GUI находится в режиме обслуживания.

1 Предназначение

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

  • Защита базы данных Zabbix от любых изменений, инициированных пользователями
  • Выполнение обслуживания базы данных
  • Информирование пользователей о причине плановых работ
  • Пользователи из диапазона IP адресов будут иметь возможность нормально работать с веб-интерфейсом в ходе обслуживания
  • Автоматический возврат к нормальному режиму при завершении обслуживания
 

2 Настройка

Для того чтобы включить режим обслуживания, нужно отредактировать файл “conf/maintenance.conf.php”. Раскомментируйте следующие строки:

// Режим обслуживания
define('ZBX_DENY_GUI_ACCESS',1);

// диапазон IP адресов, с которых будет разрешен доступ к веб-интерфейсу
$ZBX_GUI_ACCESS_IP_RANGE = array('127.0.0.1');

// Соощенение Предупреждения, отображаемое на экране!
$_REQUEST['warning_msg'] = 'Zabbix is under maintenance.';
Параметр Подробности
ZBX_DENY_GUI_ACCESS Включение режима обслуживания:
1 – режим обслуживания включен, иначе отключен
ZBX_GUI_ACCESS_IP_RANGE Соединения с этих IP адресов будут разрешены в нормальном режиме в период обслуживания.
Например:
192.168.1.1-255
warning_msg Информационное сообщение.
 

3 Как это выглядит

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

 
 

17. Веб-интерфейс

Имеется несколько полезных функций веб-интерфейса Zabbix:

  • Почти все экраны поддерживают полноэкранного режима
  • Ctrl + щелчок мышью делает возможным выделение нескольких элементов из списка (узлов сети, элементов данных, триггеров и т.д.)
  • Звуковой сигнал может быть включен или выключен на странице Состояния Триггеров
  • Новые темы могут быть созданы в соответствии со своими предпочтениями или в соответствии с цветовой схемой компании

1 Создание своей темы

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

Шаг 1

Создайте свой файл CSS.

Файл может быть основан на существующих CSS файлах, поставляемых вместе с Zabbix. Например, вы можете взять от темы “Черное&Синее” CSS файл из styles/css_bb.css и создать новый css_new.css.

Шаг 2

Поместите новый CSS файл в нужное место.

Файл, который вы создали css_new.css поместите в папку styles/.

Шаг 3

Измените include/forms.inc.php.

Откройте файл и найдите там css_bb.css. Есть два фрагмента кода, которые вы должны изменить.

Оригинальный код:

$cmbTheme = new CComboBox('theme',$theme);
$cmbTheme->AddItem(ZBX_DEFAULT_CSS,S_SYSTEM_DEFAULT);
$cmbTheme->AddItem('css_ob.css',S_ORIGINAL_BLUE);
$cmbTheme->AddItem('css_bb.css',S_BLACK_AND_BLUE);

Измененный код:

$cmbTheme = new CComboBox('theme',$theme);
$cmbTheme->AddItem(ZBX_DEFAULT_CSS,S_SYSTEM_DEFAULT);
$cmbTheme->AddItem('css_ob.css',S_ORIGINAL_BLUE);
$cmbTheme->AddItem('css_bb.css',S_BLACK_AND_BLUE);
**$cmbTheme->AddItem('css_new.css','MY_COOL_THEME');**

Обратите внимания, что оригинальные темы используют константы, но новый пример должен использовать строку (заключенную в одиночные кавычки). Вы не должны пропускать одиночные кавычки, потому что это приведет к предупреждениям. Если вы хотите чтобы название вашей темы было переводимым, тогда вы должны добавить константу с именем, определенную в файлах локализации - в таком случае не забудьте предварить эту константу префиксом S_

Шаг 4

Активируйте новую тему.

В веб-интерфейсе Zabbix вы можете установить эту тему как тему по умолчанию или изменить вашу тему в профиле пользователя.

Наслаждайтесь новым видом веб-интерфейса!

 

2 Настройка

2.1 Группы узлов сети

Эта страница используется для управления группами узлов сети.

Список групп узлов сети

Эта страница предоставляет список узлов сети.

Отображаемые данные:

ПараметрОписание
ИмяИмя группы узлов сети.
#Количество членов в группе (узлов сети).
Члены группыСписок членов узлов сети в группе.

Настройки группы узлов сети

Эта страница предоставляет доступ к деталям группы узлов сети.

Параметры настроек:

ПараметрОписание
Название группыУникальное имя группы узлов сети.
Узлы сетиСписок узлов сети, включенных в эту группу.

2.2 Шаблоны

Эта страница используется для управления шаблонами узлов сети.

Список шаблонов

Эта страница предоставляет список шаблонов.

Отображаемые данные:

ПараметрОписание
ШаблоныИмя шаблона.
Группы элементов данныхСсылка на список группы элементов данных и указание их количества.
Элементы данныхСсылка на список элементов данных и указание их количества.
ТриггерыСсылка на список триггеров и указание их количества.
ГрафикиСсылка на список графиков и указание их количества.
Присоединенные шаблоныСписок шаблонов, присоединенных к этому шаблону.
Присоединен кСписок узлов сети, присоединенных к этому шаблону.

Настройки шаблона

Эта страница предоставляет доступ к детальным настройкам шаблона.

Параметры настроек:

ПараметрОписание
Имя Уникальное имя шаблона.
Группы Список групп узлов сети, к которым принадлежит шаблон.
Новая группа Новая группа может быть создана и присоединена к шаблону.
Игнорируется, если настройка пустая.
Узлы сети|Шаблоны Список шаблонов и узлов сети соединенных с этим шаблоном.
Присоединить шаблон Присоединить к этому шаблону одним или несколько других шаблонов.
Информация обо всех элементах данных, триггерах и графиках будет унаследована от присоединяемых шаблонов.

2.3 Узлы сети

Эта страница используется для управления информацией о узлах сети.

Список узлов сети

Эта страница отображает список узлов сети под наблюдением.

Отображаемые данные:

ПараметрОписание
Имя Уникальное имя узла сети.
Группы элементов данныхСсылка на список групп элементов данных и указание их количества.
Элементы данныхСсылка на список элементов данных и указано их количество.
ТриггерыСсылка на список триггеров и указано их количество.
ГрафикиСсылка на список графиков и указано их количество.
DNS DNS имя узла сети, если используется.
IP IP адрес узла сети, если используется.
Порт Номер порта Zabbix агента. Игнорируется системой Zabbix, если Zabbix-агент не используется.
Шаблоны Список шаблонов, которые присоединены к этому узлу сети.
Состояние Состояние узла сети:
Под наблюдением – Узел сети активирован и под наблюдением
Без наблюдения – Узел сети отключен и не находится под наблюдением
Доступность Доступность агента (Zabbix, SNMP, IPMI):
Информация отображается в виде иконок.

Экран массового обновления узлов сети

Эта страница доступна после выбора узлов сети и нажатия кнопки “Массовое обновление”. Это очень эффективный способ изменения атрибутов сразу у нескольких узлов сети.

Настройка узлов сети

Эта страница предоставляет доступ к настройкам узла сети.

Параметры настроек:

ПараметрОписание
Имя Уникальное имя узла сети.
Группы Список групп узлов сети, в которые входит этот узел сети.
Новая группа Новая группа может быть создана и связана с этим узлом сети. Игнорируется, если пустое.
Имя DNS DNS имя узла сети (опционально).
IP адрес IP адрес узла сети (опционально).
Подключаться через Zabbix сервер будет использовать эту настройку для получения данных с агентов:
DNS имя – Подключаться к узлу сети используя DNS имя
IP адрес – Подключаться к узлу сети используя IP адрес (рекомендуется)
Порт Номер TCP порта Zabbix агента. По умолчанию значение 10050.
Мониторится через прокси Узел сети может наблюдаться Zabbix сервером или одним из Прокси:
(без прокси) – узел сети наблюдается Zabbix сервером
Имя прокси – узел сети наблюдается через прокси Имя прокси
Состояние Состояние узла сети:
Под наблюдением – Узел сети активирован и под наблюдением
Без наблюдения – Узел сети отключен и не находится под наблюдением
Использовать IPMI Включение функциональности управления по IPMI для этого узла сети.
IPMI IP адрес IP адрес управляемого по IPMI устройства.
IPMI порт Номер порта управляемого по IPMI устройства.
IPMI уровень привилегий Хранение настроек по умолчанию, Пользователь.
IPMI имя пользователя Имя пользователя для аутентификации.
IPMI пароль Пароль для аутентификации.
Добавить Присоединение к узлу сети одного или нескольких шаблонов. Информация о элементах данных, триггерах, и графиках будет наследоваться от шаблонов.
Отсоединить – отсоединить шаблон, но оставить информацию о элементах данных, триггерах и графиках
Отсоединить и очистить – отсоединить шаблон и удалить всю информацию о элементах данных, триггерах и графиках, наследованную от шаблона
Макрос Управление макросами на уровне узла сети. Более подробную информацию читайте в разделе настройки макросов.
Использовать профиль Включить или отключить использование профиля узла сети.
Использовать расширенный профиль Включить или отключить использование расширенного профиля узла сети.

В свойствах узла сети и шаблона есть также кнопки “Клонировать” и “Полное клонирование”.

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

2.3.1 Элементы данных

Эта страница используется для управления соответствующей информацией о узлах сети.

Список элементов данных

Эта страница предоставляет список элементов данных, присоединенных к узлу сети.

Отображаемые данные:

ПараметрОписание
Описание Описание (имя) элементов данных.
Триггеры Ссылка на список триггеров, включающих этот элемент данных и указано их количество.
Ключ Уникальный ключ элемента данных.
Интервал Частота проверки.
История Количество дней, которые Zabbix хранит подробные данные.
Динамика изменений Количество дней, которые Zabbix хранит тенденции (усредненные данные).
Тип Тип элемента данных.
Состояние Состояние элемента данных.
Группа элементов данных Список групп элементов данных для данного элемента данных.
Ошибка Любые ошибки связанные с этим элементом данных в виде иконки.

Экран массового обновления элементов данных

Эта страница доступна после выбора элементов данных и нажатию кнопки “Массовое обновление”. Это очень эффективный способ изменения атрибутов сразу у нескольких элементов данных.

Отметьте параметры, которые вы хотите изменить, введите новые значения и нажмите “Сохранить”.

Копировать выбранное в…

Эта страница позволяет копировать выбранные элементы данных в другие узлы сети.

Выберите узлы сети, в которые вы хотите скопировать элементы данных и нажмите “Копировать”.

Конфигурация элемента данных

Эта страница предоставляет доступ к настройкам одного элемента данных.

Аттрибуты элемента данных:

ПараметрОписание
Узел сети Узел сети, которому принадлежит элемент данных.
Описание Описание элемента данных.
Может содержать следующие макросы:
$1,$2,…$9 – первый, второй,… девятый параметр ключа элемента данных
Например: Free disk space on $1
Если ключ элемента данных это “vfs.fs.size[/,free]”, тогда описание будет автоматически изменено на Free disk space on /
Тип Тип элемента данных. Смотрите разделы руководства ниже для получения более подробной информации о типах элементов данных.
Ключ Ключ элемента данных. Ключ должен быть уникальным в пределах одного узла сети.
Значение ключа должно поддерживаться агентом или Zabbix сервером, если тип ключа “Zabbix агент”, “Zabbix агент (активный)”, “Простая проверка”, или “Zabbix аггрегативный”.
Тип информации Тип данных хранения в базе данных, после преобразования значения, если таковые имеются.
Числовой (целочисленный положительный) – 64битное целочисленное значение
Числовой (с плавающей точкой) – число с плавающей точкой
Символ – символ (строка) данных с ограничением в 255 байт
Журнал (лог) – файл журнала. Этот тип данных должен быть использован для ключей log[].
Текст – текст без ограничений по размеру
Тип данных Тип данных используется для числовых элементов данных для определения типа ожидаемых данных.
Десятичный – данные в десятичном формате представления
Восьмеричный – данные в восьмеричном формате представления
Шестнадцатеричный – данные в шестнадцатеричном формате представления
Zabbix будет автоматически выполнять преобразование в число.
Эта функция поддерживается начиная с версии 1.8.
Единица измерения Если установлено, Zabbix будет добавлять префикс,если требуется, и обозначение единицы измерения для всех полученных значений.
До версии Zabbix 1.8.2 множителем по умолчанию был 1024, и только некоторые единицы измерения имеют специальную обработку:
b, bps - 1000 это 1K, специальная обработка для битов.
Начиная с версии Zabbix 1.8.2 множитель по умолчанию это 1000, и только некоторые единицы измерения такие как B используют множитель 1024.
Например, если единица измерения установлена на ‘B’, тогда Zabbix будет отображать:
1 как 1B
1024 как 1KB
1536 как 1.5KB
unixtime – переводится в “yyyy.mm.dd hh:mm:ss”
uptime – переводится в “hh:mm:ss” или “N days, hh:mm:dd”, параметр рассматривается как количество секунд начиная с 01/01/1970.
s – переводится в yyymmmdddhhhmmmsss, параметр рассматривается как количество секунд начиная с 01/01/1970. Отображаются только 3 верхних уровня единицы измерения например 1м3н5д или 2ч4м46с. В случае, если нет недель, то тогда отображается короткая запись “1м5д” и не отображаются часы, минуты и секунды.
Пользовательский множитель Предварительная обработка значений.
Если включено - производить предварительную обработку полученных значений
Значение множителя – будет умножено полученное значение указанный пользователем множитель
Используйте эту опцию для конвертирования полученных данных в KB, MBps, и др. B, Bps. Иначе Zabbix не сможет выставить правильно префиксы (K, M и G). Значением множителя может быть целое число или число с плавающей точкой.
Интервал обновления (секунды) Обновлять этот элемент данных каждые N секунд.
Переменные интервалы (сек) Список исключений из интервала обновления. Например:
10 сек, 1-5,09:00-18:00 – обновление элемента данных каждые 10 секунд для рабочего времени. Иначе используется интервал обновления по умолчанию.
Если несколько переменных интервалов перекрывают друг друга, то используется наименьшее значение Задержки для периода, где интервалы перекрываются.
Формат периода:
dd-dd,hh:mm-hh:mm;dd-dd,hh:mm-hh-mm
Например, 1-5,09:00-18:00;6-7,10:00-12:00
1 - Понедельник, …,7 - Воскресенье
Хранить историю (дни) Хранить подробную историю N дней в базе данных. Более старые данные удаляются функцией автоматической очистки истории в базе данных.
Хранить динамику изменений (дни) Хранить усредненные значения(ежечасные мин,макс,сред,количество) подробной истории N дней в базе данных. ББолее старые данные удаляются функцией автоматической очистки истории в базе данных.
Состояние Активен - активное (нормальное) состояние. Zabbix будет обрабатывать этот элемент данных.
Деактивирован – элемент данных отключен. Этот элемент данных не будет обрабатываться.
Не поддерживается – элемент данных не поддерживается Zabbix или SNMP агентами. Этот элемент данных не будет обрабатываться, однако Zabbix будет периодически пытаться изменить состояние на активное, если эта опция настроена.
Хранить значение Как есть – без предварительной обработки
Дельта (скорость в секунду) – запись значения как (значение-пред_значение)/(время-пред_время), где
значение – текущее значение
пред_значение – предыдущее полученное значение
время – текущий timestamp
пред_время – timestamp предыдущего значения
Эта настройка очень полезна для получения скорости в секунду для постоянно увеличивающегося значения.
Дельта (простое изменение) – запись значения как (значение-пред_значение), где
значение – текущее значение
пред_значение – предыдущее полученное значение
Показывать значение Применение преобразования значений для этого элемента данных. Преобразование значений не изменяет полученные значения и используется только для отображения данных.
Работает только с числовыми значениями.
Например, “Windows service states”.
Формат времени журналаДоступно только для элементов данных с типом Журнал. Поддерживаемые значения:
* y: Год (0001-9999)
* M: Месяц (01-12)
* d: День (01-31)
* h: Час (00-23)
* m: Минута (00-59)
* s: Секунда (00-59)
Пустое значение используется для unix timestamp.
Например, рассмотрим следующую строку из файла журнала Zabbix агента:
” 23480:20100328:154718.045 Zabbix Agent started. Zabbix 1.8.2 (revision 11211).”
Она начинается с шести символьного PID, затем идет дата, время и остальная часть строки.
В таком случае формат времени журнала для этой строки должен быть “pppppp:yyyyMMdd:hhmmss”.
Обратите внимание, что символы “p” и ”:” являются лишь заменителями и могуть быть какими угодно кроме символов “yMdhms”.
Группы элементов данных Включение элемента данных в одну или несколько групп элементов данных.

До версии 1.8.1 Zabbix поддерживает следующие префиксы единиц измерения:

  • K (Кило);
  • M (Мега);
  • G (Гига);
  • T (Тера);

Начиная с версии 1.8.2, добавлена поддержка дополнительных префиксов:

  • P (Пета);
  • E (Экза);
  • Z (Зетта);
  • Y (Йотта);

Более подробную информацию о элементах данных смотрите в разделах элементы данных.

2.3.2 Триггеры

Эта страница используется для управления триггерами.

Список триггеров

Эта страница предоставляет список триггеров, назначенных на узел сети.

Отображаемые данные:

ПараметрОписание
Важность Важность триггера в цвете.
Состояние Состояние триггера. Примечание - деактивированные триггеры по умолчанию не отображаются (смотрите соответствующую опцию вверху страницы).
Имя Имя триггера.
Выражение Выражение триггера.
Ошибка Статус ошибки при подсчете триггера.

Массовое обновление триггеров

Эта страница становится доступной после выбора триггеров и нажатию кнопки “Массовое обновление”. Это очень эффективный способ изменения атрибутов сразу у нескольких триггеров.

Нажмите на параметр, который вы хотите изменить, введите новое значение и нажмите “Сохранить”.

Копировать выбранное в…

Эта страница дает возможность копировать выбранные триггеры в указанные узлы сети.

Выберите узлы сети в которые вы хотите скопировать триггеры и нажмите “Копировать”.

Настройка триггера

Эта страница дает доступ к настройке одного триггера.

Аттрибуты триггера:

ПараметрОписание
Имя Имя триггера. Имя может содержать макросы.
Выражение (Переключить метод ввода) Логическое выражение используемое для вычисления состояния триггера. Начиная с Zabbix 1.8 есть возможность использовать визуальную настройку триггера, более подробно о этой функции читайте здесь
Триггер зависит от Список триггеров от которых зависит этот триггер.
Новая зависимость Добавление новой зависимости.
Генерация событий Нормальная – события генерируются нормально, при изменении состояния триггера
Нормальная + Множественные ПРОБЛЕМНЫЕ события (Множественные события TRUE в 1.8.2 и ранее)– события генерируются также и при каждом определении состояния ПРОБЛЕМА у триггера
Важность Важность триггера.
Комментарии Текстовое поле используемое для предоставления более подробной информации о этом триггере. Может содержать инструкции для устранения проблемы, контактную информацию о ответственных лицах и др.
URL Если не пусто, URL используется в экране ‘Состояние триггеров’.
Деактивирован Триггер может быть отключен, если это необходимо.

Для получения боле подробных сведений о триггерах смотрите раздел руководства посвященный триггерам.

2.3.3 Графики

Эта страница используется для управления пользовательскими графиками.

Список графиков

Эта страница предоставляет список графиков.

Отображаемые данные:

ПараметрОписание
Имя Имя графика.
Ширина Ширина графика в пикселах.
Высота Высота графика в пикселах.
Тип графика Тип графика:
Нормальный
Стэкируемый
Круговой
Расширенный круговой

Настройки графика

Эта страница предоставляет доступ к настройке одного пользовательского графика.

Аттрибуты графика:

ПараметрОписание
Имя Уникальное имя графика.
Ширина Ширина графика в пикселах.
Высота Высота графика в пикселах.
Тип графика Тип графика:
Нормальный – нормальный график, значения отображаются в виде линий.
Стэкируемый – стэкируемый график.
Круговой – круговой график.
Расширенный круговой – расширенный круговой график.
Показывать рабочее время Если выбрано, то нерабочие часы будут отображаться серым фоном.
Показывать триггеры Если выбрано, то простые триггеры будут отображаться красными пунктирными линиями.
Процентная линия (По левой стороне) Отображение процентной линии для левой оси Y. Обычно используется для отображения 95% процентной линии.
Процентная линия (По правой стороне) Отображение процентной линии для правой оси Y. Обычно используется для отображения 95% процентной линии.
Минимальное значение оси Y Минимальное значение оси Y:
Подсчитываемое – значение оси Y будет автоматически просчитано
Фиксированное – фиксированные минимальное значения у оси Y.
Элемент данных – в качестве минимального значения оси Y устанавливается значение указанного элемента данных.
Максимальное значение оси Y Максимальное значение оси Y:
Подсчитываемое – значение оси Y будет автоматически просчитано
Фиксированное – фиксированные максимальное значения у оси Y.
Элемент данных – в качестве максимального значения оси Y устанавливается значение указанного элемента данных.
Показать легенду Отображение легенды. Только для круговых графиков.
3D вид Включение стиля 3D. Только для круговых графиков.
Элементы данных Список элементов графика (элементы данных) для отображения на этом графике.

Элемент графика:

Атрибуты элемента графика:

ПараметрОписание
Параметр Выбранный элемент данных узла сети, который будет отображаться.
Тип Тип:
Простой
Агрегированный
Функция Какие значения будут отображаться, используется если существует более одного значения для одного пиксела (X-координата):
Все – все (минимальное, среднее и максимальное)
Мин – только минимум
Срд – только среднее
Макс – только максимальное
Способ черчения Стиль черчения:
Линия – рисуется линия
Заполнение – рисуется заполненная область
Жирная линия – рисуется жирная линия
Точечный – рисуется точечная линия
Пунктирная линия – рисуется пунктирная линия
Градиентная линия – рисуется градиентная линия
Цвет Цвет RGB в HEX кодировке.
Количество периодов агрегации
Расположение оси Y С какой стороны отображать ось Y, назначив ей элемент.
Порядок сортировки (0→100) Порядок сортировки, 0 будет обработан в первую очередь.
2.3.4 Группы элементов данных

Эта страница используется для управления группами элементов данных.

Список групп элементов данных

Эта страница предоставляет список групп элементов данных.

Отображаемые данные:

ПараметрОписание
Группа элементов данныхИмя группы элементов данных
ПоказатьСсылка на список элементов данных, которые входят в группу, и указано их количество

Настройки группы элементов данных

Эта страница дает доступ к управлению группами элементов данных.

Параметры настроек:

ПараметрОписание
ИмяИмя группы элементов данных. Должно быть уникальным в пределах одного узла сети.
Узел сетиИмя узла сети, которому принадлежит группа элементов данных.

2.4 Обслуживание

Эта страница используется для управления периодами обслуживания.

Список периодов обслуживания

Эта страница предоставляет список запланированных периодов обслуживания.

Отображаемые данные:

ПараметрОписание
Имя Уникальное имя периода обслуживания.
Тип Тип периода обслуживания:
Нормальная обработка - В течении всего периода обслуживания данные с элементов данных будут сниматься и записываться в базу.
Обработка без данных - В течении всего периода обслуживания данные сниматься не будут.
Состояние Состояние периода обслуживания.
Описание Указанное описание для периода обслуживания.

Настройка периода обслуживания

Эта страница дает доступ к настройке одного периода обслуживания.

Атрибуты периода обслуживания:

ПараметрОписание
Имя Уникальное имя периода обслуживания.
Тип обслуживания Тип периода обслуживания:
Нормальная обработка - В течении всего периода обслуживания данные с элементов данных будут сниматься и записываться в базу.
Обработка без данных - В течении всего периода обслуживания данные сниматься не будут.
Активно с Время начала периода обслуживания.
Активно до Время окончания периода обслуживания.
Описание Описание периода обслуживания. Например, производимые действия над узлом сети.
Узлы сети в обслуживании Список узлов сети, находящихся на обслуживании.
Группы в обслуживании Список групп узлов сети, находящихся на обслуживании.
Периоды обслуживания Список диапазонов времени периода обслуживания. Более подробно читайте ниже

Описание атрибутов диапазонов времени периода обслуживания:

ПараметрОписание
Тип периода Тип периода, может принимать следующие значения:
Единовременно - период обслуживания будет действовать только один раз.
Ежедневно - период обслуживания будет действовать ежедневно.
Еженедельно - период обслуживания будет действовать еженедельно.
Ежемесячно - период обслуживания будет действовать ежемесячно.
Продолжительность периода обслуживания Длительность периода обслуживания (дней, часов, минут).

2.5 Веб

Эта страница используется для управления мониторингом Веб сценариев.

2.5.1 Список ВЕБ сценариев

Эта страница предоставляет список активных Веб сценариев.

Отображаемые данные:

ПараметрОписание
Имя Уникальное имя Веб сценария.
Количество шагов Количество индивидуальных шагов (HTTP запросы), которые содержит сценарий.
Интервал обновления (секунды) Частота выполнения Веб сценария.
Состояние Состояние сценария:
Активен – сценарий активирован
Деактивирован – сценарий отключен. Примечание - отключенные сценарии не отображаются по умолчанию.
2.5.2 Настройка параметров Веб сценариев

Эта страница используется для определения индивидуальных параметров Веб сценария.

Параметры настроек:

ПараметрОписание
Группа элементов данных Группа элементов данных узла сети, которой принадлежит сценарий.
Имя Уникальное имя Веб сценария.
Простая аутентификацияИспользовать или нет простую аутентификацию для доступа на страницы.
Нет - не использовать простую аутентификацию.
Простая аутентификация - использовать простую аутентификацию.
ПользовательПри включенной простой аутентификации требуется ввести пользователя для доступа к страницам.
ПарольПри включенной простой аутентификации требуется ввести пароль для доступа к страницам.
Интервал обновления (в секундах) Частота выполнения Веб сценария.
Агент Строка агента клиента. Zabbix может представляться одним из: Firefox, MS Explorer или любыми другим приложением.
Это полезно если Веб сайт возвращает различное содержимое для различных браузеров.
Состояние Состояние сценария:
Активен – сценарий активирован
Деактивирован – сценарий отключен. Примечание, отключенные сценарии по умолчанию не отображаются.
Переменные Список переменных (макросов), которые могут быть использованы в шагах сценария (URL и переменные Post).
Переменные имеют следующий формат:
{макрос1}=значение1
{макрос2}=значение2
Например:
username=Alexei
password=kj3h5kJ34bd
Макросы могут быть заданы как {username} и {password}. Zabbix будет автоматически заменять макросы на актуальные значения.
Шаги Список шагов, которые будет выполнять сценарий:
Имя – имя шага
Время ожидания – таймаут
URL – путь для подключения
Требуется – требуемая строка
Состояние – состояние шага
2.5.3 Настройка Веб шага

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

Параметры настроек:

ПараметрОписание
Имя Уникальное имя шага.
URL URL для подключения и получения данных. Например:
http://www.zabbix.com
https://www.google.com
Post Список переменных для POST. Переменные для GET могут быть указаны в параметре URL.
Время ожидания Zabbix не будет ожидать данные более чем указано во времени ожидания при обработке URL.
Требуется Требуемая строка. Полученное содержимое (HTML) должно содержать строку, иначе шаг будет считаться не успешным.
Если параметр пустой, проверки на него не будет.
Коды состояний Список ожидаемых кодов HTTP. Если Zabbix получает код не из списка, то шаг считается неудачным.
Если параметр пустой, проверки на него не будет.
Например: 200,201,210-299

Более подробную информацию о настройке веб сценариев и шагов смотрите в специальном разделе по настройке веб сценариев.

2.6 Действия

Эта страница используется для управления действиями.

Список действий

Эта страница предоставляет список действий.

Отображаемые данные:

ПараметрОписание
Имя Имя действия.
Условия Список условий для этого действия.
Операции Список операций для выполнения.
Состояние Состояние действия.

Настройка действия

Эта страница предоставляет доступ к настройке одного действия.

Дополнительные опции конфигурации будут доступны при включении эскалаций:

Более подробную информацию о настройке действий, условий и операций смотрите в специальном разделе по настройке действий.

2.7 Комплексные экраны

Эта страница используется для управления комплексными экранами.

Список комплексных экранов

Эта страница предоставляет список комплексных экранов.

ПараметрОписание
ИмяИмя комплексного экрана.
Размер (столбцов x строк)Размер комплексного экрана, количество столбцов и строк.
Комплексный экранИзменение высокоуровневых атрибутов комплексного экрана (имя, размеры).

Настройки комплексного экрана (высокий уровень)

Эта страница предоставляе доступ к настройке одного комплексного экрана.

Высокоуровневые атрибуты комплексного экрана:

ПараметрОписание
ИмяУникальное имя комплексного экрана.
СтолбцовКоличество столбцов в комплексном экране.
СтрокКоличество строк в комплексном экране.

Настройка комплексного экрана (элементы комплексного экрана)

Эта страница предоставляет доступ к настройке одного комплексного экрана и дает доступ к настройке всех элементов.

Нажмите на элемент комплексного экрана (ячейку) для изменения информации, которая будет отображаться в этой ячейке комплексного экрана.

Высокоуровневые атрибуты элемента комплексного экрана:

ПараметрОписание
Ресурс Отображаемая информации в ячейке:
Часы – цифровые или аналоговые часы отображают текущее или местное время или время на сервере
Обзор данных – последние данные группы узлов сети
График – один пользовательский график
История действий – история последних действий
История событий – последние события
Информация о узле сети – высокоуровневая информация о узле сети
Карта сети – одна карта сети
Текст – данные с типом Текст
Комплексный экран – комплексный экран (один комплексный экран может включаться в другие комплексные экраны)
Информация о сервере – высокоуровневая информация о сервере
Простой график – один простой график
Состояние триггеров группы узлов сети – …
Состояние триггеров узла сети – …
Состояние системы – …
Информация о триггерах – высокоуровневая информация о триггере
Обзор триггеров - состояние триггеров для группы узлов сети
URL – включение содержимого из внешнего источника
Выравнивание по горизонтали Возможные значения:
По центру
По левой стороне
По правой стороне
Выравнивание по вертикали Возможные значения:
По середине
По верхнему краю
По нижнему краю
Объединить столбцы Расширение ячейки на указанное количество столбцов, работает так же как расширение столбцов в HTML.
Объединить строки Расширение ячейки на указанное количество строк, работает так же как расширение строк в HTML.

2.8 Карты сети

2.8.1 Карты сети

Эта страница используется для управления пользовательскими картами сети. Начиная с версии Zabbix 1.8 редактирование и создание карт сети было значительно упрощено.

Список карт

Эта страница предоставляет список карт.

Отображаемые данные:

ПараметрОписание
ИмяИмя карты
ШиринаШирина карты в пикселах.
ВысотаВысота карты в пикселах.
ИзменитьРедактирование высокоуровневых атрибутов карты (имя, размеры и т.д.).

Настройка карты (высокоуровневая)

Эта страница предоставляет доступ к настройке карты.

Высокоуровневые атрибуты карты:

ПараметрОписание
Имя Уникальное имя карты.
Ширина Ширина карты в пикселах.
Высота Высота карты в пикселах.
Фоновый рисунок Использовать фоновый рисунок:
Без рисунка – без фонового рисунка (белый фон)
Рисунок – выбранный рисунок используется как фоновый рисунок. Масштабирование невозможно.
Подсветка иконки Элементы карты будут подсвечиваться. Есди элемент имеет активный триггер, будет использоваться фон в виде круга, имеющий такой же цвет, что и важность самого тяжелого триггера. Если элемент имеет статус “отключен” или “в обслуживании”, будет использоваться фон в виде квадрата. Эта опция доступна начиная с версии Zabbix 1.8
Маркировать элементы с измененным состоянием триггеров Любые элементы карты, состояние которых недавно изменилось недавно (сработка триггера или его восстановление), будут маркироваться красными треугольниками. Эти треугольники располагаются сверху, снизу, слева и справа от объекта. Если у объекта имеется подпись, то треугольник не будет отображаться со стороны подписи. Время отображения этой маркировки такое же как у мигания состояния триггера - 30 минут. Эта опция доступна начиная с версии Zabbix 1.8.3
Развертывание одиночной проблемы Если у элемента карты (узла сети, группы узлов сети или другой карты) имеется одна проблема, эта опция управляет отображением имени проблемы (триггера), или количества проблем. Если опция включена, тогда будет отображено имя проблемы. Эта опция доступна начиная с версии Zabbix 1.8.1. При обновлении с предыдущих версий инсталляций Zabbix, эта опция включена по умолчанию для всех карт.
Тип подписи иконки Тип подписи ко всем иконкам на карте:
Подпись – только подписи к иконкам
IP адрес – только IP адрес
Название элемента – название элемента (например, имя узла сети)
Только состояние – только состояние (OK или ПРОБЛЕМА)
Ничего - без отображения подписей к иконкам
Размещение подписи иконки Отображение подписей у иконки:
По нижнему краю – под иконкой (снизу)
По левой стороне – с левой стороны
По правой стороне – с правой стороны
По верхнему краю – над иконкой (сверху)

Настройки карты сети (настройки элементов карты сети)

Эта страница предоставляет доступ к настройке иконок и связей на карте.

Настройка элемента карты

Эта страница предоставляет доступ к настройке одного элемента на карте. Добавление элемента на карту возможно с помощью кнопки “+” справа от надписи Элемент. Аналогично удаление элемента карты - “” справа от надписи Элемент.

Атрибуты элемента карты:

ПараметрОписание
Тип Тип элемента:
Узел сети – иконка, отображающая состояние всех триггеров у выбранного узла сети
Карта – иконка, отображающая состояние всех элементов на карте
Триггер – иконка, отображающая состояние одного триггера
Группа узлов сети – иконка, отображающая состояние всех триггеров у выбранной группы узлов сети
Изображение – только иконка без связи с каким либо ресурсом
Подпись Подпись к иконке, любая строка.
Макросы и многострочные строки могут быть использованы в подписях начиная с версии 1.8
Размещение подписи Размещение подписи:
По умолчанию – размещение по умолчанию для карты
По нижнему краю – снизу (под иконкой)
По левой стороне – с левой стороны
По правой стороне – с правой стороны
По верхнему краю – сверху (над иконкой)
Узел сети Будет использовано состояние всех триггеров указанного узла сети.
Карта сети Будет использовано состояние всех элементов указанной карты сети.
Триггер Будет использоваться состояние триггеров.
Группа узлов сети Состояние всех триггеров в указанной группе узлов сети.
Иконка (по умолчанию) Используемая иконка для всех состояний.
Использовать расширенные иконки Включение возможности указать иконку для каждого типа состояния элемента.
Иконка (ok) Используемая иконка, если проблем нет.
Иконка (проблема) Используемая иконка, если имеются проблемы (одна или более).
Иконка (неизвестно) Используемая иконка, если имеются проблемы (одна или более).
Иконка (обслуживание) Используемая иконка, если выбранный узел находится в обслуживании.
Иконка (отключен) Используемая иконка, если выбранный узел сети отключен.
Координата X Координата X элемента карты. Только отображение информации, перемещение элемента по карте способом Drag and Drop
Координата Y Координата Y элемента карты. Только отображение информации, перемещение элемента по карте способом Drag and Drop
URL Если установлено, то URL ссылка будет использована при нажатии пользователем на элементе карте.

Настройка связи

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

Заметьте, чтобы добавить связь между двумя элементами на карте нужно сначала их выбрать с помощью левой кнопки мыши и клавиши Shift (или Ctrl)!

Атрибуты связи на карте:

ПараметрОписание
Подпись Подпись к линии связи между элементами на карте.
Элемент 1 Первый элемент карты, которого соединяет связь.
Элемент 2 Второй элемент карты, которого соединяет связь.
Индикаторы связи Список триггеров, соединенных с этой связью. В случае если у триггера состояние ПРОБЛЕМА, тогда соответствующий стиль применяется для линии связи.
Тип (OK) Стиль связи по умолчанию:
Линия – одиночная линия
Жирная линия – жирная линия
Точечная линия – точечная линия
Пунктирная линия – пунктирная линия
Цвет (OK) Цвет связи по умолчанию.

2.9 IT Услуги

2.9.1 IT Услуги

Эта страница используется для управления IT Услугами.

Список IT услуг

Эта страница экран предоставляет список IT услуг.

Отображаемые данные:

ПараметрОписание
УслугаИмя услуги.
Подсчет статусаАлгоритм подсчета состояния услуги.
ТриггерСвязанный триггер:
нет – без связанного триггера
имя триггера – связано с триггером, таким образом зависит от состояния триггера

Настройка IT услуги

Эта страница предоставляет доступ к настройке IT услуг.

Атрибуты услуги ИТ:

ПараметрОписание
Имя Имя услуги.
Родительская услуга Родительская услуга. Только отображение, без возможности изменения.
Зависит от Список подчиненных услуг от которых зависит эта услуга.
Алгоритм подсчета состояния Алгоритм подсчета состояния услуги:
Проблема, если хотя бы у одной из подчиненных услуг имеется проблема - ветка считается проблемной, если хотя бы у одной подчиненной услуги имеется проблема.
Проблема, если все подчиненные имеют проблемы - ветка считается проблемной, если все подчиненные услуги имеют проблемы.
Не подсчитывать - не осуществлять подсчет статуса услуги.
Подсчитывать SLA Выберите для отображения данных SLA.
Допустимый SLA (проценты) Процент SLA для этой услуги. Используется для отчетов.
Интервалы времени услуги По умолчанию, все услуги работают 24x7x365. Добавьте новый интервал времени услуги для создания исключения.
Новый интервал времени услуги Интервалы времени услуги:
Единовременно недоступен – недоступность услуги один раз. Состояние услуги в этом периоде не влияет на SLA.
Доступен – интервал времени доступности услуги
Недоступен – состояние услуги в этом интервале не влияет на SLA.
Связать с триггером Услуги низкого уровня могут быть связаны с триггерами.
Порядок сортировки (0→999) Сортировка отображаемых услуг, меньшее значение отображается раньше.

2.10 Обнаружение

2.10.1 Обнаружение

Эта страница используется для управления правилами обнаружения.

Список правил обнаружения

Эта страница предоставляет список правил обнаружения.

Отображаемые данные:

ПараметрОписание
Имя Имя правила обнаружения.
Диапазон IP адресов Диапазон IP адресов включенных в правило обнаружения.
Задержка Частота выполнения правила обнаружения в секундах.
Проверки Список проверок выполняемых при обработке правила обнаружения.
Состояние Состояние правила обнаружения:
Включено – правило активно
Отключено – правило отключено

Настройки правила обнаружения

Эта страница предоставляет доступ к настройке правила обнаружения.

Аттрибуты правила обнаружения:

ПараметрОписание
Имя Уникальное имя правила обнаружения.
Обнаружение через прокси Кто осуществляет обнаружение:
(без прокси) – Zabbix сервер выполняет обнаружение
имя прокси – Этот прокси сервер выполняет обнаружение
Диапазон IP Диапазон IP адресов для обнаружения. Формат:
Одиночный IP: 192.168.1.33
Диапазон IP адресов: 192.168.1.1-255
Список: 192.168.1.1-255,192.168.2.1-100,192.168.2.200
Задержка (секунд) Этот параметр определяет как часто Zabbix будет выполнять это правило обнаружения.
Проверки Список доступных проверок:
SSH, LDAP, SMTP, FTP, HTTP, POP, NNTP, IMAP, TCP, Zabbix агент, SNMPv1 агент, SNMPv2 агент, SNMPv3 агент
Новая проверка Добавление новой проверки к правилу обнаружения.
Порты Этот параметр может принимать следующие значения:
Одиночный порт: 22
Диапазон портов: 22-45
Список: 22-45,55,60-70
Критерий уникальности устройства Новое найденное устройство считается уникальным только в случае совпадения IP адреса с уже имеющимся узлом сети в настройках Zabbix или по уникальности данных от одной из проверок.
Состояние Состояние правила обнаружения:
Включено – правило активировано
Отключено – правило отключено

2.11 Экспорт/Импорт

2.11.1 Экспорт

Эта страница используется для экспорта узлов сети, элементов данных, триггеров и графиков.

Экспорт

Эта страница предоставляет список узлов сети и их элементов для экспорта.

Выберите элементы, которые вы хотите экспортировать и нажмите “Предпросмотр” или “Экспорт”.

Отображаемые данные:

ПараметрОписание
Имя Имя узла сети.
DNS DNS имя узла сети.
IP IP адрес Zabbix агента.
Порт Номер порта Zabbix агента.
Состояние Состояние узла сети.
Шаблоны Выберите шаблон для экспорта соответствующей информации.
Элементы данных Выберите элементы данных узла сети для экспорта.
Триггеры Выберите триггеры узла сети для экспорта.
Графики Выберите графики узла сети для экспорта.

Страница предварительного просмотра:

2.11.2 Импорт

Эта страница используется импорта XML данных узла сети.

Атрибуты правила обнаружения:

ПараметрОписание
Импорт файлаФайл XML для импорта.
ПравилаУстановки правил для каждого типа элемента:
Существующие – что делать если элемент уже существует
Не существует – что делать если элемент не существует
Возможные действия:
Обновить – обновление существующего элемента
Добавить – добавление элемента
Пропустить – пропуск элемента (не обновлять и не добавлять)

Нажмите “Импорт” для импортирования выбранного файла.

 

3 Администрирование

3.1 Общие

3.1.1 Веб-интерфейс

Эта страница отображает настройки связанные с веб-интерфейсом.

Параметры настроек:

ПараметрОписание
Тема по умолчанию Тема по умолчанию для пользователей у которых не установлена тема в личном профиле.
Первая запись в списке Первая запись в выпадающем списке при выборе элемента, может быть все или нет
Лимит элементов в поиске/фильтре Максимальное количество найденных элементов или элементов в фильтрах.
Макс. количество элементов в таблице Максимальное количество элементов (строк) на одной странице в таблицах.
Подтверждение событий Этот параметр устанавливает возможность подтверждения событий в интерфейсе Zabbix.
Показывать события не старше (дней) Этот параметр определяет максимальное количество дней, которые будут отображаться на экране состоянии триггеров. По умолчанию 7 дней.
Максимальное количество отображаемых событий у триггера Максимальное количество событий отображаемые для каждого триггера на экране состояние триггеров. По умолчанию 100.
3.1.2 Очистка истории (housekeeper)

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

Параметры настроек:

ПараметрОписание
Не хранить действия старше (в днях)Этот параметр определяет количество дней хранения в базе данных истории выполненных действий Zabbix (почта, сообщения jabber, SMS и др.). Более старые действия будут удаляться.
Не хранить события старше (в днях)Этот параметр определяет количество дней хранения в базе данных истории событий Zabbix. Более старые события будут удаляться.
3.1.3 Изображения

Список рисунков

Добавление/редактирование изображений

Изображения в Zabbix записываются непосредственно в базу данных (на это есть определенные причины). Имеется два типа изображений:

  • Иконка
  • Фоновое изображение

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

Фоновые изображения используются как фоновые рисунки для карт сети.

Атрибуты рисунков:

ПараметрОписание
Имя Уникальное имя рисунка.
Тип Иконка или Фоновое изображение
Загрузить Имя локального файла (PNG, JPEG), который будет загружен в Zabbix
Изображение само изображение

Обратите внимание, что вы можете загрузить изображение любого размера, однако изображения больше 1.5МБ возможно не будут отображаться на картах сети. Увеличьте значение max_memory_size в php.ini, если у вас имеется такая проблема.

3.1.4 Регулярные выражения

Этот раздел позволяет создавать пользовательские регулярные выражения для повторного их использования в других местах Zabbix. Пользовательское регулярное выражение может содержать несколько подвыражений. Также в этом же разделе выражения можно протестировать подставив тестовую строку. Результаты отображают состояние каждого подвыражения и состояние пользовательского выражения в целом.

3.1.5 Макросы

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

Параметры:

ПараметрОписание
МакросыСписок заданных макросов на глобальном уровне.
Новый макросДобавление нового глобального макроса. Для обозначения имени макроса используется формат {$MACRO_NAME}.

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

3.1.6 Преобразование значений

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

Преобразование значений используется для соответствия данных в веб-интерфейсе Zabbix и информации отправляемой через email/jabber/SMS/куда угодно.

Например, значения элемента данных '0' или '1' могут быть представлены в более читабельные значения:

  • ‘0’ ⇒ 'Недоступен'
  • ‘1’ ⇒ 'Доступен'

Преобразование значений может быть использовано только для элементов данных с типом информации 'Числовой (целое положительное)'.

Определение преобразований значений

Параметры преобразований значений:

ПараметрОписание
ИмяУникальное имя для набора преобразований значений.
ПреобразованиеЗадает преобразование.
Новое преобразованиеДобавление одного преобразования.
3.1.7 Рабочее время

Рабочее время в рамках всей системы, этот параметр определяет рабочее время.

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

Рабочее время имеет следующий формат:

dd-dd,hh:mm-hh:mm;dd-dd,hh:mm-hh:mm,…
ФорматОписание
дддень недели:
1 – Понедельник, 2 – Вторник ,… , 7 – Воскресенье
ччЧасы: 00-24
ммМинуты: 00-59

Пустой интервал соответствует 01-07,00:00-23:59

Например:
1-5,09:00-18:00
1-5,09:00-18:00;6-7,10:00-16:00

3.1.8 Прочее

Обновлять не поддерживаемые элементы данных (секунды) Некоторые элементы данных могут могут переходить в состояние не поддерживаемых из-за ошибок в Пользовательских Параметрах, или например если элемент данных не поддерживается агентом.

Здесь можно указать чтобы Zabbix периодически активировал не поддерживаемые элементы данных.

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

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

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

ПараметрОписание
Обновлять не поддерживаемые элементы данных (секунды)Zabbix активирует не поддерживаемые элементы данных каждые N секунд. Если установлен 0, то автоматическая активация будет отключена.
Прокси проверяет не поддерживаемые элементы данных каждые 10 минут. Этот параметр для Прокси не есть настраиваемым.
Группа для обнаруженных узлов сети Все обнаруженные узлы сети будут добавляться в указанную группу узлов сети
Сообщение для группы пользователей при недоступности базы данныхГруппа пользователей для отправки оповещения или ‘Нет’.

До версии Zabbix 1.8.2 самоконтроль базы данных поддерживался только для MySQL. Начиная с версии 1.8.2, эта функция доступна для всех типов баз данных

Вкладка Администрирование доступна только для пользователей с типом Суперадминистраторы.

3.2 DM

Эта страница используется для управления распределенным мониторингом.

3.2.1 Ноды

Описание не завершено! Буду рад, если кто-нибудь даст скриншоты)

3.2.2 Прокси

Эта страница используется для управления прокси.

Список Прокси

Эта страница предоставляет список прокси.

Отображаемые настройки:

ПараметрОписание
ИмяУникальное имя прокси.
Последний замеченный (возраст)Последнее время, в которое мы получили сообщение о доступности или данные от прокси.
ЧленыСписок узлов сети, которые наблюдаются через этот прокси.

Настройки прокси

Эта страница дает доступ к деталям прокси.

Параметры настроек:

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

3.3 Аутентификация

3.3.1 HTTP

Эта страница используется для включения аутентификации на основе Apache (HTTP). Аутентификация используется для проверки имен пользователей и паролей. Обратите внимание, что пользователь должен существовать в Zabbix, однако пароль средствами Zabbix не проверяется.

Параметры настроек:

ПараметрОписание
Включить HTTP аутентификациюЭтот параметр определяет включение аутентификации через Apache.

Будьте осторожны! Убедитесь, что аутентификация в Apache настроена и работает правильно перед включением этой опции.

В случае аутентификации через Apache, для всех пользователей (даже с доступом в GUI установленным на внутренний тип) будет включена авторизация через Apache, а не через Zabbix!

3.3.2 LDAP

Эта страница используется для включения аутентификации через внешний LDAP. Аутентификация используется для проверки имен пользователей и паролей. Обратите внимание, что пользователь должен существовать в Zabbix, однако пароль средствами Zabbix не проверяется.

Zabbix LDAP аутентификация работает по крайней мере с Microsoft Active Directory и OpenLDAP.

Параметры настроек:

ПараметрОписание
LDAP Узел Сети Имя LDAP сервера. Например: ldap://ldap.zabbix.com
Для безопасного сервера LDAP используется протокол ldaps
ldaps://ldap.zabbix.com
Порт Порт сервера LDAP. По умолчанию 389.
Для безопасного соединения с LDAP используется порт 636.
База для поиска (DaseDN) ou=Users,ou=system
Атрибут поиска uid для OpenLDAP, sAMAccountName для Microsoft AD
Имя для подключения (BindDN) uid=Admin,ou=system
Пароль для подключения Пароль для соединения с сервером LDAP.
LDAP аутентификация активирована Включение аутентификации LDAP.
Тест аутентификации -
Логин Имя тестового пользователя. Пользователь должен существовать в LDAP.
Пароль пользователя Пароль тестового пользователя для LDAP. Zabbix не активирует аутентификацию через LDAP, если не удалось авторизоваться тестовому пользователю.

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

3.4 Пользователи

3.4.1 Пользователи

Эта страница используется для управления пользователями Zabbix. Список пользователей Предоставляет список пользователей.

Отображаемые данные:

ПараметрОписание
Имя для входа (логин) Короткое имя пользователя, т.е. логин.
Имя Имя пользователя.
Фамилия Фамилия пользователя.
Тип пользователя Тип пользователя, один из:
Пользователь Zabbix
Администратор Zabbix
Суперадминистратор Zabbix
Группы Список всех групп в которые включен пользователь.
В системе? Работает ли пользователь с системой в данный момент.
Доступ к GUI Доступ к GUI, зависит от настроек групп пользователей:
Системная по умолчанию – Zabbix, Аутентификация HTTP, Аутентификация через LDAP
Внутренняя – пользователь авторизуется средствами Zabbix, независимо от настроек системы
Отключен – доступ к GUI запрещен для этого пользователя
Доступ к API Пользователь имеет доступ к функциям API.
Режим дебага Пользователь может просматривать отладочную информацию по SQL запросам.
Состояние Состояние пользователя, зависит от настроек групп пользователей:
Включено – пользователь активен
Отключено – пользователь отключен. Пользователь игнорируется Zabbix.

Настройка пользователя

Эта страница предоставляет подробности о пользователе и дает управление на изменение атрибутов пользователя.

Параметры настроек:

ПараметрОписание
Имя для входа (логин) Короткое имя пользователя, т.е. логин.
Имя Имя пользователя.
Фамилия Фамилия пользователя.
Тип пользователя Тип пользователя, один из:
Пользователь Zabbix – доступ только к вкладке Мониторинг.
Администратор Zabbix – доступ к вкладкам Мониторинг и Настройки.
Суперадминистратор Zabbix – доступ ко всему, включая вкладку Администрирование.
Группы Список всех групп пользователей назначенных этому пользователю.
Средства передачи данных Список всех средств передачи данных. Средства передачи данных используются Zabbix для отправки уведомлений.
Язык Язык графического интерфейса для пользователя Zabbix.
Тема Определяет внешний вид GUI:
Системная по умолчанию - используются системные настройки
Оригинальная синяя – стандартная синя тема
Черная & Синяя – альтернативная тема
Авто-вход (1 месяц) Включите, если хотите чтобы Zabbix запомнил ваш вход. Для этого используются cookies браузера.
Авто-выход (0 - отключено) Пользователю будет принудительно завершен сеанс после N секунд бездействия. Установите 0, если хотите отключить авто-выход.
Обновлять экран (секунды) Интервал обновления для графиков, комплексных экранов, текстовых данных и др. Установите 0, если хотите отключить функцию.
Строк на странице Максимальное количество строк в таблицах на одну страницу Zabbix.
URL (после входа в систему) Zabbix будет перенаправлять вас на указанный URL после успешного входа в систему.

Нажмите на права пользователя Показать для отображения прав пользователя. Здесь нет возможности изменения прав пользователя, так как права зависят от членства пользователя в группах пользователей! Тоесть эта информация доступа только для просмотра.

3.4.2 Группы пользователей

Эта страница используется для управления группами пользователей в Zabbix.

Список групп пользователей

Предоставляет список групп пользователей.

Отображаемые данные:

ПараметрОписание
Имя Имя группы. Должно быть уникальным.
# Ссылка на список пользователей этой группы в более подробном виде, а также количество пользователей, включенных в эту группу.
Члены группы Список членов группы.
Состояние пользователей Активировано – пользователи активны
Деактивировано – все пользователи группы отключены
Доступ к GUI Отображает тип аутентификации пользователей.
Системная по умолчанию – используется аутентификация по умолчанию
Внутренняя – используется аутентификация Zabbix
Отключен – доступ к Zabbix GUI запрещен
Доступ к API Группа пользователей имеет доступ к функциям API.
Режим отладки Группа пользователей может просматривать отладочную информацию по SQL запросам.

Настройка группы пользователей

Параметры настроек:

ПараметрОписание
Имя группы Уникальное имя группы.
Пользователи Список пользователей включенных в эту группу и список пользователей, которых можно включить в эту группу.
Доступ к GUI Как пользователи будут авторизоваться в этой группе.
Системная по умолчанию – используется аутентификация по умолчанию
Внутренняя – используется аутентификация Zabbix
Отключен – доступ к Zabbix GUI запрещен
Доступ к API Группа пользователей имеет доступ к функциям API.
Режим отладки Группа пользователей может просматривать отладочную информацию по SQL запросам.
Состояние пользователей Состояние членов группы:
Активировано – пользователи активны
Деактивировано – пользователи отключены
Права Три списка различных прав к узлам сети:
Чтение-Запись – члены группы имеют доступ чтения-записи для узлов сети группы
Только чтение – члены группы имеют доступ на чтение для узлов сети группы
Запрещено – члены группы не имеют доступа к узлам сети группы

Нажмите на права пользователей (Показать), чтобы увидеть какие права имеется у группы пользователей:

3.5 Способы оповещений

3.5.1 Способы оповещений

Эта страница используется для управления способами оповещений в Zabbix.

Список способов оповещений

Отображается список способов оповещений. Способ оповещения это способ отправки уведомлений пользователям.

Отображаемые данные:

ПараметрОписание
ТипТип способа:
Email – уведомления на почту
SMS – уведомления через СМС, используя GSM модем через последовательный порт
Jabber – уведомления через Jabber
Скрипт – уведомление через скрипт
ОписаниеИмя способа оповещения.
ДеталиПодробности настроек, зависимые от средства передачи данных.

Настройка способа оповещения

Эта страница отображает пользователю детали способа оповещения и дает возможность изменять его параметры.

Параметры настроек:

ПараметрОписание
Описание Уникальное имя способа оповещений.
Тип Тип способа оповещений:
Email – уведомление по почте
Сервер SMTP - имя сервера
SMTP Hello – строка приветствия, обычно это имя домена
SMTP Email – адрес email отправителя
SMS – уведомления через СМС, используя GSM модем через последовательный порт
Модем GSM - имя устройства последовательного порта к GSM модему
Jabber – уведомления через Jabber
Идентификатор Jabber - Jabber ID
Пароль – Пароль для Jabber ID
Скрипт – уведомления через скрипт
Имя скрипта - имя пользовательского скрипта

3.6 Скрипты

Эта страница используется для управления пользовательскими скриптами. Скрипты выполняются на стороне Zabbix сервера, даже для узлов сети, которые наблюдаются через прокси.

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

Отображаемые данные:

ПараметрОписание
Имя Уникальное имя скрипта.
Команда Команда, которая будет выполнена.
Группа пользователей Скрипт доступен только для указанных групп пользователей.
Группа узлов сети Скрипт доступен только для узлов сети из группы узлов сети.
Доступ к узлу сети Чтение - пользователь должен иметь права к узлу сети на чтение, чтобы выполнить скрипт
Запись - пользователь должен иметь права к узлу сети на запись, чтобы выполнить скрипт.

Настройка скрипта

Экран предоставляет подробные сведения о скрипте и дает доступ к изменению атрибутов скрипта.

Параметры настроек:

ПараметрОписание
Имя Уникальное имя скрипта.
Команда Полный путь к ко команде, которая будет выполняться по запросу пользователя. Команда будет выполнена на стороне Zabbix сервера.
Поддерживаются следующие макросы:
{HOST.CONN}
{HOST.DNS}
{IPADDRESS}
Например:
/bin/ping-c 3 {HOST.CONN}
Для команд IPMI должен использоваться специальный синтаксис:
IPMI <ipmi control> [значение]
Например:
IPMI power off
Группа пользователей Скрипт доступен только для указанной группы пользователей.
Группа узлов сети Скрипт доступен только для узлов сети из группы узлов сети.
Требуются права доступа Чтение - пользователь должен иметь права к узлу сети на чтение, чтобы выполнить скрипт
Запись - пользователь должен иметь права к узлу сети на запись, чтобы выполнить скрипт.

3.7 Аудит

Эта страница используется для просмотра записей аудита веб-интерфейса и списка уведомлений отправленных пользователям.

Журналы

Отображаемые данные:

ПараметрОписание
Время Штамп времени, когда действие было осуществлено.
Пользователь Имя пользователя.
IP IP адрес с которого производились изменения.
Ресурс Измененный объект:
Группа элементов данных
График
Узел сети
Элемент данных
Пользователь и другое
Действие Выполненное действие:
Добавлено
Вход в систему
Выход из системы
Удалено
Обновлено
Id Идентификатор изменения.
Описание Описание информации о действии.
Детали Более подробная информация о выполненном действии.

Действия

Эта страница предоставляет сведения о отправленных уведомлениях и выполненных удаленных командах.

Отображаемые данные:

ПараметрОписание
Время Оттиск времени, когда действие имело место.
Тип Тип выполненной операции:
Уведомление
Удаленная команда
Состояние Состояние:
Не отправлено
Отправлено
Попыток Количество попыток выполнения.
Получатель(-и) Список получателей.
Сообщение Сообщение, использованное в уведомлении.
Ошибка Ошибка, если уведомление не было отправлено.

3.8 Очередь

Очередь предоставляет информацию о производительности Zabbix.

Обзор

Для каждого типа элемента данных отображается следующая информация:

ПараметрОписание
Элементы данных Тип элемента данных
5 секунд Задержка данных от 5 до 10 секунд.
10 секунд Задержка данных от 10 до 30 секунд.
30 секунд Задержка данных от 30 до 60 секунд.
1 минута Задержка данных от 1 до 5 минут.
5 минут Задержка данных от 5 до 10 минут.
Более 10 минут Задержка данных более чем на 10 минут.

Обзор по прокси

Эта страница дает более подробную информацию о производительности Zabbix сервера и прокси.

Для каждого Прокси и локального Zabbix сервера отображаются следующие данные:

ПараметрОписание
ПроксиИмя прокси или Сервер. Сервер, отображается последним и показывает статистику локального сервера.

Подробно

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

Список элементов данных отображается со следующими подробностями:

ПараметрОписание
Следующая проверка Отметка времени ожидаемого следующего получения данных. Отметки времени будут всегда в прошлом времени.
Узел сети Имя узла сети.
Описание Имя элемента данных.

3.9 Уведомления

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

Для каждого пользователя отображается количество уведомлений на каждый тип способа оповещений.

3.10 Локализации

Локализации предоставляют функционал для простого редактирования переводов веб-интерфейса Zabbix.

Выбор локали

Выберите локаль, которую вы хотите изменить далее.

Описание атрибутов:

ПараметрОписание
Взять за язык по умолчанию Эта локаль используется как базовая.
Расширяемый язык Выберите язык который вы хотите улучшить.
Новые записи Не добавлять – если что-то не переведено, то не добавлять их
Не заполнять значения – если что-то не переведено, то добавить пустым
Заполнить значением по умолчанию – если что-то не переведено, то заполнить перевод значением по умолчанию

Форма перевода

Эта форма используется для перевода фраз, используемых в веб-интерфейсе Zabbix. Правая сторона заполнена языком по умолчанию, левая состоит из переведенных фраз.

После того, как перевод будет готов нажмите кнопку “Загрузить” для получения файла перевода, который может быть использован для замены файлов в папке include/locales.

3.11 Установка

Эта страница дает возможность создать файл конфигурации для веб-интерфейса Zabbix.

 
 

18. Оптимизация производительности

1 Реальная конфигурация

Сервер с установленным Zabbix 1.0 (RedHat Linux 8.0, ядро 2.4.18-14, MySQL / MyISAM 3.23.54a-4, Pentium IV 1.5 ГГц, 256 Мб, IDE) может собирать более 200 параметров в секунду с наблюдаемых серверов (при условии отсутствия задержек в сети).

Вы можете спросить, сколько серверов можно контролировать с помощью Zabbix на моем оборудовании? Ответ зависит от количества контролируемых параметров и как часто Zabbix будет должен опрашивать эти параметры. Предположим, каждый сервер наблюдает десять параметров. Вы хотите обновлять эти параметры один раз в 30 секунд. Сделав простые расчеты, мы видим, что Zabbix способен обрабатывать 600 серверов (или 6000 проверок). В случае, если эти параметры должны быть обновлены один раз в минуту, аппаратная конфигурация сможет обрабатывать 600×2 = 1200 серверов. Эти расчеты сделаны в предположении, что все наблюдаемые значения получаются сразу как только будут запрошены (задержка 0). Если это не является обязательным требованием, то количество наблюдаемых серверов может быть увеличено вплоть до 5x-10x раз.

 

2 Оптимизация производительности

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

2.1 Аппаратное обеспечение

Общие советы по оборудованию:

  • Используйте самый быстрый процессор из доступных
  • SCSI или SAS лучше чем IDE (производительность IDE дисков может быть существенно улучшена с помощью утиллиты hdparm) и SATA
  • 15K RPM лучше чем 10K RPM, что в свою очередь лучше чем 7200 RPM
  • Пользуйтесь быстрым хранилищем RAID
  • Используйте быстрый адаптер подключения к сети
  • Наличие дополнительной памяти это всегда хорошо.

2.2 Операционная система

  • Используйте последнюю (стабильную!) версию ОС
  • Выключите из ядра не требуемую функциональность
  • Оптимизируйте параметры ядра

2.3 Параметры настройки Zabbix

Много параметров могут быть оптимизированы для получения оптимальной производительности.

2.3.1 zabbix_server

StartPollers

Общее правило - удерживать значение этого параметра как можно более низким. Каждый дополнительный процесс zabbix_server добавляет определенные накладные расходы, в то же время, увеличивает параллелизм. Оптимальное количество процессов достигается тогда, когда очередь в среднем содержит минимальное количество параметров (в идеале, 0 в любой данный момент). Это значение может контролироваться с помощью внутренней метрики zabbix[queue].

DebugLevel

Оптимальное значение 3.

DBSocket

Только для MySQL. Рекомендуется использовать DBSocket для подключений к базе данных. Это самый быстрый и самый безопасный способ.

2.4 Движок базы данных

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

  • Используйте самый быстрый движок базы данных, т.е. MySQL))
  • Используйте стабильный релиз движка базы данных
  • Перекомпилируйте MySQL или PostgreSQL из исходных кодов для получения максимальной производительности
  • Следуйте инструкциям по оптимизации производительности из документации по MySQL или PostgreSQL
  • Для MySQL, используйте структуру таблиц InnoDB
  • Zabbix работает по крайней мере в 1.5 раза быстрее если используется InnoDB (при сравнении с MyISAM). Это происходит за счет увеличения параллелизма. Однако, InnoDB требует больших ресурсов процессора.
  • Разнесите таблицы базы данных на разные жесткие диски
  • 'history', 'history_str, 'items' 'functions', triggers', и 'trends' наиболее активно используемые таблицы.
  • Для больших установок, рекомендуется в MySQL для временных файлов использовать tmpfs

2.5 Общие советы

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

Пример: зачем использовать system.cpu.util[,user,avg1] и system.cpu.util[,user,avg5], если system.cpu.util[,user,avg1] уже содержит получаемые данные, причем более детальные.

  • Избегайте использования триггеров с большим периодом времени, переданным в качестве аргумента функции. Например, max(3600) будет высчитано значительно медленнее, чем max(60).
 
 

19. Сборник практик

3 Общие приемы

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

По крайней мере три метода (или комбинация из всех методов) могут быть использованы для мониторинга доступности сервера.

  • ICMP ping (Ключ “icmpping”)
  • Ключ “status”
  • Функция триггера nodata() для мониторинга доступности узлов сети, для которых используются только активные проверки

3.2 Отправка оповещений через WinPopUp

WinPopUp сообщения могут быть очень полезны, если вы работаете в ОС Windows и хотите быстро получать оповещения от Zabbix. Эта функция может быть хорошим дополнением к оповещениям по почте. Подробности о внедрении WinPopUp вы можете найти по адресу http://www.zabbix.com/forum/showthread.php?t=2147.

 

2 Мониторинг специфичных приложений

2.1 AS/400

Платформу IBM AS/400 можно мониторить с помощью SNMP. Более подробную информацию вы можете получить по адресу http://publib-b.boulder.ibm.com/Redbooks.nsf/RedbookAbstracts/sg244504.html?Open.

2.2 MySQL

Файл конфигурации misc/conf/zabbix_agentd.conf содержит список пользовательских параметров, которые могут быть использованы для наблюдения за MySQL.

### Set of parameter for monitoring MySQL server (v3.23.42 and later)
### Change -u and add -p if required
#UserParameter=mysql[ping],mysqladmin -uroot ping|grep alive|wc -l
#UserParameter=mysql[uptime],mysqladmin -uroot status|cut -f2 -d":"|cut -f1 -d"T" 
#UserParameter=mysql[threads],mysqladmin -uroot status|cut -f3 -d":"|cut -f1 -d"Q"
#UserParameter=mysql[questions],mysqladmin -uroot status|cut -f4 -d":"|cut -f1 -d"S"
#UserParameter=mysql[slowqueries],mysqladmin -uroot status|cut -f5 -d”:”|cut -f1 -d"O"
#UserParameter=mysql[qps],mysqladmin -uroot status|cut -f9 d":"   
#UserParameter=version[mysql],mysql -V
2.2.1 mysql[ping]

Проверить в рабочем ли состоянии MySQL

    Результат: 0 - не запущен 1 - в рабочем состоянии
2.2.2 mysql[uptime]

Количество секунд с момента запуска MySQL

2.2.3 mysql[threads]

Количество потоков MySQL

2.2.4 mysql[questions]

Количество обрабатываемых запросов

2.2.5 mysql[slowqueries]

Количество медленных запросов

2.2.6 mysql[qps]

Запросов в секунду

2.2.7 mysql[version]

Версия MySQL. Пример: mysql Ver 11.16 Distrib 3.23.49, для pc-linux-gnu (i686)

2.3 Роутеры Mikrotik

Используйте SNMP агент предоставляемый Mikrotik. Смотрите http://www.mikrotik.com для получения более подробной информации.

2.4 WIN32

Используйте включенный в поставку Zabbix агент Win32 (скомпилированный).

2.5 Novell

Используйте MRTG Extension Program для сервера NetWare (MRTGEXT.NLM) для Novell. Агент совместим с протоколом использованным в Zabbix. Агент доступен по адресу http://forge.novell.com/modules/xfmod/project/?mrtgext.

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

Например:

UTIL1

Средне использование CPU за 1 минуту

CONNMAX

Использование максимального количества лицензируемых подключений

VFKSys

Свободно байт в разделе Sys:

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

2.6 Tuxedo

Tuxedo утилиты для командной строки tmadmin и qmadmin могут быть использованы в определениях UserParameter, для того чтобы получить счетчики производительности сервера/сервисов/очереди и доступности ресурсов Tuxedo.

2.7 Informix

Стандартная утилита Informix onstat может быть использована для мониторинга практически всех аспектов базы данных Informix. Кроме того, Zabbix может получать информацию через предоставляемого Informix SNMP агента.

2.8 JMX

Прежде всего вам необходимо настроить ваш jvm для разрешения его мониторинга. Вы знаете как это можно сделать? Вы можете использовать утилиту sun jconsole, которая поставляется вместе с jdk, нужно направить эту утилиту на вашу машину с запущенным jvm. Если вы смогли подключиться, то вы молодец.

В своей среде tomcat включите следующие опции для jvm:

  1. Dcom.sun.management.jmxremote \
  2. Dcom.sun.management.jmxremote.port=xxxxx \
  3. Dcom.sun.management.jmxremote.ssl=false \
  4. Dcom.sun.management.jmxremote.authenticate=true \
  5. Dcom.sun.management.jmxremote.password.file=/path/java/jre/lib/management/jmxremote. password”

Здесь говорится о том, что сервер jmx работает на порту ХХХХХ, использует аутентификацию по паролям, которые хранит в файле jmxremote.password. См. документацию Sun по jconsole для получения более подробных сведений. (Вы можете рассмотреть включение ssl для того чтобы сделать подключение более защищенным.)

Как только вышеперечисленные действия будут сделаны, теперь можно запустить JConsole и видеть все, что в настоящее время доступно (и проверить, что можно успешно подключиться). jconsole также может предоставить вам информацию, необходимую для конкретного запроса атрибутов с информационной панели jmx.

Теперь, поскольку используется Tomcat, имеется два способа для получения атрибутов jmx (или результата операции с jmx). При использовании первого способа вы можете использовать servlet предоставленный Tomcat. При использовании второго способа можете отправлять правильно сформированные запросы через утилиту командной строки jmx.

Например нас интересуют пиковые потоки в нашей системе. Вы должны просмотреть список объектов jmx через jconsole и найти их через java.lang, Threading. После выбора Threading, нажимаем на информационную панель и там можем увидеть что mbean имя это “java.lang:type=Threading”

С tomcat можно сделать следующее:

curl -s -u<jmxusername>:<jmxpassword> 'http://<tomcat_hostname>/manager/jmxproxy/?qry=java.lang:type=Threading'

Где имя пользователя и пароль к jmx определены в файле опций jvm, строка qry является одной из полученных строк из jconsole.

Результирующая информация из этого и будет метриками из этого ключа jmx. Разложите результирующую информацию и выберите необходимый вам номер.

Если у вас нет servlet, то вы можете создать http запрос к интерфейсу jmx. Вы можете использовать утилиту командной строки, такую как:

/<pathTo>/java -jar /<pathTo>/cmdline-jmxclient.jar <jmxusername>:<jmxpassword> <jvmhostname>:<jmxport> java.lang:type=Threading PeakThreadCount

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

Снова разложите результат для выбора ваших данных.

Как только вы уверенно выбрали интересующие вас данные, вы можете добавить их в команду пользовательского параметра zabbix. Например:

UserParameter=jvm.maxthreads, /usr/bin/curl -s -u<jmxusername>:<jmxpassword> 'http://<tomcat_hostname>/manager/jmxproxy/?qry=java.lang:type=Threading' | /bin/awk '/^PeakThreadCount\:/ { gsub( /[^0123456789]/, "" ); print $1 }'

или

UserParameter=jvm.maxthreads, /<путь до>/java -jar /<путь до>/cmdline-jmxclient.jar <jmxusername>:<jmxhostname> <jvmhostname>:<jmxport> java.lang:type=Threading PeakThreadCount | <some filter to grab just the number you need - left as an exercise to the reader>

Вот и все.

Предпочтительнее получать статистику с servlet через http, а не использовать клиента командной строки на java, потому что http гораздо “легче” для выполнения и выборки требуемой информации.

Требуется клиент jmx для командной строки? Используйте вот такой отсюда: http://crawler.archive.org/cmdline-jmxclient/

Информация по настройке jmx для мониторинга вашей jvms http://java.sun.com/j2se/1.5.0/docs...ment/agent.html

Общая информация по JMX http://java.sun.com/j2se/1.5.0/docs...verviewTOC.html

Видимо jvm 1.5 также поддерживает SNMP, который предоставляет другие решения

 

3 Интеграция

3.1 HP OpenView

Zabbix можно настроить для отправки сообщений серверу OpenView. Должны быть выполнены следующие шаги:

Шаг 1

Создайте новый Способ оповещений.

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

Шаг 2

Создайте нового пользователя.

К пользователю нужно присоединить (добавить) только что созданный Способ оповещений.

Шаг 3

Настройте действия.

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

Шаг 4

Напишите скрипт.

Скрипт будет иметь следующую логику. Если триггер перешел в состояние ПРОБЛЕМА, тогда выполняется OpenView команда opcmsg -id application=<application> msg_grp=<msg_grp> object=<object> msg_text=<text>. Эта команда будет возвращать уникальный ID сообщения, который нужно где-то сохранить, предпочтительно в новой таблице в базе данных Zabbix. Если триггер вернулся в состояние ОК, в таком случае должно быть выполнена команда opcmack <message id> с ID сообщения, полученным из базы данных.

Обратитесь к официальной документации OpenView для более подробной информации по opcmsg и opcmack. Сам скрипт здесь не предоставляется.

 
 

20. Решение проблем

2.2 Звук в браузерах

Звуки в веб браузерах для веб-интерфейса Zabbix были протестированы в следующих версиях браузеров и никаких дополнительным настроек не потребовалось:

  • Firefox 3.5.16 под Linux
  • Opera 11.01 под Linux
  • Google Chrome 9.0 под Windows
  • Firefox 3.5.16 под Windows
  • IE7 browser под Windows
  • Opera v11.01 под Windows
  • Chrome v9.0 под Windows
  • Safari v5.0 под Windows, но этот браузер требует установленный Quick Time Player

Для воспроизведения звуков в Zabbix в профиле пользователя “Сообщения в веб-интерфейсе” должны быть включены все важности триггеров и в глобальных уведомлениях GUI всплывающее окно звуков так же должно быть включено.

2.2.1 Safari 5.0

Требуется Quick Time Player.

2.2.2 Microsoft Internet Explorer

Для воспроизведения звуков в MSIE7 и MSIE8:

  • В Сервис → Свойства обозревателя → Дополнительно включить Воспроизводить звуки на веб-страницах
  • В Сервис → Надстройки… включить Windows Media Player
  • В Windows Media Player в Инструменты→Настройки→Типы файлов включить Windows audio file (wav)

В Windows Media Player в Инструменты→Настройка вкладка “Тип файлов” доступна только если пользователь член групп “Power Users” или “Администраторы”, т.е. обычный пользователь не имеет прав доступа к этой вкладке и не может просмотреть её.

Дополнительно - если IE не имеет такой же файл *.wav в локальной папке кэша (%userprofile%\Local Settings\Temporary Internet Files), то звук не будет воспроизводится в первый раз.

2.2.3 Firefox v 3.5.16

Для проигрывания wav файлов в браузере Firefox можно воспользоваться одним из следующих плагинов: Windows Media Player или Quick Time plug-in. Эти настройки конфигурации должны быть выполнены в меню Инструменты→Опции→Плагины, для опции “Wave sound (audio/wav)” -вы должны установить Windows Media Player для проигрывания этих файлов.

2.2.4 Известные где не работает

Браузеры, в которых известно, что звук не работает:

  • Opera 10.11 под Linux.
 

1 Сообщения ошибок и предупреждений

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

Некоторые сообщения имеют специальные номера.

В таблице содержится полный список номеров сообщений с дополнительной информацией.

Ошибка Сообщение Описание
Z3001 Connection to database '%s' failed: [%d] %s Демону Zabbix не удалось соединится с базой данных. Дополнительная информация:
имя базы данных
код ошибки базы данных
строка описания ошибки базы данных
Z3002 Cannot create database '%s': [%d] %s Демону Zabbix не удалось создать базу данных. Дополнительная информация:
имя базы данных
код ошибки базы данных
строка описания ошибки базы данных
Z3003 No connection to the database. Такая ошибка никогда не должна происходить. Напишите об этом команде Zabbix если у вас это произойдет.
Z3004 Cannot close database: [%d] %s Демону Zabbix не удалось закрыть подключение к базе данных. Дополнительная информация:
код ошибки базы данных
строка описания ошибки базы данных
Z3005 Query failed: [%d] %s [%s] Ошибка выполнения SQL запроса. Дополнительная информация:
код ошибки базы данных
строка описания ошибки базы данных
строка SQL запроса
Z3006 Fetch failed: [%d] %s Ошибка получения записей. Дополнительная информация:
код ошибки базы данных
строка описания ошибки базы данных

Сообщения с номерами ошибок поддерживаются в Zabbix начиная с версии 1.8

 
 

21. Эскалации и повторные оповещения

1 Обзор

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

Zabbix поддерживает следующие сценарии эскалаций, оповещений и удаленных команд:

  • Немедленное информирование пользователей о новых проблемах
  • Про-активный мониторинг, Zabbix выполнит произвольные скрипты (удаленные команды)
  • Повторные уведомления до тех пор, пока проблема не будет решена
  • Отложенные уведомления и удаленные команды
  • Эскалация проблем в другие группы пользователей
  • Различный путь эскалирования для подтвержденных и неподтвержденных проблем
  • Выполнение действий (как оповещений так и удаленных команд), если проблема присутствует более чем N часов (секунд, минут и т.д.).
  • Сообщения о восстановлении всем заинтересованным участникам
  • Zabbix поддерживает неограниченное количество шагов в эскалациях
 

2 Простые сообщения

Предупреждение: Перед активированием сообщений о восстановлении или эскалаций, не забудьте добавить условие “Значение триггера = ПРОБЛЕМА” для самого действия, в противном случае события восстановления могут быть также эскалированы

Для предупреждения администраторов MySQL о любых проблемах с приложениями MySQL, могут быть использованы следующие настройки:

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

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

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

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

Действие определено как:

Сообщение будет отправлено всем членам группы Администраторы MySQL.

 

3 Удаленные команды

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

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

  • Автоматический перезапуск приложения (Веб-сервер, связующее ПО, CRM), если от него нет ответа
  • Использование команды IPMI 'reboot' для перезагрузки удаленного сервера, если от него нет ответов на запросы
  • Постараться автоматически освободить место на диске (удаление старых файлов, очистка /tmp), если заканчивается место на диске
  • Миграция виртуальной машины с одного физического сервера на другой, в зависимости от загрузки CPU
  • Добавление новых узлов в кластер облачных вычислений, если возник недостаток в ресурсах CPU (диска, памяти или другое)

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

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

Как реакция на чрезвычайные проблемы, Zabbix будет пытаться перезапустить процесс Apache:

Примечание, здесь используется макрос {HOSTNAME}.

Пользователь 'zabbix' должен иметь полномочия для выполнения этого скрипта. Так же Zabbix агент должен быть запущен на удаленном узле и принимать входящие подключения. Удаленные команды по умолчанию отключены и могут быть включены в конфигурацинном файле демона Zabbix агента для Unix-подобных или Windows системах.

Смотрите документацию по удаленным командами для получения более подробных сведений.

 

4 Повторные оповещения

Повторные оповещения это наверное одна из наиболее используемых функций в эскалациях Zabbix.

Убедитесь, что эскалации активированы в настройках действия:

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

Как только мы активировали эскалации, то в операциях действия появятся дополнительные настройки: Шаг(и), Период и Условия.

Предположим что мы хотим отправить 5 сообщений по одному в час, поэтому мы должны определить, что операция будет активна для эскалации с 1 по 5 шаг. Если мы не указали индивидуальный период для операции, тогда период эскалации будет таким, как период эскалации в свойствах самого действия.

Как только возникла проблема, Zabbix переходит к шагу 1, поэтому все операции определенные в этом шаге будут выполнены сразу. Через один час, период эскалации автоматически увеличится (если проблема все еще явно присутствует) и будут выполнены все операции шага 2. И так далее.

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

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

 

5 Отстроченные оповещения

Эскалации в Zabbix поддерживают отправку оповещений с задержкой.

Предположим, что мы хотели бы получать оповещение только о долго присутствующей проблеме с MySQL. Обратите внимание, что период эскалации был изменен на 10 часов, и мы используем измененное сообщение по умолчанию:

Операция назначается только для шага 2. Это означает, что операция будет выполнена только один раз после одного периода эскалации, т.е. через 10 часов:

Поэтому пользователь 'Admin' получит сообщение лишь в том случае, если проблема присутствует уже более 10 часов. Задержка оповещения управляется через период эскалации.

 

6 Эскалация руководству

Эскалации в Zabbix могут быть использованы для эскалирования проблем другим пользователям или группам пользователей. Проблема не решена администраторами MySQL? Эскалируем её начальству!

Сейчас мы настроим периодическую отправку сообщений администраторам MySQL. Администраторы получат четыре сообщения перед тем как проблема будет эскалирована менеджеру базы данных. Обратите внимание, что менеджер получит сообщение только в том случае, если проблема еще не подтверждена (будто бы над ней еще никто не работает).

Заметьте, что мы используем макрос {ESC.HISTORY} в сообщении. Макрос будет содержать информацию о всех предыдущих выполненных шагах. Менеджер получит информацию обо всех отосланных письмах и всех выполненных действиях до этого. Администраторы MySQL, берегитесь!

 

7 Комплексный сценарий

Посмотрите на этот набор действий. После нескольких сообщений администраторам MySQL и эскалации менеджеру, Zabbix попытается перезапустить базу данных MySQL. Это произойдет через 2 часа 30 минут, если проблема все еще присутствует и никем не была подтверждена.

Если проблема все еще присутствует, тогда через еще 30 минут Zabbix отправит сообщение пользователю “Admin”.

Если и это не поможет, тогда через еще один час час Zabbix перезагрузит сервер с базой данных MySQL (вторая удаленная команда), используя команды IPMI.