Zabbix. Настройка SNMP-TRAP в Zabbix: различия между версиями
Cless (обсуждение | вклад) (Новая страница: «Категория:Zabbix __ОБЯЗАТЕЛЬНОЕ_ОГЛАВЛЕНИЕ__») |
Cless (обсуждение | вклад) |
||
| Строка 1: | Строка 1: | ||
[[Категория:Zabbix]] | [[Категория:Zabbix]] | ||
__ОБЯЗАТЕЛЬНОЕ_ОГЛАВЛЕНИЕ__ | __ОБЯЗАТЕЛЬНОЕ_ОГЛАВЛЕНИЕ__ | ||
== Установка == | |||
<code>yum install snmptt net-snmp perl-Net-SNMP net-snmp-perl net-snmp-utils perl-Sys-Syslog</code> | |||
Дописываем в конфиг | |||
<code>nano /etc/snmp/snmptrapd.conf</code> | |||
... | |||
authCommunity log,execute,net public | |||
traphandle default /usr/sbin/snmptthandler | |||
В конфиге /etc/snmp/snmptt.ini меняем параметры | |||
<code>nano /etc/snmp/snmptt.ini</code> | |||
... | |||
mode = daemon | |||
net_snmp_perl_enable = 1 | |||
mibs_environment = ALL | |||
unknown_trap_log_enable = 1 | |||
date_time_format = %H:%M:%S %Y/%m/%d | |||
log_enable = 1 | |||
log_file = /var/log/snmptt/snmptt.log | |||
unknown_trap_log_file = /var/log/snmptt/snmpttunknown.log | |||
... | |||
В конфиге /etc/snmp/snmptt.conf дописываем | |||
<code>nano /etc/snmp/snmptt.conf</code> | |||
... | |||
EVENT general .* "General event" Normal | |||
FORMAT ZBXTRAP $aA $1 $2 $3 $4 | |||
Перезапускаем snmpd, snmptt и snmptrapd | |||
<code>service snmpd restart</code> | |||
<code>service snmptt restart</code> | |||
<code>service snmptrapd restart</code> | |||
Проверяем, что 162 порт слушается: | |||
<code>netstat -tanu | grep :162</code> | |||
udp 0 0 0.0.0.0:162 0.0.0.0:* | |||
Правим конфиг /etc/zabbix/zabbix_server.conf | |||
<code>nano /etc/zabbix/zabbix_server.conf</code> | |||
StartSNMPTrapper=1 | |||
SNMPTrapperFile=/var/log/snmptt/snmptt.log | |||
Включаем автозапуск служб | |||
<code>systemctl enable snmpd</code> | |||
<code>systemctl enable snmptt</code> | |||
<code>systemctl enable snmptrapd</code> | |||
<code>systemctl enable zabbix-server</code> | |||
Перезапускаем всё | |||
<code>service snmpd restart</code> | |||
<code>service snmptt restart</code> | |||
<code>service snmptrapd restart</code> | |||
<code>service zabbix-server restart</code> | |||
Можно сгенерировать тестовый трап | |||
<code>snmptrap -v 1 -c public 127.0.0.1 '.1.3.6.1.6.3.1.1.5.3' '0.0.0.0' 6 33 '55' .1.3.6.1.6.3.1.1.5.3 s "teststring000"</code> | |||
В файле /var/log/snmptt/snmptt.log видим: | |||
Wed Aug 15 15:02:36 2018 .1.3.6.1.6.3.1.1.5.3.0.33 Normal "General event" localhost - ZBXTRAP 127.0.0.1 teststring000 $2 $3 | |||
Это означает, что трапы пишутся в файл | |||
В файле /var/log/zabbix/zabbix-server.log видим: | |||
11843:20180815:150241.105 unmatched trap received from "127.0.0.1": Wed Aug 15 15:02:36 2018 .1.3.6.1.6.3.1.1.5.3.0.33 Normal "General event" localhost - teststring000 $2 $3 | |||
Это означает, что заббикс читает файл | |||
ТЕПЕРЬ СОЗДАДИМ ТЕСТОВЫЙ ХОСТ И ITEM В НЕМ, В КОТОРЫЙ БУДЕМ ЛОВИТЬ ОТПРАВЛЕННЫЙ SNMP-TRAP | |||
== Настройка в веб-интерфейсе zabbix == | |||
Создаем хост "Veeam" с интерфейсом SNMP 192.168.199.20:161 | |||
Как пример, 192.168.199.20 это '''Veeam B&R''' сервер, с которого будут отправляются трапы о завершении задания бэкапа или репликации | |||
Создаем Item для ловли трапов: | |||
Name: '''log''' | |||
Type: '''SNMP trap''' | |||
Key: '''snmptrap[.1.3.6.1.4.1.31023.1.1.1.0.1]''' | |||
Host interface: '''192.168.199.20:161''' | |||
Type of information: '''Log''' | |||
Трап с OID ".1.3.6.1.4.1.31023.1.1.1.0.1" отправляет Veeam, | |||
Забикс видит в своих логах через фильтр REGEXP (snmptrap[.1.3.6.1.4.1.31023.1.1.1.0.1] - в скобках [] регулярное выражение) | |||
Строку с этим OID и ловит его этим ITEM | |||
Настройки '''Veeam B&R''' для отправки трапов статуса заданий: | |||
* General options: | |||
** SNMP Settings: | |||
*** Reciever - 192.168.199.13:162 // 192.168.199.13 - Zabbix сервер, 162 - порт SNMP-trap | |||
*** Community string - public | |||
В свойствах задания (Job): | |||
Storage - Advanced - Nitifications: ставим галку "'''Send SNMP notifications for this job'''" | |||
Теперь при завершении задания бэкапирования или репликации '''veeam''' будет отправлять '''snmp-trap''' | |||
Забикс поймает его и поместит в '''item "log"''' хоста "'''veeam'''" | |||
Данные мы увидим в '''Latest data''' - '''History''' | |||
Версия 22:02, 31 января 2022
Установка
yum install snmptt net-snmp perl-Net-SNMP net-snmp-perl net-snmp-utils perl-Sys-Syslog
Дописываем в конфиг
nano /etc/snmp/snmptrapd.conf
... authCommunity log,execute,net public traphandle default /usr/sbin/snmptthandler
В конфиге /etc/snmp/snmptt.ini меняем параметры
nano /etc/snmp/snmptt.ini
... mode = daemon net_snmp_perl_enable = 1 mibs_environment = ALL unknown_trap_log_enable = 1 date_time_format = %H:%M:%S %Y/%m/%d log_enable = 1 log_file = /var/log/snmptt/snmptt.log unknown_trap_log_file = /var/log/snmptt/snmpttunknown.log ...
В конфиге /etc/snmp/snmptt.conf дописываем
nano /etc/snmp/snmptt.conf
... EVENT general .* "General event" Normal FORMAT ZBXTRAP $aA $1 $2 $3 $4
Перезапускаем snmpd, snmptt и snmptrapd
service snmpd restart
service snmptt restart
service snmptrapd restart
Проверяем, что 162 порт слушается:
netstat -tanu | grep :162
udp 0 0 0.0.0.0:162 0.0.0.0:*
Правим конфиг /etc/zabbix/zabbix_server.conf
nano /etc/zabbix/zabbix_server.conf
StartSNMPTrapper=1 SNMPTrapperFile=/var/log/snmptt/snmptt.log
Включаем автозапуск служб
systemctl enable snmpd
systemctl enable snmptt
systemctl enable snmptrapd
systemctl enable zabbix-server
Перезапускаем всё
service snmpd restart
service snmptt restart
service snmptrapd restart
service zabbix-server restart
Можно сгенерировать тестовый трап
snmptrap -v 1 -c public 127.0.0.1 '.1.3.6.1.6.3.1.1.5.3' '0.0.0.0' 6 33 '55' .1.3.6.1.6.3.1.1.5.3 s "teststring000"
В файле /var/log/snmptt/snmptt.log видим:
Wed Aug 15 15:02:36 2018 .1.3.6.1.6.3.1.1.5.3.0.33 Normal "General event" localhost - ZBXTRAP 127.0.0.1 teststring000 $2 $3
Это означает, что трапы пишутся в файл
В файле /var/log/zabbix/zabbix-server.log видим:
11843:20180815:150241.105 unmatched trap received from "127.0.0.1": Wed Aug 15 15:02:36 2018 .1.3.6.1.6.3.1.1.5.3.0.33 Normal "General event" localhost - teststring000 $2 $3
Это означает, что заббикс читает файл
ТЕПЕРЬ СОЗДАДИМ ТЕСТОВЫЙ ХОСТ И ITEM В НЕМ, В КОТОРЫЙ БУДЕМ ЛОВИТЬ ОТПРАВЛЕННЫЙ SNMP-TRAP
Настройка в веб-интерфейсе zabbix
Создаем хост "Veeam" с интерфейсом SNMP 192.168.199.20:161
Как пример, 192.168.199.20 это Veeam B&R сервер, с которого будут отправляются трапы о завершении задания бэкапа или репликации
Создаем Item для ловли трапов:
Name: log Type: SNMP trap Key: snmptrap[.1.3.6.1.4.1.31023.1.1.1.0.1] Host interface: 192.168.199.20:161 Type of information: Log
Трап с OID ".1.3.6.1.4.1.31023.1.1.1.0.1" отправляет Veeam,
Забикс видит в своих логах через фильтр REGEXP (snmptrap[.1.3.6.1.4.1.31023.1.1.1.0.1] - в скобках [] регулярное выражение)
Строку с этим OID и ловит его этим ITEM
Настройки Veeam B&R для отправки трапов статуса заданий:
- General options:
- SNMP Settings:
- Reciever - 192.168.199.13:162 // 192.168.199.13 - Zabbix сервер, 162 - порт SNMP-trap
- Community string - public
- SNMP Settings:
В свойствах задания (Job):
Storage - Advanced - Nitifications: ставим галку "Send SNMP notifications for this job"
Теперь при завершении задания бэкапирования или репликации veeam будет отправлять snmp-trap
Забикс поймает его и поместит в item "log" хоста "veeam"
Данные мы увидим в Latest data - History