Мониторинг OSPF в заббиксе

Использовал следующий шаблон:

https://share.zabbix.com/network_devices/snmp-router-ospf

В аттаче таблица значений (value mapping):

https://drive.google.com/open?id=0B5hSN1ZP2lraaVJTLUVpMmpGd3M

И исправленый шаблон, спасибо:

https://drive.google.com/open?id=0B5hSN1ZP2lraMzdUOEpfTU5ueUU

если версия заббикса выше 3.0, то шаблон вот такой можно использовать:

https://drive.google.com/open?id=0B5hSN1ZP2lraUGtrTDhMTkFDeEE

Конфигурационный файл zabbix-сервера

DebugLevel=3
LogFile=/var/log/zabbix-server/zabbix_server.log
PidFile=/var/run/zabbix/zabbix_server.pid
DBName=zabbix
DBUser=zabbix
AlertScriptsPath=/etc/zabbix/alert.d/
FpingLocation=/usr/bin/fping
DBPassword=123
DBHost=127.0.0.1
StartPingers=20
CacheSize=512M
StartPollers=65
StartPollersUnreachable=25
StartTrappers=5
StartDiscoverers=3
HousekeepingFrequency=24
MaxHousekeeperDelete=5000
StartDBSyncers=32
ValueCacheSize=64M
Timeout=10

Регулярные выражения (regexp) для network discovery в заббиксе/zabbix

Заббикс – вещь капризная и очень требовательная к ресурсам дисковой подсистемы. А какая-нибудь 76 или 65 циска будучи в ядре или дистрибьюции создаёт уйму интерфейсов, нужных и ненужных. Надо с этим бороться и снимать данные только с нужных портов.

В заббиксе – configuratuin–hosts–нужный хост–discovery rules–Template SNMP Interfaces 64: Network interfaces–нажимаем на Network interfaces–Filters–{#SNMPVALUE} matches

Для 7606 я написал следующее правило:

^TenGigabitEthernet1/[1-8]$|^GigabitEthernet2/[1-9]$|^GigabitEthernet2/[1-2][0-9]$|^unrouted VLAN [1-9]$|^unrouted VLAN [1-9][0-9]$|^unrouted VLAN [1-9][0-9][0-9]$|^unrouted VLAN [1-3][1-4][0-9][0-9]$|^Port-channel1$

Это выражение будет матчить TenGigabitEthernet1/ с 1 по 8, GigabitEthernet2/ с 1 по 9, GigabitEthernet2/ с 10 по 29, unrouted VLAN с 1 по 3499. Символ ^ – матчить в начале строки, $ – в конце строки.

Для джунипера:

^xe-2/0/[0-3]$|^xe-2/0/[0-3].[0-9]{1,4}$|^fxp[0-9]-[0-9]+$|^irb.[0-9]+$

xe-2/0/[0-3].[0-9]{1,4} – будут матчиться интерфейсы xe-2/0/0-3.0000-9999. {1,4} – значит повторить предыдущее значение от  1 до 4 раз.

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

Мониторинг уровня оптического сигнала на cisco

Находим индекс сенсора:

snmpwalk -v2c -c 123 192.168.2.2 1.3.6.1.2.1.47.1.1.1.1.7 | grep Te1/2
SNMPv2-SMI::mib-2.47.1.1.1.1.7.1027 = STRING: “Te1/2”
SNMPv2-SMI::mib-2.47.1.1.1.1.7.1028 = STRING: “10-Gigabit Transceiver Port Container Te1/2”
SNMPv2-SMI::mib-2.47.1.1.1.1.7.1029 = STRING: “Transceiver Te1/2”
SNMPv2-SMI::mib-2.47.1.1.1.1.7.1030 = STRING: “Te1/2 Module Temperature Sensor”
SNMPv2-SMI::mib-2.47.1.1.1.1.7.1031 = STRING: “Te1/2 Supply Voltage Sensor”
SNMPv2-SMI::mib-2.47.1.1.1.1.7.1032 = STRING: “Te1/2 Bias Current Sensor”
SNMPv2-SMI::mib-2.47.1.1.1.1.7.1033 = STRING: “Te1/2 Transmit Power Sensor”
SNMPv2-SMI::mib-2.47.1.1.1.1.7.1034 = STRING: “Te1/2 Receive Power Sensor”

нужны соответственно значения уровня на приёме и передаче: 1033 и 1034. Далее снимаем значения с сенсора:

snmpwalk -v2c -c 123 192.168.2.2 1.3.6.1.4.1.9.9.91.1.1.1.1.4.1033
SNMPv2-SMI::enterprises.9.9.91.1.1.1.1.4.1033 = INTEGER: -36
manager@zabbix:~$ snmpwalk -v2c -c 123 192.168.2.2 1.3.6.1.4.1.9.9.91.1.1.1.1.4.1034
SNMPv2-SMI::enterprises.9.9.91.1.1.1.1.4.1034 = INTEGER: -13

Определить точность измерения:

1.3.6.1.4.1.9.9.91.1.1.1.1.3.1033

1.3.6.1.4.1.9.9.91.1.1.1.1.3.1034

“This variable indicates the number of decimal
places of precision in fixed-point
sensor values reported by entSensorValue.

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

 

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

Чтобы не строить графики по всем портам коммутатора, можно использовать regexp в Discovery rule. Заходим в хост, Discovery rule–>Network interfaces–>Filters. Там добавляем макрос {#SNMPVALUE} и само выражение, например D-Link DES-3028 R2.94 Port [2]{1}$ – будет матчиться только вхождение D-Link DES-3028 R2.94 Port 2. [2] – это символ для поиска, {1}$ – искать один символ в конце строки.

логирование сообщений с cisco

sudo nano /etc/rsyslog.conf

# provides UDP syslog reception
$ModLoad imudp
$UDPServerRun 514

# provides TCP syslog reception
$ModLoad imtcp
$InputTCPServerRun 514

 

sudo nano /etc/rsyslog.d/50-default.conf

# From core devices
local2.*                                                /var/log/device_log/core

sudo mkdir /var/log/device_log

sudo touch /var/log/device_log/core

sudo nano /etc/logrotate.conf

/var/log/device_log {
missingok
rotate 5
size=5M
compress
}

/var/log/snmptt {
missingok
rotate 5
size=5M
compress
}

На хосте заббикс сервера создаю item:

zabbix

 

Триггеры на падение входящего трафика в три раза

some_operator_traffic_down

({192.168.1.2:ifHCInOctets[Ethernet1/0/5].last(0)}*100)/({192.168.1.2:ifHCInOctets[Ethernet1/0/5].last(#5)})<30

Берётся последнее значение, умножается на 100 и делится на последнее пятое значение. Если отношение меньше тридцати (разница примерно в три раза), срабатывает триггер.

 

  • Описание
    Внимание! Количество трафика из DATAIX упало в 3 раза. Необходимо проверить соответствующий график – возможно ложное срабатывание. Если не проводится никаких работ, необходимо написать письмо на noc@dataix.ru для выяснения причин.

 

Настроено действие на оповещение:

  • Имя
  • Тема по умолчанию
  • Сообщение по умолчанию
    Trigger: {TRIGGER.NAME}
    Trigger status: {TRIGGER.STATUS}
    Trigger URL: {TRIGGER.URL}

    Item values:

    1. {ITEM.NAME1} ({HOST.NAME1}:{ITEM.KEY1}): {ITEM.VALUE1}

    Description:
    {TRIGGER.DESCRIPTION}

    Original event ID: {EVENT.ID}

  • Сообщение о восстановлении
  • Тема восстановления
  • Сообщение о восстановлении
    Trigger: {TRIGGER.NAME}
    Trigger status: {TRIGGER.STATUS}
    Trigger URL: {TRIGGER.URL}

    Item values:

    1. {ITEM.NAME1} ({HOST.NAME1}:{ITEM.KEY1}): {ITEM.VALUE1}

    Description:
    {TRIGGER.DESCRIPTION}

    Original event ID: {EVENT.ID}

  • Активировано