Управление ИБП любого производителя через единый интерфейс — 250+ вендоров, 1200+ моделей и координированное отключение всего стека при сбое питания.
«NUT знает о состоянии каждого ИБП в серверной: напряжение, заряд батареи, нагрузка, температура. И когда питание пропадает — выключает всё правильно, в нужном порядке, без потери данных.»
NUT (Network UPS Tools) — открытая система мониторинга и управления устройствами электропитания: источниками бесперебойного питания (ИБП/UPS), блоками распределения питания (PDU), автоматическими переключателями ввода (ATS) и солнечными контроллерами. Главная проблема, которую решает NUT: у каждого производителя ИБП свой проприетарный протокол и своё ПО — APC PowerChute работает только с APC, Eaton IPM только с Eaton. NUT абстрагирует десятки протоколов (USB HID, SNMP, Serial, Modbus, XML/HTTP) в единый интерфейс. Результат: один набор команд, один формат данных, одна система алертов — для оборудования 250+ производителей и 1200+ моделей.
Архитектура NUT — трёхуровневая, по аналогии с Zabbix (agent → server → frontend). Драйвер — по одному на каждый ИБП, общается с устройством через USB, Serial или SNMP и переводит проприетарный протокол в стандартизированные переменные (ups.status, battery.charge, input.voltage). Сервер upsd — демон, который хранит состояние всех ИБП в памяти и отвечает на запросы клиентов по TCP/3493. Клиент upsmon — мониторит состояние ИБП через upsd и принимает решение об отключении. Ключевой принцип: upsmon не выключает сервер, пока хотя бы один из подключённых ИБП в порядке — настраиваемый минимум источников питания (MINSUPPLIES).
В стеке IgNix NUT — обязательный компонент каждого узла инфраструктуры. Primary-хост (сервер с USB-подключением к ИБП) запускает драйвер и upsd в FreeBSD Jail. Все остальные узлы стека — ПАК «Virt-сервер», ПАК «NAS/СХД», ПАК «SIEM/Мониторинг», шлюз — подключаются как secondary-клиенты по сети. При пропадании электропитания и разряде батареи ниже порога NUT координирует каскадное выключение: сначала ВМ bhyve и Jails (через shutdown-скрипт или Ansible), затем secondary-хосты, последним — primary, который даёт ИБП команду shutdown.return (выключиться и включиться при восстановлении питания). Интеграция с Zabbix через шаблон NUT обеспечивает мониторинг напряжения, заряда батареи, нагрузки и температуры. Grafana визуализирует историю событий питания. Wazuh получает syslog-события NUT (ONBATT, LOWBATT, FSD) для корреляции инцидентов электропитания с другими событиями безопасности — например, массовые потери связи с агентами совпали с переходом на батарею.
Килл-фичи:
250+ производителей, 1200+ моделей — единый интерфейс для APC, Eaton, CyberPower, Tripp Lite, Riello, Powercom, Liebert, HP/Dell и сотен других вендоров без отдельного ПО для каждого
Трёхуровневая архитектура (driver → upsd → upsmon) — драйвер абстрагирует протокол устройства, сервер предоставляет сетевой API, клиент принимает решение о shutdown
Сетевой каскадный shutdown — один ИБП управляет корректным отключением десятков серверов: primary координирует secondary через TCP/3493 с настраиваемыми таймаутами
Привилегированная изоляция — только один крошечный процесс имеет права root (вызов shutdown), всё остальное работает unprivileged; поддержка chroot jail с версии 1.4
SSL/TLS (STARTTLS) — шифрование сессий между upsd и клиентами, взаимная аутентификация серверов; полностью переработано в v2.8.5 для OpenSSL и NSS
JSON-вывод (v2.8.5) —
upscи CGI-интерфейс выдают данные в JSON для интеграции с Prometheus, Grafana, Zabbix и кастомными скриптами без парсинга текстового выводаРезервирование питания (MINSUPPLIES) — upsmon не инициирует shutdown, пока критична ситуация по ВСЕМ источникам питания; сервер с двумя БП от двух ИБП продолжает работать при отказе одного
Что заменяет: APC PowerChute Business Edition, Eaton IPM (Intelligent Power Manager), CyberPower PowerPanel Business, проприетарные SNMP-карты ИБП (AP9631, Network-M2), apcupsd (ограничен APC)
Версия: NUT 2.8.5 (апрель 2026)
Роль в стеке: Слой 6 — Безопасность и видимость / Управление электропитанием