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

Мониторинг БП с локальным IPMI и Nagios

Я хотел бы использовать 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.

Например:

  • check_ipmi может работать на localhost, используя ipmitool
  • check_ipmi.py также localhost, используя free-ipmi

Нет причин анализировать данные IPMI. Требуется поток ЦП для чтения и поток для синтаксического анализа, а если вы масштабируете системы размера центра обработки данных, тысячи серверов имеют много потоков. Вместо этого используйте API, java (Vrx или Hemi) или библиотеку C (ipmitool или freeipmi) для прямого доступа к данным IPMI. Центры обработки данных (40 тыс. Серверов) могут считывать 6 миллионов датчиков IPMI в минуту, и создание потоков становится ограничивающим фактором.

Преимущество API заключается в том, что сообщается об ошибках передачи данных по шине IPMB, так как шина занята или имеет аппаратную ошибку проникновения, и вы можете решить повторить попытку получения данных.