Apcupsd: различия между версиями

Материал из wiki.nntc.nnov.ru
Перейти к навигации Перейти к поиску
(Новая страница: «=Настройка apcupsd на ОС Альт= ==Я точно знаю, что оно должно работать, но не работает. Почему?=…»)
 
(Я точно знаю, что оно должно работать, но не работает. Почему?)
Строка 22: Строка 22:
  
 
у пользователя, в зависимости от квалификации и опыта, может уйти от одного дня до ... бесконечности...
 
у пользователя, в зависимости от квалификации и опыта, может уйти от одного дня до ... бесконечности...
 +
 +
 +
==Как всё сделать как надо?==
 +
 +
===1. Отключаем сервис, чтобы он больше не занимал порт===
 +
 +
systemctl stop getty@ttyS0
 +
systemctl disable getty@ttyS0
 +
 +
===2. Поставить apcupsd===
 +
 +
apt-get update && apt-get install -y apcupsd
 +
 +
===3. Настроить и включить сервис на порту /dev/ttyS0===
 +
 +
 +
==А если хочется в zabbix?==
 +
 +
===Скачать шаблон и импортировать в свою версию Zabbix===
 +
 +
Качать [https://github.com/zabbix/community-templates/tree/main/Power_(UPS)/APC/template_apcupsd отсюда]
 +
 +
Однако, сразу данные в этот шаблон приходить не будут, т.к. шаблон определяет только переменные для получения их от zabbix-агента.
 +
 +
А сам процесс настройки пользовательских переменных для zabbix-агента заботливо описан по некоторой ссылке, которая отсутствует в свободном доступе...
 +
 +
===Настраиваем zabbix-agent===
 +
 +
Если ещё не установлен:
 +
 +
apt-get update && apt-get install -y zabbix-agent
 +
 +
После установки в корректно настроенном агенте файл
 +
 +
/etc/zabbix/zabbix_agentd.conf
 +
 +
должен содержать такие раскоментированные параметры:
 +
 +
LogFile=/var/log/zabbix/zabbix_agentd.log
 +
Server=%SERVER_ADDR%
 +
Hostname=%ZABBIX_AGENT_HOSTNAME%
 +
Include=/etc/zabbix/zabbix_agentd.conf.d/*.conf
 +
 +
, где
 +
 +
%SERVER_ADDR%
 +
 +
это ip или домен сервера zabbix, а
 +
 +
%ZABBIX_AGENT_HOSTNAME%
 +
 +
это хостовое имя системы, на которой настраивается zabbix-agent.
 +
 +
===Добавляем пользовательские параметры===
 +
 +
Просто бросьте это к консоль:
 +
 +
<pre>
 +
cat << 'EOF' > /etc/zabbix/zabbix_agentd.conf.d/userparameter_apcupsd.conf
 +
UserParameter=UPSNAME,/sbin/apcaccess|awk '/^(UPSNAME).*:/ {print $3}'
 +
UserParameter=STATUS,/sbin/apcaccess|awk '/^(STATUS).*:/ {print $3,$4,$5}'
 +
UserParameter=ITEMP,/sbin/apcaccess|awk '/^(ITEMP).*:/ {print $3}'
 +
UserParameter=LOADPCT,/sbin/apcaccess|awk '/^(LOADPCT).*:/ {print $3}'
 +
UserParameter=NUMXFERS,/sbin/apcaccess|awk '/^(NUMXFERS).*:/ {print $3}'
 +
UserParameter=BCHARGE,/sbin/apcaccess|awk '/^(BCHARGE).*:/ {print $3}'
 +
UserParameter=SENSE,/sbin/apcaccess|awk '/^(SENSE).*:/ {print $3}'
 +
UserParameter=LINEV,/sbin/apcaccess|awk '/^(LINEV).*:/ {print $3}'
 +
EOF
 +
</pre>

Версия 16:33, 18 декабря 2023

Настройка apcupsd на ОС Альт

Я точно знаю, что оно должно работать, но не работает. Почему?

Потому что по умолчанию порт

/dev/ttyS0

занят сервисом

getty@ttyS0

, который задействует этот порт (обычно, единственный на сервере com-порт) для вывода туда программы

login

Чтобы, например, не держать монитор для сервера а зацепляться за консоль по гипертерминалу.

Отличное решение, но чтобы понять почему на нужный для обмена с UPS порт не происходит должным образом подключение посредством сервиса

apcupsd

у пользователя, в зависимости от квалификации и опыта, может уйти от одного дня до ... бесконечности...


Как всё сделать как надо?

1. Отключаем сервис, чтобы он больше не занимал порт

systemctl stop getty@ttyS0
systemctl disable getty@ttyS0

2. Поставить apcupsd

apt-get update && apt-get install -y apcupsd

3. Настроить и включить сервис на порту /dev/ttyS0

А если хочется в zabbix?

Скачать шаблон и импортировать в свою версию Zabbix

Качать отсюда

Однако, сразу данные в этот шаблон приходить не будут, т.к. шаблон определяет только переменные для получения их от zabbix-агента.

А сам процесс настройки пользовательских переменных для zabbix-агента заботливо описан по некоторой ссылке, которая отсутствует в свободном доступе...

Настраиваем zabbix-agent

Если ещё не установлен:

apt-get update && apt-get install -y zabbix-agent

После установки в корректно настроенном агенте файл

/etc/zabbix/zabbix_agentd.conf

должен содержать такие раскоментированные параметры:

LogFile=/var/log/zabbix/zabbix_agentd.log
Server=%SERVER_ADDR%
Hostname=%ZABBIX_AGENT_HOSTNAME%
Include=/etc/zabbix/zabbix_agentd.conf.d/*.conf

, где

%SERVER_ADDR%

это ip или домен сервера zabbix, а

%ZABBIX_AGENT_HOSTNAME%

это хостовое имя системы, на которой настраивается zabbix-agent.

Добавляем пользовательские параметры

Просто бросьте это к консоль:

cat << 'EOF' > /etc/zabbix/zabbix_agentd.conf.d/userparameter_apcupsd.conf 
UserParameter=UPSNAME,/sbin/apcaccess|awk '/^(UPSNAME).*:/ {print $3}'
UserParameter=STATUS,/sbin/apcaccess|awk '/^(STATUS).*:/ {print $3,$4,$5}'
UserParameter=ITEMP,/sbin/apcaccess|awk '/^(ITEMP).*:/ {print $3}'
UserParameter=LOADPCT,/sbin/apcaccess|awk '/^(LOADPCT).*:/ {print $3}'
UserParameter=NUMXFERS,/sbin/apcaccess|awk '/^(NUMXFERS).*:/ {print $3}'
UserParameter=BCHARGE,/sbin/apcaccess|awk '/^(BCHARGE).*:/ {print $3}'
UserParameter=SENSE,/sbin/apcaccess|awk '/^(SENSE).*:/ {print $3}'
UserParameter=LINEV,/sbin/apcaccess|awk '/^(LINEV).*:/ {print $3}'
EOF