Настройка NUT (Network UPS Tools) в FreeBSD. Автовыключение сервера при разряде UPS

Network UPS Tools - набор программ, обеспечивающие интерфейс для мониторинга и управления источниками бесперебойного питания. NUT может в случае разряда батареи UPS корректно выключать сервер, позволяет мониторить текущее состояние UPS.

Установка Nut:

# cd /usr/ports/sysutils/nut
# make config

Отмечаем нужные опции (интерфейс подключения ups к серверу).

# make install clean


После установки нужно найти для нашего ибп в списке поддерживаемого оборудования - /usr/local/etc/nut/driver.list
Имеется ибп Ippon Smart Power Pro 1000 и он подключен через com-порт.

Конфиги nut находятся тут - /usr/local/etc/nut/

ups.conf - базовые настройки NUT (имя, порт, драйвер).
upsd.conf - настройка демона upsd.
upsd.users - профили пользователей.
upsmon.conf - настройка агента.

ups.conf - настройки подключения UPS.

# имя
[ippon1000]
# драйвер из /usr/local/etc/nut/driver.list
driver = blazer_ser
# порт, к которому подключен UPS
port = /dev/ttyu0
# описание UPS
desc = "Ippon smart power pro 1000"

# опционально
default.battery.voltage.high = 26
default.battery.voltage.low = 20.80
ondelay = 7
offdelay = 6

upsd.conf

LISTEN 127.0.0.1 3493 # ip адрес и порт для прослушивания подключений
MAXAGE 15 # Период обновления данных
MAXCONN connections 1024

upsd.users

[admin]
password = pass
actions = SET
instcmds = ALL
upsmon master

upsmon.conf - основные настройки nut

MONITOR ippon1000@localhost 1 admin pass master
MINSUPPLIES 1
SHUTDOWNCMD "/sbin/shutdown -p now"

POLLFREQ 5 # частота опроса UPS
POLLFREQALERT 5
HOSTSYNC 15
DEADTIME 15
POWERDOWNFLAG /etc/killpower

RBWARNTIME 43200 # предупреждение замены батареи
NOCOMMWARNTIME 300
FINALDELAY 5 # через сколько минут выключить сам ИБП после отключения сервера

Стартуем nut:

# /usr/local/etc/rc.d/nut start

Проверим состояние ИБП:

# upsc ippon1000@localhost

# Прописываем в /etc/rc.conf строчки для автозагрузки:

nut_enable="YES"
nut_upslog_enable="YES"
nut_upsmon_enable="YES"
nut_upslog_ups="ippon1000@localhost"

Протестируем нашу систему. Инициируем падении мощности в ИБП:

# upsmon -c fsd

Если сервер выключится - всё нормально.

Примечания:
1. Хочу заметить, что с помощью nut нельзя задать время, через которое выключится сервер после падения электричества. То есть бесперебойник сначала разрядится, а потом даст команду о выключении.
2. Права доступа на порт, к которому подключен ИБП должны быть для пользователя uucp и группой wheel. Изменить владельца порта/устройства можно так:

# chown uucp:wheel /dev/ttyu0

После перезагрузки эти права слетят и ничего работать не будет. Поэтому добавим следующие строки в /usr/local/etc/rc.d/nut после #!/bin/sh:

chown uucp:wheel /dev/ttyu0

Настройка NUT (Network UPS Tools) в FreeBSD. Автовыключение сервера при разряде UPS: 2 комментария

  1. -> < выключится сервер после падения электричества. То есть бесперебойник сначала -> разрядится, а потом даст команду о выключении.>>

    Хочу заметить, уже таки можно!

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

Ваш e-mail не будет опубликован. Обязательные поля помечены *