keepalived+snmp
Поскольку у keepalived нет штатного метода снятия ряда метрик (включая текущий статус), имеет смысл подключить snmp.
#Ставим snmp демон
yum -y install net-snmp net-snmp-utils
#Включаем agentx
echo "master agentx" >> /etc/snmp/snmpd.conf
systemctl enable snmpd
systemctl start snmpd
#активируем snmp у сервиса
sed -i'' -e 's@KEEPALIVED_OPTIONS="-D"@KEEPALIVED_OPTIONS="-D -x"@' /etc/sysconfig/keepalived
#перезапуск
systemctl restart keepalived
#проверить результат можно так, нужна строка NET-SNMP version 5.7.2 AgentX subagent connected
journalctl -u keepalived -xe
Теперь запросим данные
Проверим для начала, что mibs стоят (в 1.3 должно быть так)
ls /usr/share/snmp/mibs/ |grep -i keepa
KEEPALIVED-MIB.txt
Запросим любое значение для теста
snmpwalk -v2c -c public localhost KEEPALIVED-MIB::version
должен быть ответ вида
KEEPALIVED-MIB::version.0 = STRING: Keepalived v1.3.9 (11/09,2017)
Или в численном виде, без установки MIB:
snmpwalk -v2c -cpublic localhost .1.3.6.1.4.1.9586.100.5
При ошибке
KEEPALIVED-MIB::vrrpInstanceState = No more variables left in this MIB View (It is past the end of the MIB tree)
настраиваем конфиг snmpd.conf, в простейшем случае он такой:
rocommunity public
master agentx
И перезапускаем snmpd. Но такой конфиг допустим только для хорошо изолированных локалок, а в идеале -- надо запустить snmpconf и правильно всё настроить.
Может быть другая ошибка
snmpwalk -v2c -cpublic localhost .1.3.6.1.4.1.9586.100.5
SNMPv2-SMI::enterprises.9586.100.5 = No Such Object available on this agent at this OID
Ищем другие номера или подключаем MIB. Или пробуем через несколько секунд, у меня такая ошибка была сразу после рестарта snmpd и до перезапуска keepalived (его перезапускать не обязательно, примерно через 15с он сам переподключится)
Можно менять некоторые значения, например перевести ноду в fault
Некоторые полезные значения
KEEPALIVED-MIB::vrrpInstanceTable - секции vrrp_instance
KEEPALIVED-MIB::vrrpSyncGroupState - секции vrrp_sync_group
KEEPALIVED-MIB::vrrpInstanceState - текущий статус: master, backup, fault
По интеграции с zabbix чуть есть тут:
https://mikerambling.wordpress.com/2016/10/14/monitoring-keepalived-with-snmp-on-ubuntu-14-04/
В global_defs можно вписать
!enable_traps for SNMP
enable_traps
для snmp traps
Комментариев нет:
Отправить комментарий