Как настроить новый ИБП APC для Linux Debian 10 HPC

Вопрос или проблема

У нас есть кластер на Linux Debian 10. Мы хотим подключить его к новым ИБП (APC), чтобы обеспечить защиту кластеров от отключения электроэнергии.

Однако APC предложил установить программное обеспечение PowerChute. В отличие от этого, данное программное обеспечение совместимо только с RedHat Linux Enterprise и SuSe Linux Enterprise.

Я нашёл службу apcupsd, которая может быть использована в качестве альтернативы. У нас есть подключение NIS в соответствии с рекомендациями apcupsd.

Ошибка, полученная после настройки:
введите описание изображения здесь
Тем не менее, я не понимаю, куда следует вставить IP-адрес кластера и как настроить дальнейшую связь между кластером и ИБП?

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

Спасибо

Я всегда использовал программное обеспечение “Network UPS Tools”: nut-client, nut-server, nut-cgi и несколько других в наши дни. Оно работает с многими марками ИБП.

Вам нужно разделить это на несколько частей.

Предполагая, что этот ИБП совместим с apcupsd и имеет USB-порт…

Во-первых, вам нужна одна машина, подключенная к USB-порту ИБП. На этой машине настройте связь с USB-портом

например

UPSCABLE usb
UPSTYPE usb
DEVICE

(да, запись устройства пустая; демон автоматически находит USB-соединение).

Теперь вы должны иметь возможность запустить apcupsd на этой машине, и он должен работать. apcaccess должен показать некоторые полезные данные

APC      : 001,038,0997
DATE     : 2024-10-07 13:30:09 -0400
HOSTNAME : myhostname
VERSION  : apcupsd_version
UPSNAME  : myhostname
CABLE    : USB Cable
DRIVER   : USB UPS Driver
UPSMODE  : Stand Alone
STARTTIME: 2024-08-18 08:37:30 -0400
MODEL    : Back-UPS XS 1500M
STATUS   : ONLINE

Если эта часть не работает, значит, либо ваше соединение плохое, либо ИБП не поддерживает удалённый мониторинг, либо у вас есть какая-то другая проблема.

Когда это будет работать тогда вы сможете начать изучение стороны NIS.

Сначала настройте эту машину как NIS-сервер:

NETSERVER on
NISIP 0.0.0.0
NISPORT 3551

Перезапустите сервер, и вы должны увидеть, что он слушает.

% ss -an | grep 3551
tcp   LISTEN 0      5                                                                            0.0.0.0:3551             0.0.0.0:*

Теперь вы можете настроить другие машины для связи с этой

UPSNAME yourUPSname
UPSCABLE ether
UPSTYPE net
DEVICE remoteserverIPaddress

NETSERVER on
NISIP 0.0.0.0
NISPORT 3551

Запустите apcupsd на клиенте, и apcaccess должен показать соединение

UPSNAME  : remoteservername
CABLE    : Ethernet Link
DRIVER   : NETWORK UPS Driver

Вы можете добавить много клиентов, и все они могут общаться с одним сервером.

По крайней мере, это работает для меня!

ПРИМЕЧАНИЕ: это по своей сути не “кластер”, потому что ИБП может подключаться только к одной машине через USB, таким образом, у вас есть одна точка отказа (что если эта машина выйдет из строя?), и IP-адрес является адресом этой единственной машины.

Ответ или решение

Чтобы настроить новый ИБП APC для работы с кластером на базе Linux Debian 10, вам нужно пройти несколько шагов. Поскольку PowerChute несовместим с вашей системой, мы используем apcupsd в качестве альтернативы. Вот подробная инструкция по настройке.

Шаг 1: Установка apcupsd

Установите apcupsd на машине, которая будет напрямую подключена к ИБП по USB. Используйте следующие команды:

sudo apt update
sudo apt install apcupsd

Шаг 2: Настройка apcupsd

Отредактируйте конфигурационный файл /etc/apcupsd/apcupsd.conf, чтобы он выглядел следующим образом:

UPSNAME myUPS
UPSCLASS standalone
UPSCABLE usb
UPSTYPE usb
DEVICE

Здесь UPSNAME — это название вашего ИБП, а остальные параметры настроены для USB-подключения.

Шаг 3: Запуск сервиса apcupsd

Запустите и проверьте статус сервиса:

sudo systemctl start apcupsd
sudo systemctl enable apcupsd
systemctl status apcupsd

После этого используйте команду apcaccess для получения информации об ИБП:

apcaccess

Убедитесь, что вы видите информацию о статусе ИБП, такую как уровень заряда и состояние.

Шаг 4: Настройка NIS (Network Information Service)

Для связи между вашим кластером и ИБП (через одну подключенную машину) нужно настроить NIS. Вам необходимо сделать одну из машин NIS-сервером.

  1. На машине с подключенным ИБП:

    Отредактируйте файл конфигурации /etc/default/nis и включите следующие параметры:

    NISSERVER=true

    Также вам нужно будет убедиться, что следующие строки присутствуют в конфигурации:

    NETSERVER on
    NISIP 0.0.0.0
    NISPORT 3551

    Перезапустите NIS-сервер:

    sudo systemctl restart nis

    Убедитесь, что сервер слушает на порту 3551:

    ss -an | grep 3551
  2. На других машинах кластера:

    Отредактируйте файл /etc/apcupsd/apcupsd.conf, добавив следующие настройки:

    UPSNAME yourUPSname
    UPSCABLE ether
    UPSTYPE net
    DEVICE remoteserverIPaddress

    Здесь remoteserverIPaddress — это IP-адрес той машины, на которую подключен ИБП.

    Также добавьте в настройки NIS:

    NETSERVER on
    NISIP 0.0.0.0
    NISPORT 3551

Шаг 5: Запуск apcupsd на клиентских машинах

Запустите apcupsd также на клиентских машинах:

sudo systemctl start apcupsd

Проверьте соединение с помощью apcaccess:

apcaccess

Вы должны увидеть информацию о ИБП, включая UPSNAME, CABLE, и DRIVER, которая подтверждает, что связь установлена правильно.

Важно

Обратите внимание, что данная конфигурация создает единую точку отказа: если машина с подключенным ИБП выйдет из строя, весь кластер не сможет отслеживать состояние ИБП. Если это критично для вашей инфраструктуры, возможно, следует рассмотреть настройку резервного ИБП или использование другого программного обеспечения, например NUT (Network UPS Tools), которое позволяет более гибко управлять несколькими ИБП в сети.

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

Оцените материал
Добавить комментарий

Капча загружается...