Я пытаюсь настроить snmpd на моих хостах CentOS для отслеживания использования свободного диска в процентах.
Если я установил snmpd.conf в
disk /
disk /var
, значения могут быть запросами с
1.3.6.1.4.1.2021.9.1.1.1 для "/" и
1.3.6.1.4.1.2021.9.1.1.2 для "/ var".
У меня есть несколько серверов, на которых нет отдельного раздела «/ var». Таким образом, структура диска не стандартизирована. Я выяснил, что порядок операторов disk в snmpd.conf определяет номер dskIndex результата запроса snmp. Итак, если бы я перевернул "/" и "/ var", "/" имел бы dskIndex 2.
В моей системе мониторинга мне пришлось бы настраивать каждый OID для каждого сервера отдельно, потому что они могут быть разными. Итак, идея состоит в том, чтобы иметь заполнители для несуществующих файловых систем.
Возможно ли иметь заполнители для искусственного подсчета dskIndex или как-то влиять на dskIndex вручную в snmpd.conf?
заранее спасибо
Я не знаю, как изменить dskIndex вручную, но snmpd использует порядок, определенный в файле snmpd.conf, поэтому он предсказуем.
Если вы ищете другое решение, читайте выше:
snmpd предоставляет информацию об индексе диска, если вы опросите oid: 1.3.6.1.2.1.25.2.3.1.3, система вернет список доступных дисков, например:
$ snmpwalk -v 2c -c public 127.0.0.1 1.3.6.1.2.1.25.2.3.1.3
iso.3.6.1.2.1.25.2.3.1.3.1 = STRING: "Physical memory"
iso.3.6.1.2.1.25.2.3.1.3.3 = STRING: "Virtual memory"
iso.3.6.1.2.1.25.2.3.1.3.6 = STRING: "Memory buffers"
iso.3.6.1.2.1.25.2.3.1.3.7 = STRING: "Cached memory"
iso.3.6.1.2.1.25.2.3.1.3.8 = STRING: "Shared memory"
iso.3.6.1.2.1.25.2.3.1.3.10 = STRING: "Swap space"
iso.3.6.1.2.1.25.2.3.1.3.31 = STRING: "/"
iso.3.6.1.2.1.25.2.3.1.3.32 = STRING: "/sys/fs/fuse/connections"
iso.3.6.1.2.1.25.2.3.1.3.33 = STRING: "/dev"
iso.3.6.1.2.1.25.2.3.1.3.35 = STRING: "/media/KINGSTON"
последняя цифра - это индекс, поэтому вы можете запросить размер раздела / следующим образом:
snmpwalk -v 2c -c общедоступный 127.0.0.1 1.3.6.1.2.1.25.2.3.1.5.31 год
iso.3.6.1.2.1.25.2.3.1.5.31 = ЦЕЛОЕ: 37458759
Я не знаю, какую систему мониторинга вы используете, но прочтите этот сценарий check_snmp_storage.pl, сценарий perl извлекает индексную таблицу с помощью SNMP и запрашивает только правильный OID. Он работает для nagios, возможно, вы сможете адаптировать его для другой системы.