Пошаговые руководства, шпаргалки, полезные ссылки...
БлогФорумАвторы
Полезные Online-сервисы
Перечень Бесплатного ПО
Подписка на RSS-канал
В состав комплекта плагинов Centreon Plugins не входит выделенный плагин мониторинга IP-телефонов Avaya. Однако для этой цели мы можем использовать реализацию мониторинга стандартной Linux-системы с помощью периодических опросов по протоколу SNMP из плагина os::linux::snmp::plugin.
Данная статья не описывает процессов интеграции плагина с системами мониторинга типа Icinga/Nagios, а лишь обозначает некоторые практические примеры использования режимов работы плагинов Centreon Plugins .
Плагин мониторинга os::linux::snmp::plugin имеет несколько режимов работы, позволяющих отслеживать состояние разных показателей. С точки зрения мониторинга IP-телефонов Avaya нам будут интересны лишь некоторые из этих режимов:
# /usr/lib/nagios/plugins/centreon-plugins/centreon_plugins.pl \ --plugin=os::linux::snmp::plugin \ --list-mode ... Modes Available: ... cpu ... interfaces ... load memory ... uptime
Режим позволяет создать отдельную службу мониторинга, например «Avaya CPU Usage», статус которой будет меняться в зависимости от текущей нагрузки на процессор аппарата. Пример вызова данного режима:
# ./centreon_plugins.pl --plugin=os::linux::snmp::plugin --mode=cpu \ --warning-average='90' --warning-core='90' --critical-average='98' --critical-core='98' \ --hostname='MY-PHONE01' --snmp-community='myROcs' --snmp-version='2c' \ --use-new-perfdata OK: 1 CPU(s) average usage is 14.00 % - CPU '0' usage : 14.00 % | 'cpu.utilization.percentage'=14.00%;0:90;0:98;0;100 '0#core.cpu.utilization.percentage'=14.00%;0:90;0:98;0;100
Опциями warning-average и critical-average задаём границы изменения общей нагрузки процессора (по всем ядрам) в процентах (более 90% - предупреждение, более 98% - критический статус).
warning-average
critical-average
Опциями warning-core и critical-core задаём границы изменения нагрузки по каждому отдельному процессорному ядру в процентах (более 90% - предупреждение, более 98% - критический статус).
warning-core
critical-core
Режим позволяет создать отдельную службу мониторинга, например «Avaya Load Average», статус которой будет меняться в зависимости от средней загрузки операционной системы аппарата в целом. Пример вызова данного режима:
# ./centreon_plugins.pl --plugin=os::linux::snmp::plugin --mode=load \ --critical='12,,' \ --hostname='MY-PHONE01' --snmp-community='myROcs' --snmp-version='2c' OK: Load average: 2.50, 2.49, 2.46 | 'load1'=2.50;;0:12;0; 'load5'=2.49;;;0; 'load15'=2.46;;;0;
Опциями warning и critical мы можем задать границы изменения загрузки системы в формате «load last 1m, load last 5m, load last 15m». То есть в нашем примере, задан только критический порог для показателя load за последнюю минуту со значением в 12 единиц (это пограничное значение было подсмотрено в документации Avaya).
warning
critical
«load last 1m, load last 5m, load last 15m»
Режим позволяет создать отдельную службу мониторинга, например «Avaya Memory Usage», статус которой будет меняться в зависимости от текущего уровня утилизации оперативной памяти аппарата. Пример вызова данного режима:
# ./centreon_plugins.pl --plugin='os::linux::snmp::plugin' --mode='memory' \ --hostname='KOM-PHONE01' --snmp-version='2' --snmp-community='myROcs' \ --warning-usage-prct='90' --critical-usage-prct='98' \ --use-new-perfdata --filter-perfdata='(usage.bytes|usage.percentage)' OK: Ram Total: 115.25 MB Used (-buffers/cache): 51.04 MB (44.29%) Free: 64.21 MB (55.71%), Buffer: 0.00 B, Cached: 36.58 MB, Shared: 852.00 KB | 'memory.usage.bytes'=53518336B;;;0;120844288 'memory.usage.percentage'=44.29%;0:90;0:98;0;100
Опциями warning-usage-prct и critical-usage-prct задаём границы изменения статуса службы мониторинга в процентах (более 90% - предупреждение, более 98% - критический статус).
warning-usage-prct
critical-usage-prct
Опция filter-perfdata позволяет отобрать только интересующие нас метрики производительности. Вы можете удалить из команды эту опцию, чтобы увидеть полный вывод плагина без фильтрации.
filter-perfdata
Режим позволяет создать отдельную службу мониторинга, например « Avaya Uptime», которая будет отслеживать время непрерывной работы аппарата между перезагрузками его встроенной ОС. Пример вызова данного режима:
#./centreon_plugins.pl --plugin='os::linux::snmp::plugin' --mode='uptime' \ --hostname='KOM-PHONE01' --snmp-version='2' --snmp-community='myROcs' OK: System uptime is: 4d 15h 38m 3s | 'uptime'=401883s;;;0;
Сбор метрики производительности в секундах позволит нам построить наглядный исторический график, на котором будут заметны все перезагрузки аппарата.
Режим позволяет создать отдельную службу мониторинга, например «Avaya Interfaces», статус которой будет меняться в зависимости от уровня утилизации и наличия ошибок на сетевых интерфейсах аппарата. Пример вызова данного режима:
# ./centreon_plugins.pl --plugin='os::linux::snmp::plugin' --mode=interfaces \ --hostname='KOM-PHONE01' --snmp-version='2' --snmp-community='myROcs' \ --add-traffic --units-traffic='%' \ --add-errors \ --warning-out-traffic='98' --warning-out-error='1' --warning-out-discard='50' \ --warning-in-traffic='98' --warning-in-error='1' --warning-in-discard='50' \ --use-new-perfdata --filter-uom='null' \ --filter-perfdata-adv='not (%(value) == 0)' \ --filter-perfdata='.*[.](traffic|error|discard|crc)[.].*' \ --critical-status='%{errdisable} ne "-"' OK: All interfaces are ok | 'eth0#interface.traffic.in.bitspersecond'=448.82;;;0; 'eth0#interface.traffic.out.bitspersecond'=466.67;;;0; 'eth0.101#interface.traffic.in.bitspersecond'=375.38;;;0; 'eth0.101#interface.traffic.out.bitspersecond'=411.28;;;0;
Опция add-traffic добавляет в вывод плагина данные о производительности (perfdata) по трафику на сетевых интерфейсах, а опция units-traffic определяет то, что абсолютные показатели будут для удобства пересчитываться в проценты (в том числе и для сравнения с допустимыми пороговыми значениями).
add-traffic
units-traffic
Опция add-errors включает режим вывода сведений об ошибках на интерфейсах.
add-errors
Опциями warning-in-* и warning-out-* задаём границы допустимых для нас значений в процентном соотношении. Например, в нашем случае опция warning-in-traffic служит для изменения статуса службы мониторинга на предупреждающий в случае, если утилизация входящего трафика превышает 98%.
warning-in-*
warning-out-*
warning-in-traffic
Необязательной опцией filter-uom можем отказаться от вывода единиц измерения (UOM) в выводимых данных perfdata.
filter-uom
Опция filter-perfdata-adv позволяет нам задать расширенные условия для вывода данных perfdata. В нашем конкретном примере, из вывода плагина исключаются все значения, имеющие нулевой показатель (может быть полезно, если требуется сократить объём сохраняемых метрик).
filter-perfdata-adv
Опция filter-perfdata позволяет отбросить все не интересующие нас метрики perfdata с использованием регулярных выражений.
Ну и, наконец, с помощью опции critical-status мы добавляем отлов интерфейсов, находящихся в состоянии ошибки.
critical-status
У телефонов Avaya серии J100, на которых проводилось тестирование и отладка работы плагина мониторинга os::linux::snmp::plugin было замечено то, что по протоколу SNMP может не возвращаться информация о пропускной способности сетевых интерфейсов. Это, в свою очередь,не позволяет контролировать процент текущей утилизации интерфейса и менять статус службы мониторинга в случае превышения допустимых пороговых значений.
Проверено на следующих конфигурациях:
Автор первичной редакции: Алексей Максимов Время публикации: 01.02.2022 13:40