tm

   Статейка о настройке мониторинга ИБП APC Smart-UPS 1000, подключённого по USB к серверу, на базе ОС Ubuntu 14. ИБП подключён к серверу на котором установлен CACTI, поэтому данные получать будем не по SNMP. Начнём!

   В перувую очередь устанавливаем пакеты для работы с ИБП APC.

apt-get install apcupsd apcupsd-cgi

Это необходимо для получения информации о параметрах напряжения и других значениях. После установки идём к конфигурационный файл. Ниже я приведу только те параметры, которые изменил. Более подробное описание параметров можно прочитать в оригинальном файле конфигурации или на просторах.

nano /etc/apcupsd/apcupsd.conf
UPSNAME UPS-1000-VA   #Имя устройства.

UPSCABLE usb   #Тип кабеля для подключения ИБП к компьютеру.

UPSTYPE usb   #Что-то вроде вышестоящего параметра.

DEVICE   #Значение оставляем пустое.

POLLTIME 60   #Интервал в сек. для опроса ИБП демоном apcupsd.

BATTERYLEVEL 5   #При заряде ниже 5% инициируется отключение системы.

TIMEOUT 0   #Отключаем поминутный таймер отключения системы.

NETSERVER on   #Включаем NET сервер.

NISIP 127.0.0.1   #IP адрес.

NISPORT 3551   #Порт на котором работает демон

EVENTSFILE /var/log/apcupsd.events   #Путь к логам.

SENSITIVITY H   #Чувствительность на максимум.

LOTRANSFER  208   #MIN значение входящего напряжения при котором ИБП переходит на батареи.

HITRANSFER 229   #MAX значение входящего напряжения при котором ИБП переходит на батареи.

BEEPSTATE N   #Отключаем пищалку!

OUTPUTVOLTS 225   #Выходное напряжение при работе от батарей.

SELFTEST ON   #Самодиагностика при включении ИБП.

 

 

Перед тем, как проверять работоспособность, нужно изменить значение параметра ISCONFIGURED на yes в файле /etc/default/apcupsd и запустить:

/etc/init.d/apcupsd start

Прповерить работоспособность ПО можно командой:

apcaccess

В ответ должны получить что-то вроде:

apcaccess
APC      : 001,044,1111
DATE     : 2016-10-12 19:44:44 +0700
HOSTNAME : mail
VERSION  : 3.14.10 (13 September 2011) debian
UPSNAME  : UPS-1000-VA
CABLE    : USB Cable
DRIVER   : USB UPS Driver
UPSMODE  : Stand Alone
STARTTIME: 2016-10-11 10:00:49 +0700
MODEL    : Smart-UPS 1000
STATUS   : ONLINE
LINEV    : 218.8 Volts
LOADPCT  :  11.7 Percent Load Capacity
BCHARGE  : 100.0 Percent
TIMELEFT :  97.0 Minutes
MBATTCHG : 5 Percent
MINTIMEL : 3 Minutes
MAXTIME  : 0 Seconds
OUTPUTV  : 218.8 Volts
SENSE    : High
DWAKE    : -01 Seconds
DSHUTD   : 090 Seconds
LOTRANS  : 208.0 Volts
HITRANS  : 253.0 Volts
RETPCT   : 000.0 Percent
ITEMP    : 34.2 C Internal
ALARMDEL : No alarm
BATTV    : 27.3 Volts
LINEFREQ : 50.0 Hz
LASTXFER : Low line voltage
NUMXFERS : 2
XONBATT  : 2016-10-12 17:11:18 +0700
TONBATT  : 0 seconds
CUMONBATT: 870 seconds
XOFFBATT : 2016-10-12 17:25:45 +0700
SELFTEST : NO
STESTI   : Power On
STATFLAG : 0x07000008 Status Flag
MANDATE  : 2005-10-08
SERIALNO : AS0xxxx25099
BATTDATE : 2016-09-01
NOMOUTV  : 230 Volts
NOMBATTV :  24.0 Volts
FIRMWARE : 652.12.I USB FW:4.2
END APC  : 2016-10-12 19:45:16 +0700

 Одной из возможных причин получения ошибки Connection refused при выполнении команды apcaccess может быть прописаный в конфиге ip адрес по-умолчанию параметра NISIP - 127.0.0.1. Для решения проблемы необходимо исправить на 0.0.0.0.

   Отлично, половина дела сделана. Приступаем к загрузке скрипта для парсинга, нужных нам значений, полученных от вывода команды apcaccess и шаблонов. Скрипт и один шаблон доработаны для работы в Ubuntu и убран пересчёт значения температуры ИБП из цельсия в фаренгейты. Изначально было так, что на графике точки откладывались в пересчёте на фаренгейты, а в легенде значения были в цельсиях. Как-то не по 風水 =) Далее как обычно - файл query_apcupsd.php помещаем в /usr/share/cacti/site/scripts/, а шаблоны импортируем через web-интерфейс. Далее в меню устройства, в разделе Associated Graph Templates добавляем наши шаблоны.

Далее идём в раздел Create Graphs for this Host и в разделе Graph Templates отмечаем наши шаблоны и создаём наши графики, нажав кнопку Create.

 

Это всё.

   Если шаблон был взяты на просторах интернета, то отменить конвертацию в фаренгейты можно в разделе Console -> Graph Management -> CDEF's -> Celsius to Fahrenheit, изменив значение Item #2 как на скриншоте:

 

И, следите за своим здоровьем!

 

Комментарии отключены