Универсальные платы управления ИБП - Инматикс ПСУ Спутник : Импортозамещение здорового человека

Universal UPS Network Management Card Inmatics-PSU Sputnik for APC Smart UPS and Impuls ForvardВ данной обзорной статье мы рассмотрим универсальные платы управления ИБП "ПСУ Спутник", выпускаемые под торговой маркой "Инматикс" на производственной базе российской компании ООО "НПО РПС" ("Научно-производственное объединение разработки промышленных систем"). Эту продукцию мы будем рассматривать как серьёзную альтернативу и антипод низкокачественным образцам импортозамещения.

Для начала расскажу небольшую предысторию о том, как мы вообще пришли к использованию ПСУ Спутник. Так исторически сложилось, что в рамках примыкающего к моим зонам ответственности парка оборудования основная масса ИБП относится к торговой марке APC by Schneider Electric. В былые времена вендор отличался довольно демократичной политикой распространения части своего базового ПО и обновлений микрокода для разных типов оборудования. Но с некоторых пор "эффективные менеджеры", которые точно не смотрели советский мультик про жадного раджу и золотую антилопу, захотели больше денег и началось…

Сначала для ПО APC PCNS (PowerChute Network Shutdown), которое всегда было бесплатным дополнением к дорогостоящим ИБП и платам управления APC и использовалось для штатного выключения хостовых ОС, в последних релизах предпоследней 4 ветки было объявлено о том, что для работы ПО на хостах виртуализации теперь требуется купить лицензию. А уже начиная с 5 ветки обновления стало понятно то, что теперь это полностью и безусловно платный продукт. Разумеется, это вызвало бурную реакцию клиентов этого бренда. Фактически, последней бесплатной версией под Windows/Linux стала 4.4.1, да и та содержала в себе проблемы, связанные с уязвимостью Apache Log4j, которую дополнительно предлагалось лечить лишь костылями. При этом обновлённая версия 4.5 с исправленной уязвимостью уже предлагалась только держателям звонкой монеты. Стало очевидно, что дальнейшая перспектива использования крайней бесплатной версии PCNS в любой инфраструктуре со временем будет нести дополнительные риски ИБ, так как обновляться это ПО не будет.

Следующим "звоночком" стало то, что после очередного обновления микрокода плат управления APC NMC3 (Network Management Card 3) до версии 2.5.0.6, мы обнаружили в веб-интерфейсе управления баннер, сообщающий о том, что дальнейшие обновления микрокода будут доступны только на платной основе.

APC Smart-UPS witn AP9641 : v2.5.x is the last NMC3 firmware version that will be available without an NMC3 Support Contract. Support Contracts provide access to new features, enhancements, and security updates

Читать комментарии негодующих клиентов на подобную политику вендора это отдельный вид развлечения:

APC changed its microcode distribution policy

 

Ещё одним сопутствующим явлением стало то, что с сайта Schneider Electric (www.se.com) из раздела поддержки, где раньше всегда можно было загрузить самые актуальные версии ПО и микрокода, исчезли все ссылки на файлы. Попытки поиска файлов теперь ведут к немногословному документу о том, что требуется "денюжка" за доступ к соответствующему контенту. Странно в этой ситуации только то, что на сайте APC некоторые файлы всё ещё доступны для загрузки. Хотя, возможно, это лишь вопрос времени.

В общем на фоне происходящего, особенно с учётом влияния санкционной политики, стало очевидно, что получение актуальных версий ПО и микрокода от APC с исправлениями обнаруженных уязвимостей теперь будет настоящей проблемой. В поисках вариантов разрешения этой ситуации мы и узнали о существовании альтернативных модулей управления "ПСУ Спутник", которые способны работать не только с ИБП APC, но и с ИБП других производителей. По информации из "Сравнительной таблицы" по модельному ряду "ПСУ Спутник поддерживает более 1400 моделей ИБП различных производителей и этот список постоянно расширяется. По запросу возможна доработка ПО для поддержки любого ИБП".
Такое заявление нас удивило и впечатлило, поэтому было решено провести знакомство с этой продукцией и протестировать работу модулей с разными ИБП, которые имеются в нашем распоряжении. Далее мы опишем, что из этого получилось.

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

 

Комплект поставки и внешний вид

Рассмотрим комплект поставки на примере платы управления "ПСУ Спутник А21", поставляемой вместе с выносным датчиком измерения температуры и влажности "ДОС Климат". Подробное описание продукта с его техническими характеристиками и поддерживаемыми протоколами можно найти на сайте производителя.

В коробке мы найдём по отдельности упакованные плату и датчик, информативный буклет о продукции Инматикс и два паспорта устройства с серийным номером платы и датчика. В этих паспортах мы увидим информацию о технических характеристиках устройств и о 24-месячной гарантии производителя. Всё выглядит аккуратно и качественно и как бы сразу говорит нам о серьёзности отношения производителя к своей продукции.

Вид комплекта поставки плат ПСУ Спутник А21

Плата имеет форм фактор SmartSlot и может быть использована с ИБП линейки APC Smart-UPS. Внешне плата выглядит также довольно качественно и солидно, и практически не отличается от тех красивых картинок, что мы можем видеть на сайте производителя. Весь внешний вид и фирменная маркировка намекают на то, фактическое производство плат выполняется в России, а не в подвалах "дядюшки Ляо".

Плата Инматикс ПСУ Спутник А21

В комплекте с платой идёт предустановленная microSD карта на 8GB. При необходимости эту карту можно заменить на другую карту объёмом до 32GB. На карту пишутся все основные типы событий: События ИБП, Данные ИБП, Сервисный лог ИБП, События ПСУ. И, как я понял, помимо этого съёмного накопителя у самой платы имеется встроенное хранилище размером 1GB.

Датчик окружающей среды "ДОС Климат" имеет USB коннектор для подключения к ПСУ.

Датчик окружающей среды Инматикс ДОС Климат

Длина кабеля – всего 1,5 метра, что на мой взгляд маловато. Как правило, ИБП расположены внизу серверной стойки, а датчики температуры/влажности в некоторых ситуациях нужно размещать в верхней зоне стойки. Самыми широко распространёнными серверными стойками у нас являются стойки 42U и датчик ДОС Климат в нашей ситуации можно установить только чуть выше середины такой стойки, то есть до верхней части стойки кабель попросту не дотягивается. Если провести сравнение с платами APC, то, например, к старым модулям NMC1 самым ходовым датчиком является AP9335T и он поставляется с кабелем 4 метра, поэтому на практике никогда не возникало вопросов с его недостаточной длиной.
Мы высказали своё пожелание тех.поддержке Инматикс – оснащать ДОС Климат кабелем длиной, хотя бы, 3 метра. Обещали в перспективе учесть это пожелание.

Сертификаты и декларации о соответствии, в том числе Добровольный сертификат ГОСТ Р, можно найти на сайте производителя в разделе "Сертификаты".

 

Исследование функциональности микрокода

По традиции, перед началом настройки и эксплуатации выполняем актуализацию микрокода платы. В нашем случае знакомство с ПСУ Спутник началось ещё в бытность версии ПО 9.1.0 и без каких-либо особых проблем и сложностей мы обновились до актуальной на данный момент времени версии ПО 11.0.1. Все файлы, которые могут потребоваться при работе с платой "без СМС и регистраций" можно загрузить с сайта производителя из раздела "Необходимые файлы". Здесь мы можем найти и самую актуальную версию микропрограммы ПСУ Спутник и документацию и файлы, необходимые для задач мониторинга и выключения серверов. По информации из раздела сайта "Изменения ПО" мы можем сделать вывод о том, что микрокод активно развивается и постоянно расширяет свой функционал.

Дополнительно стоит отметить то, что микрокод ПСУ Спутник официально внесён в Единый реестр российских программ для электронных вычислительных машин и баз данных.

Согласно текущей версии документа "Быстрый старт" ПСУ Спутник по умолчанию имеет статический IP–адрес 192.168.99.99 с маской подсети 255.255.255.0. Учётные данные по умолчанию - логин admin и пароль admin.

Веб интерфейс ПСУ Спутник - Страница входа

После прохождения аутентификации перед нами открывается весьма наглядная главная страница, где мы видим базовые показатели работы ИБП. Для уже настроенного однофазного ИБП APC Smart-UPS это выглядит примерно так:

Веб интерфейс ПСУ Спутник - Дашборд

Веб-интерфейс работает быстро и хорошо масштабируется. То есть, при желании его можно использовать даже со смартфона с небольшим разрешением экрана.

Веб интерфейс ПСУ Спутник - Масштабирование

Отдельно хочется отметить приём визуализации, который мне показался весьма удобным. Если подвести курсор к любому из графиков и провести по нему влево, то на этом графике и на всех соседних графиках отображается аналогичный сдвиг показателей по времени. То есть можно быстро визуально сопоставить значения разных показателей с глубиной сдвига по времени до 24 часов.

Веб интерфейс ПСУ Спутник - Графики за последние сутки

Чтобы получить больше информации о показателях напряжения и данные о текущем состоянии батареи можно воспользоваться данными вкладки "Показания".

Веб интерфейс ПСУ Спутник - Показания - Основные

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

Веб интерфейс ПСУ Спутник - Настройки ИБП

На данный момент времени из выпадающего списка "Производитель" нам доступны такие варианты как ЭНТЕЛ, Импульс, HIDEN, APC и выбор протокола вручную. Ручной выбор представляет варианты с протоколами Megatec, VOLTB, VOLTS, VOLT33, CMSIII, DSM, GPSER11201XX, SENTR11201XX, ImpM, HIDEN1F, APC Microlink, APC Upslink. Подробную информацию о функциях, поддерживаемых в рамках того или иного протокола можно найти в актуальной версии документа "Руководство по эксплуатации".

В нашем примере ПСУ Спутник установлена в однофазный ИБП APC Smart-UPS SURT6000XLI, поэтому достаточно выбрать производителя APC и указать серию SURT. Совместимый протокол связи с ИПБ в этом случае будет определён автоматически.

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

Здесь же, ниже в разделе "Настройки" на вкладке "ИБП" мы можем найти возможность самостоятельной настройки расчёта заряда АКБ и времени автономной работы, если значения, рассчитываемые самим ИБП нас по какой-то причине не устраивают.  Если же по какой-то причине требуется настроить расчёт заряда АКБ на стороне ПСУ Спутник, то с этим вопросом поможет разобраться пример расчёта, изложенный в Руководстве по эксплуатации. В нашем случае нет необходимости изменять эти значения.

Изменения пороговых уровней заряда АКБ дают нам возможность более гибко подходить к вопросу планирования автоматизации выключения хостовых ОС на серверах, подключенных к ИБП.

Веб интерфейс ПСУ Спутник - Настройки расчёта заряда АКБ и времени автономии

 

Далее, пройдёмся по разным вкладкам раздела "Настройки", останавливаясь на тех, которые имеют какие-то особенности и представляют для нас отдельный интерес.


Вкладка "Сеть" позволяет задать базовые сетевые настройки для ПСУ – указать имя хоста, настроить статическую адресацию IPv4/IPv6 или включить получение адреса с DHCP, а также указать DNS серверы.

Веб интерфейс ПСУ Спутник - Настройки сети

Кроме того имеется возможность включения виртуального RNDIS адаптера. И здесь в качестве примера приведём информативную встроенную справку по этой функции.

Веб интерфейс ПСУ Спутник - Настройки RNDIS

 


Вкладка "Профиль" своим названием может внести некоторое недопонимание. На первый взгляд может показаться, что эта вкладка отвечает за предоставление возможности смены пароля текущего, вошедшего в систему, пользователя. Это было бы логично. Но на самом деле эта вкладка определяет возможность смены лишь для встроенного административного пользователя и у других пользователей системы эта вкладка не отображается вообще. Возможно, правильней было бы в меню обозвать этот пункт как "Администратор", либо реализовать возможность самостоятельной смены пароля для любого вошедшего в систему пользователя (разумеется, с учётом соблюдения требований сложности пароля).

Веб интерфейс ПСУ Спутник - Смена пароля администратора

 


На вкладках "Веб-интерфейс" и "SSL" можно включить/выключить использование HTTPS, переназначить номер порта веб-сервера и загрузить сертификат и закрытый ключ в формате PEM. Ранние версии прошивки имели путаницу с терминологией в разделе управления закрытым ключом, но после нашего обращения в ТП Инматикс эта проблема была решена с выходом очередного релиза 10.2.1. На наш взгляд в блоке отображения информации об установленном сертификате для большей наглядности было бы не лишним добавить больше информации об установленном сертификате – имя Common Name (CN), на которое выдан сертификат; имя CN центра сертификации; альтернативные имена SAN; серийный номер сертификата и SHA-отпечатки.

Веб интерфейс ПСУ Спутник - Настройки SSL

 


На вкладке "Пользователи" мы можем добавить дополнительных пользователей с двумя уровнями доступа – "Просмотр" и "Настройка". Первый уровень определяет доступ на чтение к разделам "Главная", "Показания", "О системе", "Журналы", а второй уровень определяет доступ ко всем разделам веб-интерфейса с возможностью изменения настроек.

Веб интерфейс ПСУ Спутник - Пользователи системы

Следует иметь ввиду, что на данный момент есть проблема с редактированием ранее созданных пользователей. При переходе в режим редактирования записи о пользователе происходит очистка поля "Пароль" и, если пароль не вбить повторно, то последующее сохранение записи может быть выполнено с этим пустым паролем. Информация об этой проблеме передана с ТП Инматикс и они обещали решить эту проблему. В реализации механизма добавления пользователей в перспективе хотелось бы видеть дополнительную проверку на соблюдение требований сложности пароля.

 


На вкладке "Telnet/SSH" можно найти только переключатели в возможностью включения/выключения соответствующих протоколов.

Веб интерфейс ПСУ Спутник - Настройки SSH и Telnet

В ранних версиях микрокода, с которыми нам приходилось поработать (ПО 9.1.0 и 10.1.0), была обнаружена проблема с аутентификацией по протоколу Telnet, о чём было сообщено в ТП Инматикс. Начиная с версии ПО 10.2.1. протокол Telnet выключен в конфигурации по умолчанию, а в версии 10.4.0 была решена проблема с аутентификацией. Также на ранних версиях микрокода мы столкнулись с проблемой неработающей аутентификации по протоколу SSH в случае, если пароль содержал спецсимвол "$", о чём также было сделано обращение в ТП Инматикс. Начиная с ПО версии 10.2.1 данная проблема также была исправлена.

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

 


На вкладке "Планировщик" у нас имеется возможность настройки запуска разных действий по расписанию на ежедневной и еженедельной основе, а также по наступлению определённых событий. В представленном ниже примере мы настроили еженедельный запуск быстрого тестирования батарей ИБП.

Веб интерфейс ПСУ Спутник - Настройки планировщика

Перечень команд, которые можно использовать в планировщике, может отличаться в зависимости от реализованных возможностей протокола обмена между ПСУ Спутник и ИБП. В нашем примере для APC Smart-UPS линейки SURT доступны следующие команды:

Веб интерфейс ПСУ Спутник - Команды планировщикаПоддерживаемые типы событий, на которые можно назначить какую-либо команду, в нашем случае такие: "После запуска", "Переход на АКБ", "Низкий заряд (при питании от АКБ)", "Достаточный заряд (при питании от сети)".

 


На вкладке "SNMP" у нас есть возможность включения и настройки протокола SNMP. В случае выбора варианта "SNMP v1/v2" предполагается ввод общей базовой настройки строк подключения Community на Чтение, Запись и для отсылки Trap.

Веб интерфейс ПСУ Спутник - Настройки SNMP v1/v2

То есть в текущей реализации настроек SNMP v1/v2 нет возможности указания разных Community для разных источников подключения. При этом в разных организациях один и тот же ИБП должен быть подключен к разным системам мониторинга и управления с разным типом доступа. Соответственно, хотелось бы иметь возможность более гибкой гранулированной настройки SNMP v1/v2. По этому поводу мы сделали обращение в ТП Инматикс и данный вопрос был принят на доработку.

При выборе версии протокола "SNMP v3" появляется блок настройки пользователей для этого протокола. Поддерживается добавление до 12 пользователей.

Веб интерфейс ПСУ Спутник - Настройки SNMP v3

Если в настройках ПСУ Спутник включен протокол SNMP v3, то отсылка трапов имеет некоторые особенности. При отсылке трапов от ПСУ Спутник будет использоваться лишь первая учётная запись, указанная в перечне учётных записей в разделе настроек "SNMP" в блоке "Пользователи SNMP v3". Это ограничение производитель обещает исправить в перспективе (предполагается возможность настройки протокола относительно каждого отдельно взятого получателя трапов).


Для настройки получения Trap версии SNMP v3 с ПСУ Спутник на принимающей стороне, например, на сервере мониторинга с snmptrapd, нам потребуется выяснить идентификатор engineID для каждой отдельно взятой платы управления. Сейчас в веб-интерфейсе ПСУ нет информации об engineID, поэтому, чтобы получить этот идентификатор придётся выполнить SNMP GET запрос к плате (SnmpEngineID из SNMP-FRAMEWORK-MIB):

$ snmpget -v 3 -u icinga-user -l authPriv -a SHA -A myAuthPass –x DES -X myEncPass KOM-UP001 1.3.6.1.6.3.10.2.1.1.0

iso.3.6.1.6.3.10.2.1.1.0 = Hex-STRING: 80 00 D5 85 03 D0 40 BE 00 03 72

Полученное Hex-значение и будет идентификатором engineID, который в нашем примере будет 0x8000D58503D040BE000372. В этом случае описанную ранее конфигурацию snmptrapd.conf потребуется расширить директивами описания создания связки пользователя и engineID:

...
# SNMPv3 TRAP settings for PSU Sputnik
createUser -e 0x8000D58503D040BE000372 myuser SHA 'authPriv' DES 'myAuthPass'
authUser log,execute,net myuser

ПСУ Спутник поддерживает стандартизированный UPS-MIB (RFC1628) и проприетарный INMATICS-MIB. Получить MIB-файлы можно либо на сайте на страницах продуктов ПСУ Спутник, либо из веб-интерфейса ПСУ Спутник (по значку "?" в верхнем меню разделов)

Веб интерфейс ПСУ Спутник - MIB-файлы

В "Руководстве по эксплуатации" можно найти более подробную информацию о поддерживаемых параметрах SNMP для разных ИБП, а также описание возможностей INMATICS-MIB.

В целом, имеющаяся реализация SNMP в ПСУ Спутник позволяет успешно настроить мониторинг состояния базовых показателей ИБП. Готовый шаблон мониторинга для Zabbix можно найти на сайте Инматикс. В нашем случае настройка была произведена в системе мониторинга Icinga с набором плагинов мониторинга Centreon Plugins, в который в свою очередь по нашей заявке была добавлена поддержка ПСУ Спутник. Плагин совместим с системами мониторинга Nagios/Icinga/Centreon. Примеры использования разных режимов работы плагина можно найти в отдельной заметке Вики.

Мониторинг ПСУ Спутник в Icinga


В предыдущих релизах микрокода ПСУ было обнаружено, что при опросе по протоколу SNMP в ответе ПСУ Спутник отсутствуют данные в параметре, определяющем входную частоту в Герцах на каждой входящей линии ИБП. То есть OID .1.3.6.1.2.1.33.1.3.3.1.2 (upsInputFrequency) всегда возвращал нулевое значение, хотя если смотреть лог данных ИБП в веб-интерфейсе ПСУ, то эти данные в ПСУ имеются. После обращения в ТП Инматикс эта проблема была оперативно решена с выходом очередной версии ПО 10.4.0.

Дальнейшие наши тесты показали наличие ещё одной смежной проблемы. При опросе по протоколу SNMP в ответе ПСУ Спутник отсутствуют данные в параметрах, определяющих нагрузку в Амперах и Ваттах для выходных линий ИБП. То есть OID .1.3.6.1.2.1.33.1.4.4.1.3 (upsOutputCurrent) и .1.3.6.1.2.1.33.1.4.4.1.4 (upsOutputPower) всегда возвращают нулевое значение. По данному вопросу также было сделано обращение в ТП Инматикс, которое было принято в доработку, и мы ожидаем исправления этой проблемы в следующих релизах микрокода.


Ещё одним моментом, который не носит первостепенного значения, но может быть востребован в больших инфраструктурах, является возможность получения инвентаризационных данных об ИБП и самой плате ПСУ по протоколу SNMP. Многие системы мониторинга и/или инвентаризации, использующие протокол SNMP, в качестве базовых идентификационных показателей используют данные, считанные со следующих базовых OID: sysDescr, sysContact, sysName, sysLocation:

.1.3.6.1.2.1.1.1.0 = STRING: "PSU A23 swver: v11.0.1 (Nov  3 2023 09:11:38) osver: 3.9.0 hwver: 1.1.1"
.1.3.6.1.2.1.1.4.0 = STRING: "Unknown"
.1.3.6.1.2.1.1.5.0 = STRING: "Unknown"
.1.3.6.1.2.1.1.6.0 = STRING: "Unknown"

Как видно из примера, плата ПСУ Спутник ничего не возвращает для sysContact, sysLocation, sysName. Хотелось бы иметь возможность хранения в ПСУ дополнительной информации в разделе веб-интерфейса "Настройки" > "Инвентарные данные" (блок "Системные"), чтобы эти данные возвращались при опросе OID sysContact, sysLocation, sysName. Кроме этого в веб-интерфейсе ПСУ в блоке "ИБП" раздела "О системе" > "Основное" уже есть инвентаризационная информация об ИБП  - "Модель", "Серийный номер", "Версия прошивки". Сейчас эти данные никак не возвращаются при опросе ПСУ по протоколу SNMP, а было бы крайне полезно иметь возможность получать эти данные.

Веб интерфейс ПСУ Спутник - Информация о системе

То же самое относится и к инвентаризационной информации в блоке "ПСУ Спутник" - "Модель", "MAC адрес", "Серийный номер", "Версия ПО", "Версия ОС", "Версия АО". Было бы хорошо иметь возможность получать эти данные в виде отдельных OID при опросе по протоколу SNMP. И здесь ещё возникает пожелание иметь инвентаризационную информацию о модели и серийном номере подключённого датчика Климат, так как сейчас такой информации нет совсем. С этими пожеланиями мы обратились в ТП Инматикс и ожидаем получить данный функционал в следующих версиях микрокода. Дополнительно в ТП нас проинформировали о том, что значения атрибутов sysContact, sysLocation, sysName на данный момент времени при желании можно установить SNMP SET запросом к соответствующим OID.


Теперь немного подробней поговорим о ранее упомянутых MIB-файлах в контексте работы с SNMP Trap. В проприетарном файле INMATICS-MIB мы не нашли функционала для отсылки Trap.  В стандартизированный файле UPS-MIB есть описания для 4 видов трапов:

".iso.org.dod.internet.mgmt.mib-2.upsMIB.upsTraps.upsTrapOnBattery",".1.3.6.1.2.1.33.2.1"
".iso.org.dod.internet.mgmt.mib-2.upsMIB.upsTraps.upsTrapTestCompleted",".1.3.6.1.2.1.33.2.2"
".iso.org.dod.internet.mgmt.mib-2.upsMIB.upsTraps.upsTrapAlarmEntryAdded",".1.3.6.1.2.1.33.2.3"
".iso.org.dod.internet.mgmt.mib-2.upsMIB.upsTraps.upsTrapAlarmEntryRemoved",".1.3.6.1.2.1.33.2.4"

На системах мониторинга на базе Linux используются утилиты из состава службы snmptt (SNMP Trap Translator), которые отвечает за разбор поступающих в системы мониторинга трапов. По примеру этой статьи мы попытались сконвертировать правила обработки трапов для snmptt из файла UPS-MIB (те самые 4 трапа), но получили ошибки. Команда конвертации использовалась стандартная, которую мы ранее многократно использовали для конвертации MIB-файлов других производителей:

# convertmib --in=/tmp/UPS-MIB.mib --out=/etc/snmp/snmptt_SputnikPSU.conf --exec='/usr/lib/nagios/plugins/submit_snmp_trap $r "SNMP Trap" 1' | grep translations

...
Processing /tmp/UPS-MIB.mib
Unlinked OID in UPS-MIB: upsMIB ::= { mib-2 33 }
Undefined identifier: mib-2 near line 17 of /tmp/UPS-MIB.mib
...
Unknown object identifier: UPS-MIB::upsTrapOnBattery
Unlinked OID in UPS-MIB: upsMIB ::= { mib-2 33 }
...
Unknown object identifier: UPS-MIB::upsTrapTestCompleted
Unlinked OID in UPS-MIB: upsMIB ::= { mib-2 33 }
Undefined identifier: mib-2 near line 17 of /tmp/UPS-MIB.mib
...
Unknown object identifier: UPS-MIB::upsTrapAlarmEntryAdded
Unlinked OID in UPS-MIB: upsMIB ::= { mib-2 33 }
Undefined identifier: mib-2 near line 17 of /tmp/UPS-MIB.mib
...
Unknown object identifier: UPS-MIB::upsTrapAlarmEntryRemoved

Total translations:        4
Successful translations:   0
Failed translations:       4

Разумеется, это проблема не ПСУ Спутник, а проблема самого распространяемого файла UPS-MIB.mib, так как с ней сталкиваются пользователи разных систем мониторинга для разного оборудования, использующего UPS-MIB. В частности, на одном из форумов системы мониторинга Zabbix найдено подтверждение этой проблемы и даже предлагается некое решение в виде корректировки UPS-MIB.mib. Находим строку (в имеющейся у меня копии файла это 8 строка):

OBJECT-IDENTITY, Counter32, Gauge32, Integer32

Заменяем на строку:

OBJECT-IDENTITY, Counter32, Gauge32, Integer32, mib-2

И после этого обработка этих 4 трапов с помощью convertmib выполняется без ошибок, и мы получаем результирующий файл правил snmptt, с которым смогут работать системы мониторинга. Возможно, данную корректировку, стоит провести с файлом UPS-MIB.mib, который доступен для скачивания с сайта и из веб-интерфейса ПСУ, чтобы другие коллеги не "спотыкались" об эту особенность UPS-MIB.

На уточняющий вопрос в ТП Инматикс о том, почему в MIB-файлах нам доступно всего 4 вида трапов и как это соотносится, например, с возможностями ПСУ по отправке писем по электронной почте по большому перечню событий, мы получили развёрнутый ответ, который я позволю себе процитировать.

В виде трапов можно получить уведомления о появлении событий, определенных в UPS-MIB (upsWellKnownAlarms) и которые поддерживаются выбранным протоколом связи (поддерживаемые события можно посмотреть в РЭ в приложении Б документа "Руководство по эксплуатации"). В upsWellKnownAlarms определены:
- BATTERY_BAD
- ON_BATTERY
- LOW_BATTERY
- DEPLETED_BATTERY
- TEMP_BAD
- INPUT_BAD
- OUTPUT_BAD
- OUTPUT_OVERLOAD
- ON_BYPASS
- BYPASS_BAD
- OUTPUT_OFF_AS_REQUESTED
- UPS_OFF_AS_REQUESTED
- CHARGER_FAILED
- UPS_OUTPUT_OFF
- UPS_SYSTEM_OFF
- FAN_FAILURE
- FUSE_FAILURE
- GENERAL_FAULT
- DIAGNOSTIC_TEST_FAILED
- COMMUNICATIONS_LOST
- AWAITING_POWER
- SHUTDOWN_PENDING
- SHUTDOWN_IMMINENT
- TEST_IN_PROGRESS
Сейчас нельзя получить trap о событиях с МДВВ Контакт и ДОС Климат и специфичное событие "Высокий заряд". При появлении события из перечня будет отправлен трап upsTrapAlarmEntryAdded, а при его исчезновении upsTrapAlarmEntryRemoved


Завершая тему SNMP Trap, хотелось бы заметить, что при настройке SNMP в веб-интерфейсе ПСУ Спутник на данный момент не хватает возможности отсылки тестового трапа. Например, такая функция имеется в модулях управления APC NMC и позволяет убедиться в корректности выполненной настройки и проконтролировать первичное получение трапа в системе мониторинга. Это пожелание также было высказано в ТП Инматикс и было принято в план доработки.

 


На вкладке "Modbus" при необходимости можно включать и настраивать параметры соответствующего протокола. Опции "Modbus TCP" доступны на всех платах ПСУ Спутник, в то время как опции "Modbus RTU" доступны на платах с расширенным функционалом, например, на плате ПСУ Спутник A23.
Вообще сравнить по функциональным возможностям все платы линейки ПСУ Спутник можно, ознакомившись с наглядным документом "Сравнительная таблица".

Веб интерфейс ПСУ Спутник - Настройки Modbus

Функционал Modbus мы не тестировали в своём окружении, поэтому относительно его работы в ПСУ Спутник никаких оценок давать здесь не будем.

 


На вкладке "Время и дата" можно включить и настроить синхронизацию времени по протоколу NTP. Функционал встроенного NTP клиента по нашим наблюдениям работает корректно и стабильно.

Веб интерфейс ПСУ Спутник - Настройки NTP

Обратите внимание на то, что изменение времени и даты на ПСУ Спутник может привести к тому, что запланированная ранее команда ("Настройки\Планировщик") не будет отправлена в нужное время или может быть отправлена повторно. То есть менять настройки времени нужно учитывая настроенные ранее команды с запуском по расписанию.

Учитывая тот факт, что корректность установленного времени напрямую влияет на точность информации, сохраняемой в логах ПСУ, важно отслеживать статус успешности синхронизации времени в случае включения NTP. Поэтому в качестве дополнительного пожелания по развитию функциональности микрокода, можно отметить, что не плохо было бы иметь возможность отражения проблем с синхронизацией времени в механизмах оповещения по электронной почте и SNMP.

 


На вкладке "Журналы" у нас имеется возможность настройки параметров сохранения журналируемых данных на съёмной microSD карте. В зависимости от интенсивности сохранения данных меняется расчётный период глубины хранения журналов с учётом перезаписи самых старых записей журналов. В нашем примере видно, что если мы будем сохранять данные с 30-секундным интервалом, то на поставляемой в комплекте с ПСУ картой памяти можно будет хранить архив глубиной в 21 год.

Веб интерфейс ПСУ Спутник - Настройки журнала

Собственно, само содержимое журналируемых данных можно увидеть в разделе "Журналы" на вкладке "Данные ИБП"

Веб интерфейс ПСУ Спутник - Просмотр журнала

Сохраняется довольно широкий набор показателей: Входное напряжение (В), Частота входа (Гц), Выходное напряжение (В), Выходная нагрузка (%), Выходная частота (Гц), Выход ИБП, Напряжение АКБ (В), Температура АКБ (°C), Состояние АКБ, Заряд АКБ (%), ДОС: температура (°C), ДОС: влажность (%)

Есть возможность скачивания журнала в формате CSV для последующей аналитики истории изменений.

 


На вкладке "ДОС Климат" имеется возможность включения/отключения ранее упомянутого датчика измерения показателей окружающей среды. ДОС Климат поставляется в комплекте с платами Спутник А21 и Спутник А23, а для других плат Спутник датчик может быть приобретён отдельно как дополнительная опция. Производителем заявлена возможность измерения температуры в диапазоне -40..+80 °C и измерения влажности в диапазоне 0..100%. Данные показателей ДОС Климат сохраняются в ранее упомянутом Журнале данных. Кроме этого данные датчика доступны по протоколам SNMP и Modbus.

Внешний вид Инматикс ДОС Климат

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

Веб интерфейс ПСУ Спутник - Настройки ДОС Климат

Чуть позже мы ещё поговорим о датчиках ДОС Климат.

 


На вкладке "МДВВ Контакт" есть возможность выключения и настройки модуля дискретного ввода/вывода. МДВВ Контакт это внешний модуль, подключаемый к ПСУ Спутник по USB. Этот модуль является опциональным, то есть не поставляется в комплекте с какой-либо из плат Спутник и приобретается отдельно.

Внешний вид Инматикс МДВВ Контакт

В веб-интерфейсе можно определить события срабатывания выходов и реакцию на сигнал на входах. Для каждого выхода можно настроить одно из событий ИБП. При появлении сигналов на входах может выполняться команда управления ИБП. Информация о поддерживаемых событиях и командах приведена в руководстве ("Параметры, события и
команды управления ИБП") для каждого протокола связи с ИБП.

Веб интерфейс ПСУ Спутник - Настройки МДВВ Контакт

Помимо отображения информации о состоянии модуля в веб-интерфейсе, состояние входов МДВВ Контакт можно получить по SNMP (параметр upsIOinputState, определен в INMATICS-MIB) и Modbus.

 


На вкладке "Почта" можно включить и настроить отсылку оповещений по электронной почте.  Поддерживается возможность использования защищённых соединений с почтовым сервером по STARTTLS или SSL/TLS, аутентификация на почтовом сервере. Если по какой-то причине нет возможности отправки почты на локальный почтовый сервер, то в документации можно найти описание параметров для отправки почты через публичные почтовые системы Gmail, Яндекс.Почта, Почта Mail.ru. Имеется возможность отправки тестового письма для проверки корректности выполненных настроек.

Веб интерфейс ПСУ Спутник - Настройки SMTP

После настройки глобальных параметров SMTP можно гибко настроить список событий и отчеты для разных групп получателей (до 5 групп). В каждой
группе может быть до 5 конечных адресатов.
Список возможных событий состоит из 20 типов в категориях событий ИБП, событий датчика окружающей среды и модуля дискретного ввода–вывода (при наличии), событий о потере связи с ИБП. Можно, к примеру, создать отдельную группу получателей, отвечающую за параметры окружающей среды в помещении и настроить для этой группы только оповещения, касающиеся наступления пороговых событий на ДОС Климат.

Веб интерфейс ПСУ Спутник - Почтовые оповещения по типам событий

Когда мы тестировали данный функционал оповещений на предыдущих версиях микрокода, были обнаружены некоторые недочёты и неудобства. Например, раньше был не очень удобно реализован механизм настройки типов оповещений для той или иной группы получателей и задача включения сразу всех типов оповещений представляла собой долгую и нудную работу мышкой. А присылаемый по почте отчёт по расписанию содержал "На момент отправки письма режим ИБП: неизвестно", хотя и ПСУ и ИБП при этом работали исправно. Наши замечания по этому поводу в ТП Инматикс были учтены и с выходом версии микрокода 10.2.1 указанный недочёт был исправлен, а принцип настройки оповещений был переработан и улучшен.

 


На вкладке "RADIUS" мы можем включить и настроить для ПСУ Спутник внешнюю аутентификацию, указав до 5 серверов RADIUS.

Веб интерфейс ПСУ Спутник - Настройки RADIUS

Не смотря на наличие обозначенных настроек, на данный момент времени, в документации к ПСУ Спутник нет никакой информации о возможностях реализации протокола RADIUS. Поэтому непонятно то, как между собой взаимодействуют аутентификация из локальной базы пользователей ПСУ и аутентификация с помощью RADIUS-сервера. Мы обратились с уточняющими вопросами на эту тему с ТП Инматикс и получили информацию, которой здесь поделимся в режиме вопрос-ответ.

1. Каким образом работает взаимосвязь аутентификации из локальной базы пользователей ПСУ с аутентификацией через сервер RADIUS?

Сейчас локальная авторизация и удаленная работают параллельно. Если будет определён пользователь с одинаковым логином и паролем и локально и удаленно, то будет использован локальный пользователь (с заданными ему правами).

2. Какие поддерживаются методы аутентификации?

На данный момент поддерживается только аутентификация PAP. В планах есть реализация аутентификации CHAP. Кстати говоря, платы APC NMC 2-го и 3-го поколений также умеют работать только с PAP-аутентификацией, а поддержка CHAP заявлена только платах APC NMC 4-го поколения.

3. Какие следует использовать атрибуты RADIUS и какие типы доступа они дают?

Допускается использование "State":
- значение "settings" определяет полный доступ (чтение, изменение настроек и управление);
- значение "read" определяет доступ только на чтение.
Если в качестве RADIUS сервера используется, например, FreeRADIUS, то конфигурация может быть такой:
- конфигурационный файл users:

user1    Cleartext-Password := "pass1", State := "settings"
user2    Cleartext-Password := "pass2", State := "read"
  • конфигурационный файл sites-available/default
post-auth {
        ...
        update reply {
                State := "%{control:State}"
        }
        ...
}

В нашем же случае случае в качестве RADIUS сервера использовалась роль NPS в составе Windows Server. Наши тесты на более ранних версиях микрокода ПСУ Спутник показали, что имеющаяся на тот момент реализация поддержки RADIUS позволяет использовать уже работающие политики NPS, которые мы настраивали ранее для APC: Использование RADIUS (Windows Network Policy Server) для аутентификации и авторизации на ИПБ APC (Web/SNMP Management Card). Но успешно аутентифицированный пользователь при этом получал у нас только режим на чтение, без доступа к настройкам ПСУ. Связано это было с тем, что не было понимания как прикрутить проверку выше обозначенного атрибута "State" в политику NPS на Windows Server. Мы обсудили эту ситуацию с ТП Инматикс, и благодаря их доработке, начиная с версии микрокода 10.5.0 появилась поддержка атрибута авторизации "Service-Type" со значениями "Administrative-User" для полного доступа и "Authenticate-Only" для доступа на чтение. Тестирование функционала авторизации через "Service-Type" показало положительный результат. Таким образом, теперь можно полноценно использовать единые политики доступа RADIUS в Windows Server NPS и для плат APC NMC и для плат ПСУ Спутник.

 


На вкладке "Syslog" имеется возможность указать до 5 разных серверов-сборщиков логов.

Веб интерфейс ПСУ Спутник - Настройки Syslog

На данный момент времени мы ещё не испытывали функционал Syslog, поэтому говорить что-либо о качестве его работы в ПСУ Спутник в рамках этой статьи мы не будем.

 


На вкладке "Интеграция" можно найти настройки для специфических подключений к СМБ Пульс (система мониторинга батарей Пульс), МАЯК (система мониторинга аккумуляторных ячеек), МФИ (многофункциональные измерители). Включение того или иного блока открывает доступ к ряду вложенных настроек.

Веб интерфейс ПСУ Спутник - Настройки интеграции

В нашем случае подобное оборудование не используется, поэтому осветить какие-то особенности работы этих режимов в ПСУ Спутник мы не сможем.

 


В последней вкладке "Инвентарные данные" у нас есть возможность задать два системных параметра - инвентаризационное имя системы и отображаемая модель ИБП. Значение поля "Название системы" будет отображаться в веб-интерфейсе в панели сверху справа от логотипа и это поле не имеет отношения к полю "Hostname" на вкладке "Сеть". Здесь же имеется весьма полезная возможность добавления аж 1000 пользовательских параметров, в которых можно сохранить разнообразную дополнительную информацию о плате управления, ИБП и вообще о чём-либо другом.

Веб интерфейс ПСУ Спутник - Инвентарные данные

Системные и пользовательские инвентарные данные отображаются в разделе веб-интерфейса "О системе" на одноимённой  вкладке "Инвентарные данные". Здесь присутствует возможность скачивания данных в формате CSV, что само по себе, при обеспечении определённой стандартизации настроек на всех платах ПСУ Спутник, может стать дополнительным подспорьем для работы с системами автоматической инвентаризации оборудования.

Веб интерфейс ПСУ Спутник - Информация о системных и пользовательских полях

По началу у нас возникло некоторое недопонимание сосуществования полей в разделе "Настройки\Инвентарные данные" и отображаемой информации в разделе "О системе\Основное". Было замечено, что на двух одинаковых ИБП Smart-UPS с одинаковой версией микрокода на двух одинаковых модулях ПСУ данные отображаются по разному в разделе веб-интерфейса "О системе\Основное". После общения с ТП выяснилось, что если в поле "Модель ИБП" ("Настройки\Инвентарные данные") прописать своё название модели, то оно будет отображаться в разделе "О системе\Основное". А если поле "Модель ИБП" не заполнено, то в разделе "О системе" будет отображаться модель, считанная ПСУ с самого ИБП. Позже во встроенную справку веб-интерфейса ПСУ и документацию были внесены дополнения, описывающие этот момент.

Веб интерфейс ПСУ Спутник - Подсказка по инвентарным данным

 


Теперь посмотрим какие у нас есть возможности в разделе веб-интерфейса "Управление". В первой вкладке "ПСУ Спутник" всё интуитивно понятно. У каждой функции имеется встроенная подсказка. Тестирование нами каждой функции на разных этапах эксплуатации показало ожидаемую штатную работу.

Веб интерфейс ПСУ Спутник - Возможности управления ПСУ

 


На вкладке "ИБП" можем найти перечень команд, которые можно отправить в ИБП. Этот перечень будет меняться в зависимости от возможностей, реализованных на уровне протокола связи ПСУ с той или иной линейкой ИБП.

Веб интерфейс ПСУ Спутник - Возможности управления ИБП APC Smart-UPS

Все указанные на скриншоте команды, доступные в нашем случае при подключении ПСУ Спутник к ИБП APC Smart-UPS SURT6000XLI, были протестированы и их работа не вызвала каких-либо нареканий.

 


Во вкладке "Обновление ПСУ" доступна единственная функция - обновление микрокода платы. Как уже упоминалось ранее, файл актуальной версии прошивки можно найти в открытом доступе на сайте Инматикс на странице информации о соответствующей модели ПСУ Спутник в разделе "Необходимые файлы". На самом деле прошивка является единой и универсальной для всех плат ПСУ Спутник, что тоже имеет свои плюсы.

Веб интерфейс ПСУ Спутник - Обновление микрокода ПСУНаш многократный опыт обновления микрокода на разных платах Спутник начиная с версии ПО 9.1.0 до самой актуальной версии 11.0.1 не показал наличия каких-либо негативных моментов. Всё всегда проходило штатно и без "сюрпризов".

 


Последняя вкладка "Расширения" может вызвать вопросы, так как в текущей версии руководства к ПСУ Спутник мы не нашли упоминаний о том, что это такое и зачем.

Веб интерфейс ПСУ Спутник - Расширения

По косвенным признакам можно сделать предположение, что этот набор настроек Управления связан с настройками в разделе "Настройки” на вкладке "Интеграция". То есть, вероятно, речь идёт о подключении к системам СМБ Пульс, МАЯК и МФИ.

 

 

А что "под капотом"?

Воспользуемся утилитой nmap для того, чтобы произвести поверхностную оценку информации, которую мы можем получить от открытых на ПСУ Спутник портов.

Сканирование порта HTTPS (TCP 443) не позволяет выявить информации, которую можно было бы связать с какими-то известными веб-серверами. Однако, если на плате не включен HTTPS и активен прослушиватель на порту TCP 80, то из HTTP-заголовков можно выяснить, что на запросы отвечает веб-сервер "vibe.d/1.21.0". По всей видимости здесь идёт речь о библиотеке vibe-core с номером версии 3-х летней давности. Полагаю, что производителю стоило бы подтянуть версию библиотеки и подумать над сокрытием версии веб-сервера в HTTP-заголовках.

Сканирование порта SSH (TCP 22) показало наличие версии OpenSSH 8.0 protocol 2.0 (баннер "SSH-2.0-OpenSSH_8.0"). Версия ОС в баннере SSH-сервера не раскрывается. Возможно, имеет подумать о сокрытии версии сервера SSH, но, теоретически, это может отрицательно повлиять на процесс согласования между SSH-сервером и разными SSH-клиентами на этапе подключения клиента.

При включенном протоколе Telnet сканирование порта TCP 23 показывает наличие "Openwall GNU/*/Linux telnetd". Версия самой службы telnetd не раскрывается. Но наличие в ответе "Openwall" может натолкнуть на мысли о работающей внутри ОС OWL. В любом случае не стоит включать и использовать протокол Telnet (в конфигурации по умолчанию в ПСУ Спутник он выключен), как небезопасный. Возможно, производителю имеет смысл подумать о полной деактивации этого протокола.

Механизм определения ОС в nmap размыто указал на наличие "Linux 3.X|4.X".
Отнесём это к положительному признаку, так как микрокод ПСУ, не смотря на наличие косвенных признаков OWL, при внешних неавторизованных запросах не даёт точной информации о версии встроенной ОС.

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

 

Как управлять выключением серверов с ПСУ Спутник

На сайте Инматикс можно найти отдельную инструкцию "Завершение работы серверов и ПК", в которой описывается методология контролируемого завершения работы серверов и ПК с помощью свободно распространяемого решения Network UPS Tools (NUT). NUT имеет сборки под все распространённые платформы и имеет гибкие возможности конфигурирования сценариев завершения работы. Учитывая то, что NUT это отдельный продукт со своей спецификой, мы не будем рассматривать его применение в рамках данной обзорной статьи. Постараемся посвятить отдельный пост примеру настройки взаимодействия ПСУ Спутник и NUT.

 

Успешный опыт тестирования ПСУ Спутник с разными ИБП

Начнём с ИБП линейки APC Smart-UPS, так как это самые распространённые в нашем окружении ИБП.

Первыми тестировались однофазный ИБП APC Smart-UPS SURT6000XLI для замены устаревших модулей управления APC Network Management Card AP9619. Весь описанный выше функционал ПСУ Спутник был проверен на платах Спутник A21 и Спутник A23. Для связи ПСУ с ИБП был выбран производитель "APC" и серия "SURT" (протокол "APC Upslink"). Нюанс, с которым столкнулись конкретно на этой модели ИБП, заключается в том, что после установки платы в ИБП "на горячую" не устанавливалась связь между ПСУ и ИБП. После перезапуска ИБП всё заработало. В целом опыт эксплуатации положительный, без критических замечаний.

Внешний вид платы ПСУ Спутник А23 (более функциональный вариант платы Спутник А21):

Плата Инматикс ПСУ Спутник А23


Тестировался однофазный ИБП APC Smart-UPS SUM3000RMXLI2U, также для для замены устаревшего модуля управления APC NMC1 AP9619.  Использовалась плата Спутник А21. В настройках ПСУ выбирался производитель "APC" и серия "SUM" (протокол "APC Upslink"). После установки платы в ИБП "на горячую" зафиксировано успешное подключение ПСУ к ИБП без дополнительных манипуляций. Весь описанный выше функционал проверен, опыт эксплуатации – положительный.


Тестировался однофазный ИБП APC Smart-UPS SUA1500I.  Использовалась плата Спутник А21. В настройках ПСУ выбирался производитель "APC" и серия "SUA" (протокол "APC Upslink"). После установки платы в ИБП "на горячую" зафиксировано успешное подключение ПСУ к ИБП без дополнительных манипуляций. Весь описанный выше функционал проверен, опыт эксплуатации – положительный.


Тестировался однофазный ИБП APC Smart-UPS SMC3000R2I-RS. Особенность этой модели ИБП заключается в том, что в ИБП отсутствует возможность для внутренней установки платы управления и имеется только последовательный порт под коннектор RJ-50. В качестве решения для мониторинга и управления данным ИБП была протестирована внешняя плата управления ПСУ Спутник B2 (с подключением к плате опционального выносного датчика ДОС Климат).

Плата ПСУ Спутник В2 поставляется во внешнем конструктиве и имеет в комплекте поставки блок питания на 12V:

Плата Инматикс ПСУ Спутник В2

Для подключения ИБП к модулю управления могут использоваться кабели APC 940-0625A или APC 940-1525A. Такой кабель не поставляется в комплекте с указанным ИБП и, при отсутствии оригинальных кабелей APC с обозначенной маркировкой, может быть изготовлен своими силами.

Внешний вид платы ПСУ Спутник В2, расположенной в пластиковом конструктиве:Плата Инматикс ПСУ Спутник В2 внутри конструктива

Так как в веб-интерфейсе для производителя "APC" в перечне серий отсутствует "SMC", был в явном виде вручную указан протокол обмена "APC Microlink"

Выбор протокола APC Microlink для связи с APC Smart-UPS SMC

После настройки протокола обмена связь ПСУ с ИБП установлена успешно. Доступный функционал команд ИБП протестирован. Существенных замечаний по работе ПСУ Спутник В2 в связке с APC Smart-UPS SMC3000R2I-RS не выявлено.

 


Следующими тестировались ИБП Импульс Форвард 6000 для замены низкокачественных модулей управления Импульс МКИ-211. В качестве замены выступила плата ПСУ Спутник П20 и её, более функциональный вариант - плата ПСУ Спутник П21.

Лицевая часть плат ПСУ Спутник П20 и Спутник П21:

Лицевая часть плат ПСУ Спутник П20 и Спутник П21

Вид платы ПСУ Спутник П20:

Вид платы Инматикс ПСУ Спутник П20

Вид платы ПСУ Спутник П21 в разобранном состоянии:

Вид платы ПСУ Спутник П21 в разобранном состоянии

 

Произвести установку плат Спутник П20/П21 в ИБП Импульс Форвард 6000 можно с помощью дополнительного конструктивного адаптера Т2 (на фото чёрный металлический адаптер, в который помещена плата и который крепится к корпусу ИБП)

Металлический адаптер Т2 для платы ПСУ Спутник П21

Установить плату в разъём при включенном ИБП не совсем просто, так как ширина плат МКИ-211 и Спутник П20 немного различается. Учитывая эту особенность, установку платы лучше планировать на выключенном ИБП.

На фото плата П20 установлена до упора в слот ИБП и видно, что между платой и адаптером образуется небольшой зазор, что не даёт плате жёсткой фиксации и добавляет небольшой свободный ход платы в разъёме между адаптером и разъёмом в глубину. Поэтому, в случае необходимости отключения/переключения сетевого кабеля или температурного датчика, желательно нажатием придерживать плату, чтобы она не гуляла в слоте. Возможно, в качестве варианта решения этой небольшой особенности можно предложить производителю выпуск дополнительных адаптеров, аналогичных Т2 со скорректированными габаритами, либо укомплектовать адаптеры Т2 дополнительными уплотнительными вкладышами, которые бы предотвращали "гуляние" менее глубоких плат в слоте.

Установка ПСУ Спутник П20/П21 в ИБП Импульс Форвард 6000

После подключения в веб-интерфейсе ПСУ задаём настройки протокола связи с ИБП. В нашем случае рабочим вариантом является протокол Megatec и режим "1-1" (то есть 1 фаза на вход и 1 - на выход).

Выбор протокола Megatec в ПСУ Спутник для работы с ИБП Импульс Форвард

Из замеченных проблем можно отметить то, что в разделе "Показания" на вкладке "Основные" не отображается показатель "Время автономии [мин]". То есть расчётное время работы от батарей всегда имеет нулевое значение.

ПСУ Спутник и Импульс Форвард - Не отображается время автономии

Специалист ТП Инматикс на соответствующий вопрос предположил, что ИБП Импульс сам возвращает нулевое значение. Эту теорию косвенно подтверждает то, что "родная" плата управления МКИ-211 также не отображает данных о расчётном времени автономной работы. В целом можно сказать, что тестовая эксплуатация ПСУ Спутник П20/П21 в связке ИБП Импульс Форвард 6000 серьёзных проблем не вывила. Проверка посылаемых с ПСУ на ИБП команд показала штатную работу. Таким образом, данные платы управления от Инматикс можно рассматривать качестве рабочей альтернативы проблемным платам МКИ-211.

 

Безрезультативные попытки использования ПСУ Спутник с разными ИБП

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

Была предпринята попытка протестировать ИБП Eaton Powerware PW9125 103003625-6591 (родная плата управления Eaton ConnectUPS-X Web/SNMP/xHub Card 116750221-001) с наиболее близкой по форм-фактору платой Спутник A21. Из-за специфики корпуса ИБП плата А21 не вошла в слот буквально на 3 мм.

Попытка установки ПСУ Спутник в ИБП Eaton Powerware PW9125

Для обхода этой ситуации местным инициативным ИТ-специалистом на 3D-принтере был напечатан альтернативный пластиковый отсек для слота платы управления, который учитывал габариты ПСУ Спутник и позволял посадить коннектор платы ровно в слот.

Замена пластикового отсека в ИБП Eaton Powerware PW9125

Однако плата всё равно не заработала. Дальнейшее, более пристальное сравнение контактов плат Eaton ConnectUPS-X и Спутник A21 выявило, что имеется различие по контактам питания.  А это уже принципиальный момент, который делает невозможным использование платы Спутник А21 в ИБП Eaton Powerware PW9125.


Следующей была предпринята попытка протестировать ИБП HP R5500 XR UPS 326529-B31 (родная плата управления HP UPS Management Module AF401A) с наиболее близкой по форм-фактору платой Спутник A21. Здесь приёмный пластиковый отсек платы тоже оказался немного уже ширины платы Спутник.

Попытка установки ПСУ Спутник в ИБП HP R5500 XR UPS

Сравнение контактов плат HP UPS AF401A и Спутник A21 выявило, что также имеется различие по контактам питания.

Сравнение контактов питания на ПСУ Спутник А21 и HP UPS Management Module AF401A

Это делает невозможным использование платы Спутник А21 в ИБП HP R5500 XR UPS.


Крайней была попытка проверить совместимость ИБП Eaton Powerware PW9120 05147365-5591 (родная плата управления Eaton ConnectUPS-BD Web/SNMP Card 116750222-001) с наиболее близкой по форм-фактору платой Спутник М2. По физическим габаритам плата подошла "как родная". После установки платы в ИБП питание на плату поступает, сама плата работает, но нет связи с ИБП. Попытки подбора реализованных в ПСУ протоколов связи с ИБП результата не дали.

 

 

ДОС Климат и проблема измерения уровня влажности

На общем фоне рассмотренных ранее положительных качеств ПСУ Спутник, будет честным рассказать о проблеме, которую мы обнаружили и пока не видим её решения. Было замечено, что на одной из площадок веб-интерфейс ПСУ Спутник отображает низкие цифры показателя влажности, полученные с подключаемого датчика ДОС Климат - в пределах 0-1%. Такая картина наблюдалась одновременно на двух одинаковых, расположенных рядом друг с другом, датчиках Климат подключённых к платам Спутник А21 и А23. При этом рядом расположенные датчики APC показывали цифры в районе 6-7%

Решили провести эксперимент. Взяли у коллег из хим.службы поверенные в гос.органах измерительные приборы "Метеоскоп-М" и "МЭС-200А" и сопоставили показания температуры/влажности приборов с показаниями ДОС Климат. По показателю температуры данные оказались более или менее схожими, а вот по показателю влажности наблюдается какая-то проблема. Пример расхождения показаний на отдельно взятый момент времени:

  • ПСУ Спутник А23 с датчиком ДОС Климат (аппаратная ревизия 1.1.1)  - 0.9% влажности
  • Прибор "МЭС-200А" - 6.2% влажности
  • Прибор "Метеоскоп-М" - 7.1% влажности

ДОК Климат и заниженный показатель влажности

Сравнение показаний ДОС Климат и поверенных приборов МЭС-200А и Метеоскоп-М

Заметили также одну характерную особенность. Если датчик Климат немного пошевелить, то показатель уровня влажности резко подпрыгивает до значений, приближённых к тем, что фиксируют приборы. Но потом, когда датчик остаётся в состоянии покоя, показатель уровня влажности постепенно падает примерно по 0.1% за такт и в итоге доходит до состояния приближенного к 0-1%. Это падение показателя хорошо видно на графиках с двух соседних датчиков Климат:

Падение показателя уровня влажности у ДОС Климат

В спецификации на ДОС Климат указано, что точность измерений составляет 2% (в диапазоне 10..80%) и 3% (в диапазоне 0..100%). С данным вопросом мы обратились в ТП Инматикс. И снова позволю себе процитировать развёрнутый ответ на этот вопрос:

Начну с заявляемой точности и диапазонов обсуждаемых устройств.

ДОС Климат:
- Диапазон: 0..100 %,
- Точность: ±2 % (в диапазоне 10..80 %), ±3 % (в диапазоне 0..100 %)
AP9335TH:
- ±4% RH, 20 to 90% RH, at 77ºF (25ºC)
- ±8% RH, 30 to 80% RH, from 59 to 95ºF (15 to 30ºC)
МЭС-200А:
- Диапазон: 0 … 98%
- Точность: ± 3,0 % при температуре  (25 ± 5) ºС
Метеоскоп-М:
- Диапазон: от 5 до 97 %
- Точность: ±3,0 %

Формально получается, что Метеоскоп-М и AP9335TH вообще не могут измерять низкую влажность. А AP9335TH не может измерять даже достаточно нормальную влажность около 20%. Если же сравнивать ДОС Климат с МЭС-200А, то с учетом их точности и предположения, что МЭС завышает, а ДОС занижает, нельзя сказать точно, что ДОС Климат сильно ошибается.

Если смотреть более практично, то конечно кажется, что если 3 прибора показывают схожие данные, то это более вероятное значение. Поэтому мы предлагаем заменить 2 шт ДОС Климат на новые (а ваши мы изучим) и проверить их показания в ваших условиях. По результатам проверки определимся с остальными датчиками. Тут мы исходим из того, что возможно были какие-то проблемы при производстве, которые мы могли пропустить. Если согласны, напишите пожалуйста контакты для доставки.

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

Второе объяснение может быть таким: Движение датчика и предметов вокруг ускоряет движение воздуха и это приводит к тому, что за одно и то же время рядом с сенсором в датчике проходит больше молекул, что также может приводить к увеличению значения влажности. С учетом подобных объяснений также можно сказать, что для более точного сравнения датчиков, их необходимо оставить на какое то время в одинаковых условиях и затем сравнить. Это обеспечит одинаковую влажность рядом с сенсорами в датчиках, схожую скорость движения воздуха.

P.S. Имеющийся у нас AP9335TH вообще не показал ни разу значение ниже 10%, хотя наш прибор показывал влажность близкую к нулю.

В целом всё вроде бы объективно. Однако съём показателей измерений в нашем случае проводился после получасового покоя с момента размещения приборов и датчиков Климат рядом друг с другом. Никаких передвижений персонала или прочих факторов влияющих на изменение микроклимата в помещении не было. Измерения с сопоставлением проводились несколько раз. По поводу точности измерения показаний старых датчиков APC AP9335TH можно отметить то, что, не смотря на данные спецификации, фактически их данные сопоставимы с данными поверенных приборов даже при невысоком уровне влажности (от 5 до 10%). Предложенную замену датчиков на другие в этой ситуации было решено не делать. Вместо этого мы решили провести аналогичный эксперимент с замерами на другой площадке в другом городе, так как там параллельно у нас шло выше упомянутое тестирование плат ПСУ Спутник П20/П21 в связке ИБП Импульс Форвард 6000.

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

Показатели, снятые в первом помещении:

  • ПСУ Спутник П21 с датчиком ДОС Климат (рев.1.1.1) - 0.8% влажности
  • Прибор "Center 314" - 13.2% влажности

Разница показаний - 12,4%.

Сравнение показаний ДОС Климат и поверенного прибора Center 314

Показатели, снятые во втором помещении:

  • ПСУ Спутник П20 с датчиком ДОС Климат (рев.1.1.1) - 6.1% влажности
  • Прибор "Center 314" - 16.1% влажности

Разница показаний - 10%.

Сравнение показаний ДОС Климат и поверенного прибора Center 314

Даже если учитывать допустимую погрешность измерительного прибора (2,5%) и датчика Климат (2-3%) расхождение получается существенным.

Через пол-месяца на этой же площадке немного изменились климатические условия и общий уровень влажности был повыше. Провели ещё один проверочный замер.

  • ПСУ Спутник П21 с датчиком ДОС Климат показал 16,8% влажности, а прибор "Center 314" показал 22,8% влажности. Разница - 6%
  • ПСУ Спутник П20 с датчиком ДОС Климат показал 19,7% влажности, а прибор "Center 314" показал 24.2% влажности. Разница - 4,5%

Судя по тому, что мы видим, с повышением уровня влажности показания ДОС Климат становятся более правдоподобными, а при низком уровне влажности показания искажаются. И вероятно в других условиях с постоянным более высоким уровнем влажности эта проблема себя не будет проявлять, в отличии от того, как это воспроизводится у нас.

На этой площадке мы воспользовались предложением Инматикс и произвели замену обоих датчиков Климат. Датчики пришли той же аппаратной ревизии 1.1.1 и ситуация с расхождениями, к сожалению, не улучшилась. Специалисты Инматикс сообщили нам, что полученные от нас датчики прошли испытания и по ним проблем выявлено не было. В общем на данном этапе можно сказать что для нас этот вопрос остаётся нерешённым.

 

Дополнительные пожелания по развитию функционала микрокода ПСУ Спутник

Помимо уже обозначенных выше замечаний хотелось бы осветить те дополнительные пожелания, которые могли бы улучшить функциональность ПСУ Спутник. В ходе нашего тестирования эти пожелания были озвучены в ТП Инматикс и были приняты в план дальнейшего развития микрокода ПСУ Спутник.

Возможность регулировки выходного напряжения для APC Smart UPS

При подключении ПСУ Спутник к ИБП Smart-UPS сейчас нет возможности изменения вольтажа выходного напряжения. Модули управления APC NMC позволяют выполнять такую настройку, например, выбрать в качестве выходного напряжения не 220V, а 230V. Ожидаем со временем увидеть такую возможность и для ПСУ Спутник.

 

Обособленное хранение даты последней замены аккумуляторов

При подключении ПСУ Спутник к ИБП Smart-UPS сейчас возможности указания даты последней замены аккумуляторов. Модулями управления APC NMC дата последней замены аккумуляторов используется, как минимум, для расчёта времени автономной работы от батарей и для генерации оповещений (snmp trap/email/syslog) о наступлении строка очередной периодической замены аккумуляторов, что используется в разных системах мониторинга. Разумеется, сейчас в ПСУ Спутник можно реализовать хранение этой информации и через пользовательские поля в разделе "Инвентаризационные данные", но хотелось бы чтобы это были обособленные данные сопряжённые с системой оповещений. На данный момент нет SNMP атрибута для хранения даты последней замены аккумуляторов, а это очень важный показатель в контексте мониторинга и превентивного обслуживания ИБП. Так же не плохо было быть иметь возвращаемый по SNMP атрибут для хранения флага необходимости замены аккумуляторов, смена которого дополнительно сопровождалась бы генерацией трапа.

 

Таймауты простоя и ограничения количества сессий HTTP/SSH/Telnet

В ходе эксплуатации ПСУ Спутник обнаружено, что сессии по протоколам HTTP, SSH, Telnet не имеют таймаутов простоя. То есть любая открытая сессия управления к ПСУ висит без ограничения по времени. Если на ряду с отсутствием ограничения времени сессии в ПСУ не заложено механизма ограничения количества активных соединений, то такая ситуация с точки зрения информационной безопасности чревата тем, что, теоретически к ПСУ злоумышленником может быть открыто множество одновременных соединений, которые в конечном итоге могут исчерпать вычислительный ресурс ПСУ и привести к отказу обслуживания (DoS/DDoS атака). В ТП Инматикс отправлено предложение рассмотреть возможность реализации:
- настройки таймаута неактивной сессии (значением по умолчанию можно сделать, например, 15 минут)
- настройки ограничения количества допустимых активных сессий (значением по умолчанию можно сделать, например, 5 активных сессий для каждого из протоколов HTTP/SSH/Telnet).

 

Уведомления о безуспешных попытках аутентификации

При использовании плат управления APC имеется возможность включения уведомлений в случае безуспешных попыток аутентификации. Это позволяет отслеживать и вовремя реагировать на ситуации с попытками несанкционированного доступа к платам управления. Например, при попытке использовать неверное имя пользователя и/или пароль для подключений по протоколу HTTP больше N-раз мы получаем от модуля управления SNMP трап "Access violation via HTTP.: An unsuccessful attempt to login via HTTP". А при попытке доступа к устройству по протоколу SNMP с неверными данными аутентификации (неверная Community для SNMP v1/v2 или неверные учётные данные для SNMP v3) мы получаем SNMP трап "An authenticationFailure trap signifies that the SNMP…". Было бы хорошо иметь возможность получать оповещения подобного рода при проблемах аутентификации по HTTP/SSH/SNMP/Telnet и от ПСУ Спутник через такие каналы оповещений как SNMP Trap/Почта/Syslog.

 

Встроенный брандмауэр

Так уж выходит, что мы так или иначе пытаемся сопоставлять функционал микрокода ПСУ Спутник с тем, что мы привыкли видеть в микрокоде плат APC NMC, так эти платы имеют, пожалуй, самый широкий набор возможностей.
И если говорить о механизмах сетевой защиты, то можно отметить то, что в платах APC NMC второго и последующих поколений есть такая полезная штука, как встроенный настраиваемый брандмауэр. В нём можно в упрощённом формате настраивать правила сетевого доступа, например, по такому принципу (правила обрабатываются сверху вниз):

  1. Подсети X.X.X.X/X разрешены входящие подключения на порты TCP 22/443 (условный пример разрешающего правила для подсети администраторов);
  2. Хосту Y.Y.Y.Y разрешены входящие подключения на порт UDP 161 (условный пример разрешающего правила для сервера мониторинга);
  3. Разрешён любой исходящий трафик;
  4. Всем всё запрещено во всех направлениях.

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

 

Выводы

В общем и целом имеющийся функционал в протестированных нами платах ПСУ Спутник оставляет положительные впечатления. Есть свои нюансы и нерешённые вопросы, но мы видим, что продукт продолжает развиваться и улучшаться. Важно отметить тот факт, что общение с тех.поддержкой Инматикс показывает здоровый конструктивный отклик и складывается впечатление, что производитель действительно заинтересован в повышении качества своего продукта. Отдельную благодарность за отзывчивость и всестороннюю помощь в решении разных вопросов выражаем техническому директору Инматикс - Артёму Кривко. И в целом всей команде Инматикс пожелаем успешного роста и всестороннего расширения горизонтов.

Только один комментарий Комментировать

  1. Kirill /

    Здравствуйте. Спасибо за столь подобную статью. Подбирая замену ИБП APC, нам один из российских производителей ИБП предложил для работы с их ИБП использовать карту этого производителя (только по протоколу VOLTB). Тоже крайне приятно удивлены внешним исполнением карты, так и программным содержимым и широким выбором настроек. Коллеги тоже крайне заинтересовались, тем что под крышечкой (любопытство гложет). Рассматриваем к приобретению. Успехов и процветания компании "Инматикс".

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