Я хотел бы использовать Nagios для мониторинга избыточных блоков питания на моих серверах (под управлением Debian Wheezy).
Я управлял sensors-detect
сценарий в lm-sensors
пакет, и единственное, что он может найти, это
Driver `ipmisensors':
* ISA bus, address 0xca2
Chip `IPMI BMC KCS' (confidence: 8)
Затем я установил freeipmi-tools
, и я могу получить полезный результат от ipmi-sensors
:
$ sudo ipmi-sensors --group='Power Supply'
5: Power Supply 1 (Power Supply): [Presence detected]
6: Power Supply 2 (Power Supply): [Presence detected]
7: Power Supplies (Power Supply): [Fully Redundant]
Я могу написать плагин Nagios для запуска ipmi-sensors
локально проанализировать его вывод и предупредить, если он изменится, но я не хочу полагаться на тот же формат вывода, и я не могу понять, как получить более машиночитаемый вывод.
Я смотрел на check_ipmi_sensor, но похоже, что он работает только там, где устройство IPMI доступно в сети; мой нет.
Есть ли лучший способ, чем анализ вывода ipmi-sensors
?
В Nagios Exchange есть еще несколько плагинов для IPMI. Это (иногда) лучшее место для поиска, чем Google.
Например:
ipmitool
free-ipmi
Нет причин анализировать данные IPMI. Требуется поток ЦП для чтения и поток для синтаксического анализа, а если вы масштабируете системы размера центра обработки данных, тысячи серверов имеют много потоков. Вместо этого используйте API, java (Vrx или Hemi) или библиотеку C (ipmitool или freeipmi) для прямого доступа к данным IPMI. Центры обработки данных (40 тыс. Серверов) могут считывать 6 миллионов датчиков IPMI в минуту, и создание потоков становится ограничивающим фактором.
Преимущество API заключается в том, что сообщается об ошибках передачи данных по шине IPMB, так как шина занята или имеет аппаратную ошибку проникновения, и вы можете решить повторить попытку получения данных.