wiki:ZabbixAgent

Version 8 (modified by alx, 9 years ago) ( diff )

Поправлено оформление таблицы.

Введение

Zabbix - популярная система мониторинга параметров объектов сети. Эта статья содержит информацию об использовании агента Zabbix, встроенного в плату SW-01, для мониторинга аппаратуры.

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

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

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

Принцип работы Zabbix агента

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

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

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

Конфигурация сервера

Добавьте сетевой узел в сервер Zabbix в соответствии с руководством Zabbix. Запомните установленное Вами имя узла сети - оно понадобится для конфигурации агента. Добавьте узлу сети необходимые элементы данных с типом "Zabbix агент (активный)" в соответствии с руководством Zabbix. Ключ элемента данных установить в соответствии с описанием ниже. Также можно взять готовый шаблон. (Примечание: в данном шаблоне применяются две нестандартные функции, для наличия которых необходим патч для Zabbix-2.4.7.)

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

Каждый элемент данных (наблюдаемый сервером параметр) идентифицируется ключом. Агент платы SW-01 требует, чтобы запрашиваемые ключи соответствовали конкретному формату. Ключ должен начинаться со строки "MC04.". Далее следует произвольное слово, заканчивающееся точкой. В настоящее время это поле игнорируется агентом и используется для уникальности ключей и исключения коллизий (коллизия может возникнуть, например, из-за того что две разные платы имеют переменные с одним и тем же OID). Мы рекомендуем для элементов данных, относящихся к конкретному типу платы, в качестве второго элемента ключа использовать имя платы, для элементов данных, относящихся к любой плате блока, использовать слово board, для элементов данных, относящихся к системе в целом, использовать слово sys.

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

ФорматПримерПоддерживается начиная с ревизииОписание
MC04.<board>.snmp<oid>[<slot>]MC04.E1-08.snmp.3.0[5] sw-r1327 Возвращает значение переменной платы в слоте <slot> c OID <oid>
MC04.<board>.nthbyte<oid>[<slot>,<n>]MC04.E1-08.nthbyte.9.0[2,3] sw-r1367 Возвращает значение n-ного байта переменной типа "строка" платы в слоте <slot> c OID <oid>
MC04.<board>.wordat<oid>[<slot>,<offset>]MC04.MS-01.wordat.6.0[8,0] sw-r1372 Возвращает значение 32-битного little-endian слова, находящегося по смещению <offset> в переменной типа "строка" с OID <oid> платы в слоте <slot>
MC04.<board>.wordat-be<oid>[<slot>,<offset>]MC04.MS-01.wordat.6.0[8,0] sw-r1372 Возвращает значение 32-битного big-endian слова, находящегося по смещению <offset> в переменной типа "строка" с OID <oid> платы в слоте <slot>
MC04.sys.boardlist[<type>]MC04.sys.boardlist[0] sw-r1374 Возвращает список плат типа <type> в виде json-объекта. Используется для низкоуровневого обнаружения плат. <type> - код типа запрашиваемой платы. Если <type> равен нулю, возвращается список всех установленных плат.
MC04.sys.ethstat[<p>,<c>]MC04.sys.ethstat[8,0] sw-r1370 Возвращает значение счетчика <c>2 порта <p>1 коммутатора ethernet платы SW-01

1 Номер порта ethernet может принимать значение от 0 до 10. Порты 0-7 - межплатные соединения в блоке, порты 8 и 9 - внешние интерфейсы "eth1" и "eth2" соответственно, порт 10 - внутренний порт центрального процессора платы.

2 Описание доступных счетчиков портов ethernet приведено в следующей таблице.

Номер счетчикаНаименованиеРазрядностьОписание
порты 0-9
0 Good Octets Rx 64 Сумма длин всех успешно (без ошибок) принятых ethernet фреймов за исключением управляющих фреймов MAC (например pause frame).
2 Bad Octets Rx 32 Сумма длин всех фреймов, принятых с ошибками.
3 Tx error 32 Опустошение буфера при передаче (underrun), фрейм с плохой CRC прочитан из памяти.
4 Good Unicast Frames Rx 32 Число принятых без ошибок уникастовых фреймов.
5 Sent Deferred 32 Фрейм был передан в полудуплексное соединение без коллизии, но передача была отложена из-за занятости среды.
6 Good Broadcast Frames Rx 32 Число принятых без ошибок широковещательных фреймов.
7 Good Multicast Frames Rx 32 Число принятых без ошибок мультикастовых фреймов. Не включает управляющие фреймы.
14 Good Octets Sent 64 Сумма длин всех переданных фреймов.
16 Unicast Frames Sent 32 Число переданных уникастовых фреймов.
17 Excessive Collision 32 Число фреймов, отброшенных при передаче в полудуплексное соединение из-за коллизий.
18 Multicast Frames Sent 32 Число переданных мультикастовых фреймов. Не включает управляющие фреймы.
19 Broadcast Frames Sent 32 Число переданных широковещательных фреймов.
20 Sent Multiple 32 Число фреймов, переданных в полудуплексное соединение, в процессе передачи которых возникло более одной коллизии.
21 FC Sent 32 Число переданных фреймов управления потоком (Flow-Control).
22 FC Rx 32 Число принятых фреймов управления потоком (Flow-Control).
23 Receive FIFO Overrun 32 Ошибки приема фрейма из-за недостаточной пропускной способности внутренних ресурсов коммутатора (например выделения буферов ОЗУ).
24 Undersize 32 Число принятых фреймов короче допустимой длины.
25 Fragments 32 Число принятых фрагментов фреймов.
26 Oversize 32 Число принятых фреймов, превышающих допустимый размер.
27 Jabber 32 Число принятых jabber пакетов.
28 RxError Frame Rx 32 Число ошибок приема, обнаруженных приемной частью MAC.
29 Bad CRC 32 Число принятых фреймов с неверной CRC.
30 Collisions 32 Число коллизий.
31 Late Collisions 32 Число поздних коллизий.
порт 10
0 Good Octets Rx 32 Сумма длин всех успешно (без ошибок) принятых ethernet фреймов за исключением управляющих фреймов MAC (например pause frame).
2 Bad Octets Rx 16 Сумма длин всех фреймов, принятых с ошибками.
3 MAC Tx Error 16 Число фреймов, не преданных в результате внутренней ошибки MAC (например опустошения буфера).
4 Good Frames Rx 16 Число принятых без ошибок фреймов.
14 Good Octets Sent 32 Сумма длин всех успешно (без ошибок) принятых ethernet фреймов за исключением управляющих фреймов MAC (например pause frame).
16 Good Frames Sent 32 Число всех успешно (без ошибок) переданных фреймов за исключением управляющих фреймов MAC (например pause frame).
23 Internal Drop Rx 16 Число принятых без ошибок фреймов, отброшенных в результате внутренних заторов.
29 Bad Frames Rx 16 Число принятых c ошибками фреймов.

Конфигурация агента

Конфигурация агента Zabbix производится через веб-интерфейс. Агент может работать с несколькими серверами Zabbix. Список серверов отображается в таблице на вкладке "Мониторинг" в виде записей с типом "Zabbix" (совместно с типами мониторинга ИСУМ и SNMP). Для добавления сервера Zabbix необходимо нажать кнопку "Добавить систему мониторинга" на вкладке "Мониторинг", в появившемся диалоге выбора типа мониторинга выбрать "Zabbix агент (активный)" и нажать "OK".

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

Для активации мониторинга необходимо установить чекбокс в колонке "Активен" в строке сервера Zabbix.

Attachments (5)

Download all attachments as: .zip

Note: See TracWiki for help on using the wiki.