Назад | Перейти на главную страницу

мониторинг keepalived виртуального IP с помощью snmp

Я пытаюсь контролировать VIP-статус активности с помощью snmp. Я получил поддержку активности на двух серверах. У нас была ситуация, когда VIP внезапно оказался на обоих серверах, что было большой проблемой, поскольку эти серверы являются виртуальными шлюзами. Моя цель - отслеживать поддержку активности на обоих серверах с помощью скрипта python через плагин check_mk. Теперь я могу получить главный и резервный серверы, но я хочу знать, какому серверу назначен VIP.

Я могу получить все идентификаторы keepalived:

snmpwalk -v 2c -c public keepalived.server KEEPALIVED
snmpwalk -v 2c -c public keepalived.server KEEPALIVED-MIB::keepalived
snmpwalk -v 2c -c public keepalived.server KEEPALIVED-MIB::vrrp
snmpwalk -v 2c -c public keepalived.server VRRP-MIB::vrrpMIB
snmpwalk -v 2c -c public keepalived.server VRRPV3-MIB::vrrpv3MIB

Bute, когда я запускаю следующее, я получаю сообщение об ошибке:

# snmpwalk -v2c -c public keepalived.server KEEPALIVED-MIB::virtualServerAddress
KEEPALIVED-MIB::virtualServerAddress = No Such Object available on this agent at this OID

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

Кроме того, у меня есть вопросы:

должен snmp-mibs-downloader быть также установленным на серверах поддержки активности или достаточно установить его на сервере мониторинга, потому что я получаю следующий журнал на серверах поддержки активности, когда он не установлен на них:

# less /var/log/syslog 
Sep 18 10:41:11 snmpd[16695]: MIB search path: /usr/share/snmp/mibs:/usr/share/snmp/mibs/iana:/usr/share/snmp/mibs/ietf:/usr/share/
mibs/site:/usr/s/share/mibs/iana:/usr/share/mibs/ietf:/usr/share/mibs/netsnmp 
Sep 18 10:41:11 snmpd[16695]: Cannot find module (SNMPv2-MIB): At line 0 in (none)
Sep 18 10:41:11 snmpd[16695]: Cannot find module (IF-MIB): At line 0 in (none) 
Sep 18 10:41:11 snmpd[16695]: Cannot find module (IP-MIB): At line 0 in (none) 
Sep 18 10:41:11 snmpd[16695]: Cannot find module (TCP-MIB): At line 0 in (none)
Sep 18 10:41:11 snmpd[16695]: Cannot find module (UDP-MIB): At line 0 in (none)
Sep 18 10:41:11 snmpd[16695]: Cannot find module (HOST-RESOURCES-MIB): At line 0 in (none) 
Sep 18 10:41:11 snmpd[16695]: Cannot find module (NOTIFICATION-LOG-MIB): At line 0 in (none)
Sep 18 10:41:11 snmpd[16695]: Cannot find module (DISMAN-EVENT-MIB): At line 0 in (none)
Sep 18 10:41:11 snmpd[16695]: Cannot find module (DISMAN-SCHEDULE-MIB): At line 0 in (none) 
Sep 18 10:41:11 snmpd[16695]: Cannot find module (HOST-RESOURCES-TYPES): At line 0 in (none)
Sep 18 10:41:11 snmpd[16695]: Cannot find module (MTA-MIB): At line 0 in (none)
................
................
................

simlint не имеет вывода на сервер мониторинга:

# smilint /usr/share/snmp/mibs/KEEPALIVED-MIB.txt
# 

но запустив его в каталоге:

# smilint /usr/share/snmp/mibs/*
/usr/share/snmp/mibs/GNOME-SMI.txt:88: warning: module name `GNOME-SMI' should match `*-MIB'
/usr/share/snmp/mibs/IANA-ADDRESS-FAMILY-NUMBERS-MIB.txt:151: enumeration name `mplsTpPseudowireEndpointIdentifier' longer than 32 characters
/usr/share/snmp/mibs/IANA-ADDRESS-FAMILY-NUMBERS-MIB.txt:62: warning: current type `AddressFamilyNumbers' is not referenced in this module
/usr/share/snmp/mibs/IANAifType-MIB.txt:462: warning: named number `if-gsn' must not include a hyphen in SMIv2
/usr/share/snmp/mibs/IANAifType-MIB.txt:279: warning: identifier `IANAifType' differs from `ianaifType' only in case
/usr/share/snmp/mibs/IANAifType-MIB.txt:7: info: previous definition of `ianaifType'
/usr/share/snmp/mibs/IANAifType-MIB.txt:279: warning: current type `IANAifType' is not referenced in this module
/usr/share/snmp/mibs/IANAifType-MIB.txt:600: warning: current type `IANAtunnelType' is not referenced in this module
/usr/share/snmp/mibs/IANA-RTPROTO-MIB.txt:42: warning: current type `IANAipRouteProtocol' is not referenced in this module
/usr/share/snmp/mibs/IANA-RTPROTO-MIB.txt:74: warning: current type `IANAipMRouteProtocol' is not referenced in this module
/usr/share/snmp/mibs/LM-SENSORS-MIB.txt:17: failed to locate MIB module `UCD-SNMP-MIB'`
...............
...............
...............

Я понятия не имею, является ли это проблемой snmp или keepalived, или отсутствуют MIB, которые мне нужно установить.

Спасибо за вашу помощь.

pqarmitage from acassen / keepalived ответил на вопрос Вот:

Бег snmpwalk -v2c -c public keepalived.server KEEPALIVED-MIB::virtualServerAddress Я получаю то же самое, что и вы, используя свою конфигурацию выше, но это правильно, поскольку виртуальные серверы не настроены (виртуальные серверы являются частью конфигурации IPVS / healthchecker и не относятся к vrrp_instances).

Если я добавлю в конфигурацию пару виртуальных серверов с адресами 10.0.1.4 и 10.0.2.4, то snmpwalk -v2c -c public keepalived.server KEEPALIVED-MIB::virtualServerAddress производит:

KEEPALIVED-MIB::virtualServerAddress.1 = Hex-STRING: 0A 00 01 04
KEEPALIVED-MIB::virtualServerAddress.2 = Hex-STRING: 0A 00 02 04

Спасибо