ИБП на сервере умного дома — это первое, что покупают все после первого серьёзного отключения электроэнергии. Автор XDA, чей ИБП так и не спас автоматизацию Home Assistant, обнаружил то, что многие знают: один ИБП даёт всего несколько минут. Убедиться, что ваша автоматизация пережит отключение — это отдельная задача, требующая небольшого набора приложений вокруг Home Assistant, которые многие пропускают. Мы протестировали семь приложений, которые вместе превращают отключение электроэнергии в доме из катастрофы в небольшое неудобство.
На что обратить внимание при выборе стека обеспечения стойкости
Ценность — не в одном приложении. Это то, как они работают вместе. Обратите внимание на эти характеристики при выборе компонентов.
- Взаимодействует с вашим ИБП по USB или SNMP без проприетарных драйверов
- Передаёт состояние в Home Assistant через события (
ups.on_battery), а не просто числовые датчики - Автоматизация пережи́вает холодный перезапуск всего сервера без ручного включения
- Место для просмотра того, что сработало и что не сработало, дни спустя после отключения
- Обновления прошивки, которые не требуют доступа в интернет в момент, когда они нужны
- Резервная копия конфигурации Home Assistant, которую полное отключение питания не может повредить
Быстрое сравнение
| Приложение | Лучше всего для | Бесплатный план | Выдающаяся особенность |
|---|---|---|---|
| NUT | Сетевое управление ИБП на разных устройствах | Да | Один ИБП, много клиентов |
| apcupsd | Оборудование APC без SNMP | Да | Надёжно работает с USB APC |
| Node-RED | Сложная автоматизация при отключении | Да | Визуальные потоки, которые переживают изменения |
| ESPHome | DIY узлы мониторинга питания | Да | Локальная прошивка для датчиков |
| InfluxDB | Долгосрочная история питания | Да | Специализированное хранилище временных рядов |
| Grafana | Анализ постфактум | Да | Лучшие панели для данных об отключении |
| Watchtower | Обновление контейнеров после восстановления | Да | Поддерживает стек актуальным после перезагрузки |
Приложения
1. NUT (Network UPS Tools) — лучший для совместного ИБП
Network UPS Tools — эталонная реализация для взаимодействия с ИБП по сети. Один сервер запускает демон против физического ИБП, а каждая другая машина в локальной сети (Home Assistant, NAS, маршрутизатор, который может снизить нагрузку) подключается как клиент. Интеграция NUT в Home Assistant предоставляет процент батареи, нагрузку и статус как датчики и, что важно, генерирует событие в тот момент, когда ИБП переходит на батарею.
Где это отстаёт: Конфигурация текстовая и старомодная. Первоначальная настройка на Raspberry Pi занимает пару часов, чтобы всё настроить правильно.
Платформы: Linux, macOS, FreeBSD. Работает в контейнере на любой установке Home Assistant OS.
Цена: Бесплатно, GPL-2.0.
Скачать: networkupstools.org
Вывод: Установите это в первую очередь. Каждая автоматизация в стеке использует его события статуса.
2. apcupsd — лучший для оборудования APC через USB
apcupsd — более компактный демон, ориентированный на ИБП APC на USB. Его проще настроить, чем NUT на одной машине, и он интегрируется с Home Assistant через лёгкий датчик. Многие модели APC Back-UPS надёжно работают с ним после лет поддержки Linux.
Где это отстаёт: Он работает только с APC. Пользователям Cyberpower, Eaton или Tripp Lite следует посмотреть на NUT.
Платформы: Linux, macOS, Windows. Docker образы широко доступны.
Цена: Бесплатно, GPL-2.0.
Скачать: apcupsd.org
Вывод: Правильный выбор, когда ИБП это APC и установка на одной машине.
3. Node-RED — лучший для сложных сценариев отключения
Node-RED — это то, к чему тянутся опытные пользователи Home Assistant, когда “если X, то Y” недостаточно. Сценарий отключения может разветвляться в зависимости от процента батареи: при 50 процентах выключить несущественные светильники; при 25 процентах уведомить членов семьи; при 10 процентах выполнить hassio.shutdown. Визуальные потоки хорошо работают с diff и переживают реорганизацию.
Где это отстаёт: Два способа построить одну и ту же автоматизацию (автоматизация Home Assistant vs Node-RED) вызывает расхождение, если в доме несколько редакторов.
Платформы: Add-on внутри Home Assistant OS или Docker на любом хосте.
Цена: Бесплатно, Apache 2.0.
Скачать: nodered.org
Вывод: Правильный выбор для автоматизации отключения с более чем двумя ветвями.
4. ESPHome — лучший для DIY мониторинга питания
ESPHome создаёт прошивку для дешёвых плат ESP32, которые отправляют данные в Home Assistant. Трансформаторное кольцо на главной линии, умная розетка с Sonoff POWR3 или узел напряжения батареи — все это занимает около часа пайки. Результат — локальная прошивка, которая продолжает передавать после перезапуска маршрутизатора.
Где это отстаёт: Теперь вы производитель. Обновления прошивки и замену батареек вы должны делать сами.
Платформы: Прошивка для ESP32 и ESP8266. Запускается из add-on Home Assistant.
Цена: Бесплатно, GPL-3.0 и MIT части.
Скачать: esphome.io
Вывод: Правильный выбор, когда нужна видимость питания за пределами того, что сообщает ИБП.
5. InfluxDB — лучшее хранилище для истории питания
InfluxDB хранит поток датчиков от ИБП, трансформаторных колец и самого Home Assistant. Долгосрочное хранение превосходит собственный рекордер Home Assistant, и запрос “последние шесть отключений по продолжительности” становится однострочником. Версия 2.x достаточно стабильна и зрела для установки дома.
Где это отстаёт: Потребление памяти значительное; Raspberry Pi почувствует это, если окно хранения большое.
Платформы: Docker на любом хосте, встроённо на Linux, macOS, Windows.
Цена: Бесплатная версия с открытым исходным кодом. Управляемые облачные уровни начинаются с 250 долларов в месяц.
Скачать: influxdata.com
Вывод: Правильный выбор, когда хотите видеть, как тренды отключений менялись в течение года.
6. Grafana — лучшие панели для постфактум анализа
Grafana превращает поток InfluxDB в панели, которые делают отключения понятными. Одна панель, показывающая процент батареи, нагрузку, наружную температуру и события перезапуска Home Assistant, подскажет вам, почему определённая автоматизация не сработала. Это инструмент, который может прочитать электрик, что важно, когда семья спорит о том, что произошло.
Где это отстаёт: Хорошее редактирование панелей требует времени. Изучение достаточного количества Flux или PromQL — это проект.
Платформы: Docker на любом хосте, встроённые версии для всех основных ОС.
Цена: Бесплатная версия OSS. Управляемый облачный уровень имеет бесплатный план.
Скачать: grafana.com
Вывод: Установите её сразу после InfluxDB, иначе данные значительно менее полезны.
7. Watchtower — лучший для поддержки стека в актуальном состоянии после восстановления
Watchtower смотрит на выбранные контейнеры и загружает обновления по расписанию. Это важно здесь, потому что стек, который вернулся из отключения на устаревших образах, более вероятно столкнётся с той же ошибкой, которую кто-то исправил на прошлой неделе. Ограничив ПО поддерживающим контейнерам Home Assistant, это поддерживает окружающий стек в свежем состоянии, не касаясь самого Home Assistant Core.
Где это отстаёт: Автоматическое обновление чего-либо критичного по важности — риск само по себе. Разумно его ограничьте.
Платформы: Docker на Linux, Windows, macOS.
Цена: Бесплатно, Apache 2.0.
Скачать: containrrr.dev/watchtower
Вывод: Правильный выбор для вспомогательных компонентов; оставьте Home Assistant Core для ручных обновлений.
Как выбрать правильный стек
- Все начинают с демона ИБП. NUT, если на ИБП подключено больше одного устройства, apcupsd, если ИБП это APC и только сервер подключен к нему.
- Добавьте Node-RED, когда логика отключения выходит за пределы одного условия.
- Слоем добавьте InfluxDB и Grafana вместе, чтобы сделать отключения понятными после этого.
- Добавьте ESPHome для всего, что ИБП не может видеть (ответвления цепи, отдельные приборы).
- Включите Watchtower для вспомогательных контейнеров, чтобы стек после отключения не был музеем.
Часто задаваемые вопросы
Почему одного ИБП недостаточно для поддержания работы автоматизации Home Assistant? ИБП держит сервер включённым. Если ваш маршрутизатор, коммутаторы или координатор Zigbee потеряют питание одновременно, автоматизация не достанет ничего. Поместите сеть на ИБП и убедитесь, что Home Assistant знает, что сеть работает, прежде чем действовать.
Какую интеграцию ИБП установить в первую очередь? Начните с интеграции Home Assistant NUT, как только NUT будет запущен. Он предоставляет как датчики, так и события, которые нужны вам для автоматизации.
Как протестировать автоматизацию отключения без отключения вилики из розетки? NUT и apcupsd оба поддерживают команду “имитировать батарею”. Запустите её и смотрите, что сработает.
Нужна ли отдельная машина для InfluxDB и Grafana? Нет. Обе удобно работают рядом с Home Assistant на Raspberry Pi 5 или маленьком мини-ПК. Окна хранения — это главное, что нужно настроить.
Должен ли я автоматически отключать Home Assistant при низком заряде батареи?
Да, и убедитесь, что это произойдёт до того, как ОС запаникует. Скрипт отключения NUT и сервис hassio.host_shutdown Home Assistant это обрабатывают чистым способом.
Какая единственная наиболее полезная автоматизация отключения? Уведомление, которое включает процент батареи и расчётное время работы, отправляемое через пять секунд после того, как ИБП сообщит “работает от батареи”. Это даёт всем в доме время сохранить открытую работу.