Linux ups nut snmp: различия между версиями
Sirmax (обсуждение | вклад) |
Sirmax (обсуждение | вклад) |
||
Строка 104: | Строка 104: | ||
На этом серверная часть +/- настроена, и можно переходить к настройке клиентской |
На этом серверная часть +/- настроена, и можно переходить к настройке клиентской |
||
− | =Сетевые клиенты= |
+ | =<code>NUT</code>Сетевые клиенты= |
+ | <PRE> |
||
+ | apt install nut-client |
||
+ | </PRE> |
||
+ | ==<code>/etc/nut/nut.conf</code>== |
||
+ | Одна строчка: |
||
+ | <PRE> |
||
+ | MODE=netclient |
||
+ | </PRE> |
||
+ | |||
+ | ==<code>/etc/nut/upsmon.conf</code>== |
||
+ | <PRE> |
||
+ | RUN_AS_USER root |
||
+ | MONITOR UPS6000XL@10.72.0.14:3493 1 upsmon pass master |
||
+ | |||
+ | MINSUPPLIES 1 |
||
+ | SHUTDOWNCMD "/sbin/shutdown -h +0" |
||
+ | |||
+ | POLLFREQ 1 |
||
+ | POLLFREQALERT 1 |
||
+ | HOSTSYNC 15 |
||
+ | DEADTIME 15 |
||
+ | |||
+ | POWERDOWNFLAG /etc/killpower |
||
+ | |||
+ | |||
+ | RBWARNTIME 43200 |
||
+ | NOCOMMWARNTIME 300 |
||
+ | FINALDELAY 5 |
||
+ | |||
+ | |||
+ | NOTIFYCMD /usr/sbin/upssched |
||
+ | NOTIFYFLAG ONLINE SYSLOG+WALL+EXEC |
||
+ | NOTIFYFLAG ONBATT SYSLOG+WALL+EXEC |
||
+ | NOTIFYFLAG LOWBATT SYSLOG+WALL+EXEC |
||
+ | NOTIFYFLAG FSD SYSLOG+WALL+EXEC |
||
+ | NOTIFYFLAG COMMOK SYSLOG+WALL+EXEC |
||
+ | NOTIFYFLAG COMMBAD SYSLOG+WALL+EXEC |
||
+ | NOTIFYFLAG SHUTDOWN SYSLOG+WALL+EXEC |
||
+ | NOTIFYFLAG REPLBATT SYSLOG+WALL+EXEC |
||
+ | NOTIFYFLAG NOCOMM SYSLOG+WALL+EXEC |
||
+ | NOTIFYFLAG NOPARENT SYSLOG+WALL+EXEC |
||
+ | </PRE> |
||
+ | тут остановлюсь подробнее: |
||
+ | RUN_AS_USER root |
||
+ | MONITOR UPS6000XL@10.72.0.14:3493 1 upsmon pass master |
||
+ | |||
+ | MINSUPPLIES 1 |
||
+ | SHUTDOWNCMD "/sbin/shutdown -h +0" |
||
+ | |||
+ | POLLFREQ 1 |
||
+ | POLLFREQALERT 1 |
||
+ | HOSTSYNC 15 |
||
+ | DEADTIME 15 |
||
+ | |||
+ | POWERDOWNFLAG /etc/killpower |
||
+ | |||
+ | |||
+ | RBWARNTIME 43200 |
||
+ | NOCOMMWARNTIME 300 |
||
+ | FINALDELAY 5 |
||
+ | |||
+ | |||
+ | NOTIFYCMD /usr/sbin/upssched |
||
+ | NOTIFYFLAG ONLINE SYSLOG+WALL+EXEC |
||
+ | NOTIFYFLAG ONBATT SYSLOG+WALL+EXEC |
||
+ | NOTIFYFLAG LOWBATT SYSLOG+WALL+EXEC |
||
+ | NOTIFYFLAG FSD SYSLOG+WALL+EXEC |
||
+ | NOTIFYFLAG COMMOK SYSLOG+WALL+EXEC |
||
+ | NOTIFYFLAG COMMBAD SYSLOG+WALL+EXEC |
||
+ | NOTIFYFLAG SHUTDOWN SYSLOG+WALL+EXEC |
||
+ | NOTIFYFLAG REPLBATT SYSLOG+WALL+EXEC |
||
+ | NOTIFYFLAG NOCOMM SYSLOG+WALL+EXEC |
||
+ | NOTIFYFLAG NOPARENT SYSLOG+WALL+EXEC |
Версия 14:49, 6 мая 2024
NUT + SNMP
Хочется тушить стойку после того как пропало питание, через 2 минуты (или любое другое время, в процессе настройки я его несколько раз уменьшал), при этом безперпебойник доступен по сети (SNMP)
Возможно настроить на каждом сервере отдельный экзкмпляр NUT или опрашивать по сети один
NUT
серверная часть
Driver (nut-driver.service
) ups.conf
Предельно простая настройка - нужно знать только адрес и community в файле ups.conf
[UPS6000XL] driver = snmp-ups port = 10.72.0.8 desc = "Smart-UPS RT 6000 RM XL" community = public snmp_version = v1 pollfreq = 15
community = public
заменить на актуальное значение
Сервер (nut-server.service
)nut.conf
upsd.conf
upsd.users
nut.conf
Тут настраивается режим сервера, в этом случае
MODE=netserver
upsd.conf
Так как предпологается что запрос будут приходить с других серверов, то нужно разрешить слушать на всех интерфейсах
LISTEN 0.0.0.0 3493
upsd.users
[admin] password = admin actions = SET instcmds = ALL
Проверка работы
Локально проверить можно так
upsc UPS6000XL@localhost
Init SSL without certificate database ambient.1.humidity.alarm.high: 60.00 ambient.1.humidity.alarm.low: 30.00 ambient.1.temperature.alarm.high: 40.00 ambient.1.temperature.alarm.low: 10.00 battery.charge: 49.00 battery.charge.restart: 0 battery.date: 02/07/15 battery.packs: 1.00 battery.runtime: 360.00 battery.runtime.low: 120 battery.voltage: 218.10 device.mfr: APC device.model: Smart-UPS RT 6000 RM XL device.serial: Q123 device.type: ups driver.name: snmp-ups driver.parameter.pollfreq: 15 driver.parameter.pollinterval: 2 driver.parameter.port: 10.72.0.8 driver.parameter.snmp_version: v1 driver.parameter.synchronous: no driver.version: 2.7.4 driver.version.data: apcc MIB 1.2 driver.version.internal: 0.97 input.frequency: 50.00 input.sensitivity: UNKNOWN input.transfer.high: 253 input.transfer.low: 161 input.transfer.reason: rateOfVoltageChange input.voltage: 213.10 input.voltage.maximum: 216.00 input.voltage.minimum: 210.20 output.current: 5.20 output.frequency: 50.00 output.voltage: 231.60 output.voltage.nominal: 230 ups.delay.shutdown: 20 ups.delay.start: 0 ups.firmware: 452.19.W ups.id: UPS_IDEN ups.load: 23.00 ups.mfr: APC ups.mfr.date: 07/07/14 ups.model: Smart-UPS RT 6000 RM XL ups.serial: QS1428270733 ups.status: OL ups.temperature: 18.40 ups.test.date: 04/13/2024 ups.test.result: Ok
На этом серверная часть +/- настроена, и можно переходить к настройке клиентской
NUT
Сетевые клиенты
apt install nut-client
/etc/nut/nut.conf
Одна строчка:
MODE=netclient
/etc/nut/upsmon.conf
RUN_AS_USER root MONITOR UPS6000XL@10.72.0.14:3493 1 upsmon pass master MINSUPPLIES 1 SHUTDOWNCMD "/sbin/shutdown -h +0" POLLFREQ 1 POLLFREQALERT 1 HOSTSYNC 15 DEADTIME 15 POWERDOWNFLAG /etc/killpower RBWARNTIME 43200 NOCOMMWARNTIME 300 FINALDELAY 5 NOTIFYCMD /usr/sbin/upssched NOTIFYFLAG ONLINE SYSLOG+WALL+EXEC NOTIFYFLAG ONBATT SYSLOG+WALL+EXEC NOTIFYFLAG LOWBATT SYSLOG+WALL+EXEC NOTIFYFLAG FSD SYSLOG+WALL+EXEC NOTIFYFLAG COMMOK SYSLOG+WALL+EXEC NOTIFYFLAG COMMBAD SYSLOG+WALL+EXEC NOTIFYFLAG SHUTDOWN SYSLOG+WALL+EXEC NOTIFYFLAG REPLBATT SYSLOG+WALL+EXEC NOTIFYFLAG NOCOMM SYSLOG+WALL+EXEC NOTIFYFLAG NOPARENT SYSLOG+WALL+EXEC
тут остановлюсь подробнее: RUN_AS_USER root MONITOR UPS6000XL@10.72.0.14:3493 1 upsmon pass master
MINSUPPLIES 1 SHUTDOWNCMD "/sbin/shutdown -h +0"
POLLFREQ 1 POLLFREQALERT 1 HOSTSYNC 15 DEADTIME 15
POWERDOWNFLAG /etc/killpower
RBWARNTIME 43200
NOCOMMWARNTIME 300
FINALDELAY 5
NOTIFYCMD /usr/sbin/upssched
NOTIFYFLAG ONLINE SYSLOG+WALL+EXEC
NOTIFYFLAG ONBATT SYSLOG+WALL+EXEC
NOTIFYFLAG LOWBATT SYSLOG+WALL+EXEC
NOTIFYFLAG FSD SYSLOG+WALL+EXEC
NOTIFYFLAG COMMOK SYSLOG+WALL+EXEC
NOTIFYFLAG COMMBAD SYSLOG+WALL+EXEC
NOTIFYFLAG SHUTDOWN SYSLOG+WALL+EXEC
NOTIFYFLAG REPLBATT SYSLOG+WALL+EXEC
NOTIFYFLAG NOCOMM SYSLOG+WALL+EXEC
NOTIFYFLAG NOPARENT SYSLOG+WALL+EXEC