В этом посте расскажу о новом и не совсем обычном источнике бесперебойного питания, который на днях удалось основательно пощупать. Но сначала небольшая предыстория.
Купить ИБП для домашнего сервера я собирался давно, но постоянно душила жаба. То есть, особой необходимости в нём не было, просто как-то не по-людски без бесперебойника. В конце-концов, купил дешёвый Ippon Backpower Pro 500 и уселся настраивать. Погуглив пару минут, решил, что официальные драйвера, написанные на java лохматого года выпуска, мне не нравятся и взялся прикручивать NUT.
Настроил. Заработало. Одно «но» — вражеский девайс упорно не желал выключать питание с нагрузки.
В условиях ограниченного бюджета небольшой компании, скромный терминальный сервер 2003 получал бесперебойное электричество от Ippon Smart Winner 1500, который управлялся стандартной утилитой. Не могу чего-то сильно плохого сказать про этот ИБП и его монструозную утилиту управления с анимацией тока. Гудит вполне на свои деньги.
Со временем, windows пришлось обременить парой виртуальных машин Vmware, а парк пополнился парой небольших линуксовых серверов с АТС, Jabber и прочими офисными радостями. Соответственно, возникло желание тоже управлять их питанием от Ippon, ибо заявлена поддержка *nix.
Длинный комментарий к посту, в котором автор рассказал как мониторить ippon smart winner с помощью apcupsd. На мой взгляд это не правильное решение. В комментариях всплывал вопрос про NUT и я был удивлен, что никто не рассказал про работающее решение. Будем исправлять.
Часть первая: NUT
На самом деле NUT очень даже работает с представителями семейства smart winner от Ippon. И с InnovaRT тоже работает.
Возникла необходимость в мониторинге зоопарка ИБП, в наличии были Ippon, Powercom и Krauler. В качестве средства мониторинга использован Zabbix.
Естественно, задачу необходимо было решить 1) дешево 2) еще дешевле, поэтому вариант с SNMP модулями был отвергнут сразу. Было решено использовать соединение по serial портам, благо имелся опыт разработки к Ippon и APC. К слову сказать к APC на вторичном рынке есть SNMP модули по вменяемой цене, а вот к недорогим ИБП я смог найти только новые модули по цене 11-20 тыс. рублей.
В ходе работы были поставлены следующие дополнительные задачи:
найти и проверить кабели для подключения каждого ИБП, ибо таковые в комплекте отсутствовали
Реализовать некий модуль, который бы с одной стороны имел интерфейс RS-232 и понимал протокол обмена данными с каждым ИБП, а с другой — имел сетевой интерфейс и мог отправлять данные в виде zabbix_trapper.
Протестировать модель сбора и передачи данных, части кода, а также формат данных.
В ходе реализации второго и третьего пункта хотелось собрать в одном месте все данные, которые бы в будущем позволили реализовать отдельное устройство на м/к.