OpenNMC: открытая замена дорогим сетевым картам для ИБП APC

Перевод статьи OpenNMC is an open replacement for expensive APC management cards — Jeff Geerling.
ИБП — обычно самая скучная часть домашней лаборатории, но от этого не менее важная. Одна из главных его задач — дать серверам время корректно выключиться, если пропало электричество. Другая — «причёсывать» питание, чтобы серверы работали стабильно.

APC Smart-UPS 2200 XL
Чтобы хорошо справляться и с тем и с другим, нужен умный интерфейс. У APC, по крайней мере, есть масса старых ИБП, которые работают с сетевыми картами управления (Network Management Card). На фото ниже — NMC 2, которую я вытащил из своего старого APC Smart-UPS 2200 XL (он на фото выше).

APC Network Management Card 2
Её сняли с производства в 2022 году, и если мне нужна поддержка, APC хочет продать мне обновлённую NMC 3, которая стоит почти 500 долларов!
Больше всего раздражает то, что всё это проприетарное — и железо, и софт. Протокол, который можно интегрировать почти с чем угодно, у карты есть, но прошивка наглухо закрыта. А раз я начал пользоваться NUT (Network UPS Tools), для мониторинга ИБП мне всё равно пришлось бы держать ещё один компьютер.
Но теперь это в прошлом. Я тестирую OpenNMC от NetCube Systems Austria. Прошивка у неё полностью открытая — то есть софт, который на ней работает, целиком в вашем распоряжении. В ней есть встроенный сервер NUT, она поддерживает горячую замену, как и карты APC, и даже умеет Wi-Fi, если он вам нужен!

OpenNMC от NetCube Systems Austria
Репозиторий прошивки OpenNMC уже выложен на GitLab, схемы железа тоже обещают опубликовать, но под какой лицензией — я пока не знаю. В их GitLab написано:
Файлы схемы, разводки платы и передней панели планируется опубликовать после того, как они будут приведены в порядок и протестированы, — с целью выпустить их как открытое аппаратное обеспечение.
Я снял короткое видео про карту для канала Level 2 Jeff: смотреть на YouTube.
Видео я пометил как спонсорское, потому что тестируемый прототип мне прислали NetCube Systems Austria. Я за него не платил, хотя ещё раньше записался на Crowd Supply, когда заметил проект на Reddit.
Установка OpenNMC#
Перейти на OpenNMC оказалось просто. Прямо на работающем ИБП я вытащил APC NMC 2 и вставил OpenNMC. Обе карты поддерживают горячую замену.
Я подключил свою по Ethernet, но в ней есть также встроенные Wi-Fi и Bluetooth — на случай, если сетевой кабель к задней стенке ИБП по какой-то причине не дотянуть.

OpenNMC в моём ИБП APC
Если и есть претензия к железу, то разве что светодиоды, по-моему, слишком яркие. Но если вас такое раздражает, у вас наверняка уже припасён набор затемняющих наклеек…
Для первоначальной настройки нужно подключиться к последовательному порту USB-C на задней панели и задать пароль администратора. После этого всем можно управлять через веб-интерфейс.
Это ИБП, так что ничего особо сложного тут нет, но все важные показатели собраны на странице Overview:

Обзорная страница веб-интерфейса
Есть ряд кнопок, чтобы запустить разные режимы самотестирования, выполнить калибровку после замены батарей или управлять нагрузкой ИБП:

Управление ИБП
Полное управление можно открыть и через встроенный сервер NUT. Я проверил это на предсерийной прошивке: нашёлся один баг, из-за которого часть клиентских программ не работала, но к старту кампании на Crowd Supply его должны исправить.
Окончательной цены я пока не знаю (обновлю пост, когда кампания стартует), но даже если карта будет стоить ровно столько же, сколько фирменная карта APC, оно того стоит: вы получаете встроенный NUT и открытую прошивку.