Не так давно, привезли товарищу на работу UPS Mustek 1000 для поддержки FreeBSD сервера по питанию.

Попросил он меня помочь ему настроить управление и логирование этой УПСки.
Самым первым что пришло в голову — это была утилита NUT (Network UPS Tools), которая отлично работает с mustek UPS.

Итак, процедура установки не хитрая:


# cd /usr/ports
# make search name=nut
..........
Port: nut-2.4.1_1
Path: /usr/ports/sysutils/nut
Info: Network UPS Tools
Maint: ports@FreeBSD.org
B-deps: autoconf-2.62 autoconf-wrapper-20071109 expat-2.0.1 gettext-0.17_1 gmake-3.81_3 libiconv-1.13.1 m4-1.4.13,1 neon28-0.28.6 net-snmp-5.4.2.1_6 perl-5.8.9_3 pkg-config-0.23_1
R-deps: expat-2.0.1 gettext-0.17_1 libiconv-1.13.1 neon28-0.28.6 net-snmp-5.4.2.1_6 perl-5.8.9_3 pkg-config-0.23_1
WWW: http://www.networkupstools.org/
...........................
Port: nut-2.2.2
Path: /usr/ports/sysutils/nut22
Info: Network UPS Tools
Maint: ports@FreeBSD.org
B-deps: autoconf-2.62 autoconf-wrapper-20071109 expat-2.0.1 gettext-0.17_1 gmake-3.81_3 libiconv-1.13.1 m4-1.4.13,1 neon28-0.28.6 net-snmp-5.4.2.1_6 perl-5.8.9_3 pkg-config-0.23_1
R-deps: expat-2.0.1 gettext-0.17_1 libiconv-1.13.1 neon28-0.28.6 net-snmp-5.4.2.1_6 perl-5.8.9_3 pkg-config-0.23_1
WWW: http://www.networkupstools.org/
....................
# cd /usr/ports/sysutils/nut
# make install clean

[X] SERIAL SERIAL support
[X] USB USB support
[X] SNMP SNMP support
[X] NEON NEON XML/HTTP support
[X] PDU Powerman PDU support
[X] HAL HAL support
[ ] IPV6 IPV6 support
[X] CGI Web CGI interface

«Ок»

И после инсталляции приступаем к настройкам:


#echo 'nut_enable="YES"' >> /etc/rc.conf
#echo 'nut_upslog_enable="YES"' >> /etc/rc.conf
#echo 'nut_upsmon_enable="YES"' >> /etc/rc.conf
# cd /usr/local/etc/nut/
# ls -l
ups.conf.sample upsd.conf.sample upsd.users.sample upsmon.conf.sample upssched.conf.sample
# cp ups.conf.sample ups.conf
# cp upsd.conf.sample upsd.conf
# cp upsd.users.sample upsd.users
# cp upsmon.conf.sample upsmon.conf

ups.conf – настройки UPS драйвера
upsd.conf — настройки главного UPS демона
upsd.users – файл контроля доступа UPS демона
upsmon.conf — настройки UPS демона монитора
upssched.conf.sample — настройки для upssched демона

Наш Mustek подключен к серверу по com порту, поэтому конфиг для драйвера будет такой:


#cat ups.conf
[Mustek]
driver = megatec
port = /dev/cuad0

upsd.conf — я не трогал, но в нём можно настроить на какой адрес откликаться демону, например:
(LISTEN 10.10.1.1 3493), в моём случае файл upsd.conf, выглядет так:

# cat upsd.conf
MAXAGE 15
LISTEN 127.0.0.1 3493
MAXCONN 1024

мой upsd.users, выглядет так:

# cat upsd.users
[Mustek]
password = upska
upsmon master

Настраиваем монитор:

# mcedit upsmon.conf и доводим до вида:
MONITOR Mustek@localhost 1 Mustek upska master
MINSUPPLIES 1
SHUTDOWNCMD "/sbin/shutdown -h +0"
POLLFREQ 5
POLLFREQALERT 5
HOSTSYNC 15
DEADTIME 15
POWERDOWNFLAG /etc/killpower
RBWARNTIME 43200
NOCOMMWARNTIME 300
FINALDELAY 5

где в строке MONITOR Mustek@localhost 1 Mustek upska master,
Mustek@localhost — это имя хоста к которому обращается демон, Mustek — имя упс в конфиге upsd.users, upska — пароль в том же конфиге и master — указывает на то что он ведущий.
PS. Если вы подключаете другие серверы к этой упске и контроль по включению и выключению проводится через этот сервер, то на других серверах должна быть запись вида:
MONITOR Mustek@10.10.1.1 1 Mustek upska slave

Далее, нужно перепроверить файлы запуска монитора и логирования в /usr/local/etc/rc.d/.
nut_upslog.sh
nut_upsmon.sh

мне пришлось исправлять в строках
nut_upslog_ups и nut_upsmon_flags в соответствующих файлах, на «Mustek@localhost».

после чего стартуем демонов:


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

И проверяем:


# upsc Mustek@localhost | grep status
ups.beeper.status: enabled
ups.status: OL
# upsc Mustek@localhost | grep bat
battery.charge: 95.0
battery.voltage: 13.50
battery.voltage.nominal: 12.0
# upsc Mustek@localhost | grep voltage
battery.voltage: 13.50
battery.voltage.nominal: 12.0
input.voltage: 225.4
input.voltage.fault: 225.4
input.voltage.maximum: 243.5
input.voltage.minimum: 197.2
input.voltage.nominal: 220.0
output.voltage: 225.4
# tail /var/log/ups.log
20100129 145553 97.5 225.8 12.0 [OL] 25.0 50.1
20100129 150053 97.5 229.4 9.0 [OL] 25.0 50.1
20100129 150553 95.0 227.2 9.0 [OL] 25.0 50.1
20100129 151053 95.0 224.1 9.0 [OL] 25.0 49.9

Ну и всё, теперь остается проверить выключится ли сервер, когда батарея уже почти сядет и начнёт пищать.. Для этого выдергиваем шнурок с UPS и ждем..

Напоминаю всем копирующим мой контент о существовании закона "Об авторском праве".
В связи с этим, прошу во избежании конфликтов при копировании данного материала, ставить на него ссылку:

http://noted.org.ua/?p=832


Также, вы можете отблагодарить меня переслав любую сумму на любой кошелек WebMoney, для поддержания данного ресурса. Или просто админу на пиво ;)

Кошельки для получения благодарности:
R386985788805
U234140473141
Z147712360455

На данной странице нет комментариев, возможно они закрыты. Если Вы хотите оставить свой комментарий, перейдите на специально созданный раздел

Add your comment now

You must be logged in to post a comment.