CentOS 7 APC UPS Daemon | Apcupsd

标签: none

UPS-Uninterrupted Power System. 利用电池化学能作为后备能量,在市电断电等电网故障时,不间断地为用户设备提供(交流)电能的一种能量转换装置。

购买ups
在购买ups的时候尽量购买在线式的ups.
后备式的是模拟正弦波/方波 (不推荐x,没钱还是用这个吧
在线式是正弦波 (价格贵,推荐使用

官方没有给Linux 配套的守护程序, Apcupsd是一个社区维护的项目.

Apcupsd安装及配置文件

ups配给了一条是USB+串口的电缆。我们使用这条电缆将ups和服务器相连接。

安装usb工具及Apcupsd

># yum install libusbx libusb usbutils
# lsusb 这里可以检查 UPS的usb有没有被识别
># lsusb
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 005: ID 051d:0002 American Power Conversion Uninterruptible Power Supply
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

#usb-devices 这个可以展示usb的详细信息
># usb-devices
T:  Bus=01 Lev=01 Prnt=01 Port=13 Cnt=01 Dev#=  5 Spd=12  MxCh= 0
D:  Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1
P:  Vendor=051d ProdID=0002 Rev=00.90
S:  Manufacturer=American Power Conversion
S:  Product=Back-UPS RS 1500G FW:878.L5 .I USB FW:L5
S:  SerialNumber=********
C:  #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=2mA
I:  If#= 0 Alt= 0 #EPs= 1 Cls=03(HID  ) Sub=00 Prot=00 Driver=usbhid

># yum install apcupsd

配置部分

vim /etc/apcupsd/apcupsd.conf
#用于将UPS连接到计算机的电缆类型。采用USB接口
UPSCABLE usb
#拥有的apcups类型, DEVICE留空它会自动识别
UPSTYPE usb
DEVICE
#每60秒轮询一次UPS状态
POLLTIME 60
#Apcupsd为指定目录中的串行或USB端口创建一个锁文件。
LOCKFILE /var/spool/lock
#Apccontrol和事件脚本所在的目录。
SCRIPTDIR /usr/local/etc/apcupsd
#POWERFAIL和NOLOGIN文件放到/var/run(实际上并不需要)
PWRFAILDIR /var/run
NOLOGINDIR /var/run
#等待6秒才开始真正的ONBATTERY操作:如果电源只是短暂地发生瞬断则不做反应。
ONBATTERYDELAY 6
#当停电导致电池剩余容量低于8%时,立即执行关机操作。默认值为5
BATTERYLEVEL 8
#当停电导致剩余容量低于3分钟时,立即执行关机操作。
MINUTES 3
#0 禁止按掉电时间为关机判断条件。发生电源故障后,apcupsd将在指定的秒数过期后关闭系统。
TIMEOUT 0
#指定请求登录用户从系统注销的广播消息之间的时间(以秒为单位)。仅当UPS使用电池运行时,此计时器才会启动。每5分钟(300s)警告一次登录的用户系统发生掉电。
ANNOY 300
#首次掉电后1分钟(60s)告知登录的用户发生掉电。
ANNOYDELAY 60
#禁止在掉电时阻止用户登录。
NOLOGON disable
#禁止apcupsd关闭电源。
KILLDELAY 0
#启用NIS服务(提供让munin收集的UPS数据)。
NETSERVER on
#NIS服务监听127.0.0.1:3551。
NISIP 127.0.0.1
NISPORT 3551
#在 /var/log/apcupsd.events 中记录"事件"。
EVENTSFILE /var/log/apcupsd.events
EVENTSFILEMAX 1024
#设置ups的模式,我们主要用主从模式
UPSCLASS standalone
#设置为“禁用”以进行正常的独立操作,指示您正在禁用Share-UPS接口扩展器支持。
UPSMODE disable
STATTIME 0
STATFILE /var/log/apcupsd.status
LOGSTATS off
DATATIME 0
FACILITY DAEMON
SENSITIVITY H
#UPS在供电恢复后等待60秒再恢复对设备的供电。
WAKEUP 60
LOWBATT 02
#每两周进行一次自检。
SELFTEST 336

配置完了需要重启Apcupsd服务,设置开机启动.

systemctl restart apcupsd
systemctl enable apcupsd

使用 apcaccess 检查是否正常运行

APC      : 001,038,0986
DATE     : 2019-02-21 17:22:55 +0800
HOSTNAME : NAS
VERSION  : 3.14.14 (31 May 2016) redhat
UPSNAME  : UPS-Network
CABLE    : USB Cable
DRIVER   : USB UPS Driver
UPSMODE  : Stand Alone
STARTTIME: 2019-01-16 21:31:05 +0800
MODEL    : Back-UPS RS 1500G
STATUS   : ONLINE
LINEV    : 236.0 Volts
LOADPCT  : 26.0 Percent
BCHARGE  : 100.0 Percent
TIMELEFT : 25.0 Minutes
MBATTCHG : 10 Percent
MINTIMEL : 6 Minutes
MAXTIME  : 0 Seconds
SENSE    : Medium
LOTRANS  : 176.0 Volts
HITRANS  : 294.0 Volts
ALARMDEL : 30 Seconds
BATTV    : 27.2 Volts
LASTXFER : Automatic or explicit self test
NUMXFERS : 4
XONBATT  : 2019-02-16 08:34:11 +0800
TONBATT  : 0 Seconds
CUMONBATT: 67 Seconds
XOFFBATT : 2019-02-16 08:34:21 +0800
LASTSTEST: 2019-02-16 08:34:11 +0800
SELFTEST : NO
STATFLAG : 0x05000008
SERIALNO : ******
BATTDATE : 2017-11-08
NOMINV   : 230 Volts
NOMBATTV : 24.0 Volts
NOMPOWER : 865 Watts
FIRMWARE : 878.L5 .I USB FW:L5
END APC  : 2019-02-21 17:23:00 +0800

APC UPS Daemon unter CentOS 7.x
Centos7下ups监控apcupsd的使用
配合 APC BE550G UPS 的 apcupsd 配置


扫描二维码,在手机上阅读!

添加新评论