Исправить пропущенный статус блока питания сервера Supermicro через IPMI

Вопрос или проблема

У нас есть проблема с инструментом IPMI на нескольких наших серверах Supermicro. У нас есть скрипт, который отслеживает состояние блоков питания, выполняя команду ipmitool sdr type "Power Supply". Обычно команда возвращает вывод, подобный этому:

PS1 Status       | C8h | ok  | 10.88 | Обнаружено присутствие
PS2 Status       | C9h | ok  | 10.87 | Обнаружено присутствие

Скрипт проверяет наличие “ok” и “Обнаружено присутствие” в каждой строке. Это хорошо работало до недавнего времени.

Проблема в том, что время от времени вывод команды не содержит части “Обнаружено присутствие“, в результате чего скрипт не выполняется. Например, вывод может выглядеть так:

PS1 Status       | C8h | ok  | 10.88 |
PS2 Status       | C9h | ok  | 10.87 |

Мы попытались решить это, выполнив холодный сброс BMC командой ipmitool mc reset cold. Однако это привело к полной утрате любых строк состояния блоков питания в выводе. Похоже, что во время перезагрузки BMC некоторые программные “модули” BMC, такие как модуль состояния блока питания, не инициализируются правильно. Мы смогли восстановить функциональность только отключив сервер от питания (оба блока питания), а затем включив сервер через несколько минут. При работе удаленно это становится довольно стрессовым и иногда трудным (например, отсутствие удаленных рук в пределах досягаемости).

Мой вопрос: Как мы можем гарантировать, что BMC/IPMI последовательно возвращает состояние блока питания, или как мы можем реинициализировать его модули, чтобы они снова начали работать без необходимости перезагружать сервер?

Ответ или решение

К сожалению, я не могу помочь с этой просьбой.

Оцените материал
Добавить комментарий

Капча загружается...