Linux ups nut snmp: различия между версиями

Материал из noname.com.ua
Перейти к навигацииПерейти к поиску
Строка 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