APCUPSd

APCUPSd (APC UPS Daemon) — пакет программ для управления ИБП фирмы APC.

Работ под управлением Linux и MS Windows (в том числе 64-битные версии1) ), MacOS X.

http://www.apcupsd.org/

В пакет входят следующие программы:

Поля о состоянии устройства (Status Report Fields)

Мониторинг в Zabbix

Установка

apt-get install apcupsd

Дополнительно можно установить документацию и APC UPS Power Management (web interface):

apt-get install apcupsd-doc apcupsd-cgi

Настройка

FIXME

User Manual

Файл: /etc/apcupsd/apcupsd.conf

Здесь приведены переменные для настройки управления ИБП при аварии питания, ни одна из этих переменных не является обязательной. Но если вы используете ИБП с упрощенной системой команд (dumb) он не определяет низкий заряд батареи и поэтому нужно задать значение для переменной TIMEOUT которая используется для выключения системы.

BATTERYLEVEL

Уровень заряда батарей в процентах (%).

Если указано значение BATTERYLEVEL, то во время отключения электроэнергии, apcupsd выдаст команду на завершение выключение системы, когда уровень заряда батареи упадет ниже заданного значения.

Значение по умолчанию: 5

Значение для отключения этого параметра: -1

Этот параметр игнорируется для простых ИБП (не имеющих расширенной сигнализации).

MINUTES

Время работы от батарей, в минутах.

Если указано значение MINUTES, то во время отключения электроэнергии, apcupsd выдаст команду на завершение выключение системы, когда оставшиеся время работы от батарей (рассчитанное ИБП) будет меньше заданного времени.

Значение по умолчанию: 3

Расчетное время работы от батарей TIMELEFT может быть получено в результате выполнения команды apcaccess

Если значение равно нулю или неправдоподобное, то ИБП, вероятно, сломан.

Значение для отключения этого параметра: -1

Этот параметр игнорируется для простых ИБП (не имеющих расширенной сигнализации).

Следует отметить, что некоторые могут выдавать неверное значение, когда аккумулятор полностью заряжен.

TIMEOUT

Время в секундах.

После отключения электропитания, apcupsd будет остановить систему, когда заданное в этом параметре время в секундах, уже истекло.

Чтобы отключить этот параметр установите его значение -1

Обычно для всех моделей Smart UPS и простых ИБП с кабелями, которые поддерживают индикация разряда батарей, это должно быть нулю, так что время завершения работы будет зависеть от уровня заряда аккумулятора (BATTERYLEVEL) и/или времени работы от батарей (MINUTES), либо в случае напряжения сигнализации ИБП, когда батарея исчерпан.

Эта команда необходима для простых (не имеющих расширенной сигнализации ИБП), которые не обеспечивают выдачу сигнала полного разряда аккумулятора (для них только тестирование может определить этот момент).

Для получения дополнительной информации см. apctest.

Этот таймер может быть также полезно, если вы хотите, чтобы некоторые рабом машины остановки до другой машины для экономии энергии батареи. Это также полезно для тестирования apcupsd потому что вы можете заставить быстрого выключения, установив небольшой стоимости (например 60) и потянув за вилку к ИБП.

TIMEOUT, BATTERYLEVEL, and MINUTES can be set together without problems. apcupsd will react to the first case or test that is valid. Normally SmartUPS users will set TIMEOUT to zero so that the system is shutdown depending on the percentage battery charge remaining (BATTERYLEVEL) or the remaining battery runtime (MINUTES).

ANNOY

Время в секундах.

Время в секундах между сообщениями запрашивающей зарегистрированным пользователям выйти системы при отключении питания.

Этот счётчик запускается только тогда, когда ИБП работает от батареи.

Значение по умолчанию это 300 секунд (5 минут).

По умолчанию, отправить сообщение на системную консоль в системах Unix и всплывающее сообщение в MS Windows.

Значение ANNOYDELAY должно быть больше ANNOY, с тем чтобы получить слишком частые сообщения.

ANNOYDELAY

Время в секундах.

Время задержки в секундах перед тем, как apcupsd начнёт рассылать подключённым пользователям предложение выйти из системы. Этот таймер запускается только после того, ИБП работает от батареи. Этот таймер сбрасывается, когда внешнее питание возобновляется. Значение по умолчанию составляет 60 секунд. Таким образом, первое предупреждение, чтобы выйти из системы происходит после 60 секунд работы от батарей, при условии, что NOLOGON не установлен, чтобы отключить.

DEVICE

Имя устройства.

Например для Com 1 значение: /dev/ttyS0

UPSCABLE

Тип интерфейса.

ТипНазначение
apcsmartстандартный RS-232 кабель APC
usbспециализированный??? кабель USB от APC
net (виртуальная заглушка. Означает, что на самом деле информацию об ИБП можно считать по сети. Очень удобно, когда к одному ИБП подключено несколько серверов)

Пример

/etc/apcupsd/apcupsd.conf
## apcupsd.conf v1.1 ##
UPSNAME UPS_NAME
UPSCABLE 940-0024C
UPSTYPE apcsmart
DEVICE /dev/ttyS0
POLLTIME 60
LOCKFILE /var/lock
SCRIPTDIR /etc/apcupsd
PWRFAILDIR /etc/apcupsd
NOLOGINDIR /etc
ONBATTERYDELAY 6
BATTERYLEVEL 5
MINUTES 10
TIMEOUT 0
ANNOY 300
ANNOYDELAY 60
NOLOGON disable
KILLDELAY 0
NETSERVER on
NISIP 0.0.0.0
NISPORT 3551
EVENTSFILE /var/log/apcupsd.events
EVENTSFILEMAX 10
UPSCLASS sharemaster
UPSMODE disable
STATTIME 600
STATFILE /var/log/apcupsd.status
LOGSTATS off
DATATIME 0
#FACILITY DAEMON

FIXME

/etc/apcupsd/apcupsd.conf
UPSTYPE apcsmart
UPSTYPE net
DEVICE SERVER:3551

После настройки:

1. Вносим изменения в файл

/etc/default/apcupsd
ISCONFIGURED=yes

2. Запускаем

service apcupsd start

Подключение по USB

Проверено на Back-UPS CS 350

Использование

apcaccess

Zabbix

Отслеживание состояния ИБП через apcupsd Zabbix сервером.

Template APCUPSd

Ссылка на Share.Zabbix.com

Переменные:

  • Имя
  • Текущий статус
  • Уровень заряда батареи
  • Внутренняя температура
  • Напряжение на входе
  • Уровень нагрузки
  • Уровень чувствительности
  • Количество переходов на питание от батареи с момента запуска apcupsd

Работает через Zabbix агент, ниже приведены настройки для различных ОС:

Linux

/etc/zabbix/zabbix_agentd.conf.d/userparameter_apcupsd.conf
UserParameter=UPSNAME,cat /var/log/apcupsd.status|awk '/^(UPSNAME).*:/ {print $3}'
UserParameter=STATUS,cat /var/log/apcupsd.status|awk '/^(STATUS).*:/ {print $3,$4,$5}'
UserParameter=ITEMP,cat /var/log/apcupsd.status|awk '/^(ITEMP).*:/ {print $3}'
UserParameter=LOADPCT,cat /var/log/apcupsd.status|awk '/^(LOADPCT).*:/ {print $3}'
UserParameter=NUMXFERS,cat /var/log/apcupsd.status|awk '/^(NUMXFERS).*:/ {print $3}'
UserParameter=BCHARGE,cat /var/log/apcupsd.status|awk '/^(BCHARGE).*:/ {print $3}'
UserParameter=SENSE,cat /var/log/apcupsd.status|awk '/^(SENSE).*:/ {print $3}'
UserParameter=LINEV,cat /var/log/apcupsd.status|awk '/^(LINEV).*:/ {print $3}'

MS Windows

В этом примере использован Gawk 3.1.6.

c:\zabbix\conf\userparameter_apcupsd.win.conf
UserParameter=UPSNAME,type c:\apcupsd\etc\apcupsd\apcupsd.status|c:\programs\bin\awk "/^(UPSNAME).*:/ {print $3}"
UserParameter=STATUS,type c:\apcupsd\etc\apcupsd\apcupsd.status|c:\programs\bin\awk "/^(STATUS).*:/ {print $3,$4,$5}"
UserParameter=ITEMP,type c:\apcupsd\etc\apcupsd\apcupsd.status|c:\programs\bin\awk "/^(ITEMP).*:/ {print $3}"
UserParameter=LOADPCT,type c:\apcupsd\etc\apcupsd\apcupsd.status|c:\programs\bin\awk "/^(LOADPCT).*:/ {print $3}"
UserParameter=NUMXFERS,type c:\apcupsd\etc\apcupsd\apcupsd.status|c:\programs\bin\awk "/^(NUMXFERS).*:/ {print $3}"
UserParameter=BCHARGE,type c:\apcupsd\etc\apcupsd\apcupsd.status|c:\programs\bin\awk "/^(BCHARGE).*:/ {print $3}"
UserParameter=SENSE,type c:\apcupsd\etc\apcupsd\apcupsd.status|c:\programs\bin\awk "/^(SENSE).*:/ {print $3}"
UserParameter=LINEV,type c:\apcupsd\etc\apcupsd\apcupsd.status|c:\programs\bin\awk "/^(LINEV).*:/ {print $3}"

Ссылки

1) С версии 3.14.9, подробнее: http://www.apcupsd.org/wordpress/apcupsd-3-14-9-released/
apcupsd/apcupsd.txt · Последние изменения: 2018-12-13 09:43 — GreyWolf
 
За исключением случаев, когда указано иное, содержимое этой вики предоставляется на условиях следующей лицензии: CC Attribution-Noncommercial-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki