Публичное пространство
SetAgent ◾️ Установка и настройка Ubuntu
Правила схемы лицензирования
С одним SetID может быть установлен только один экземпляр службы. Не устанавливайте SetAgent на каждый сервер магазина или для каждого продукта.
Не производите переустановку SetAgent с удалением его локальной БД или установку экземпляра на другую рабочую станцию. Такие действия приведут к остановке работы службы и к отказу выдаче лицензии. Для восстановления работы SetAgent обращайтесь в службу поддержки CSI.
Переустановка лицензируемого продукта приведёт к изменению его GUID. Этому продукту будет выдана новая лицензия, если есть свободные. В противном случае, если номер устройства и привязка его к магазину остались теми же, то лицензия для предыдущей инсталляции высвободится через сутки. Если номер устройства и/или привязка к магазину изменились, то лицензия будет сохраняться за предыдущим экземпляром в течение 10-ти дней. Для досрочного высвобождения привязанных лицензий обращайтесь в службу поддержки CSI.
Логика взаимодействия
Клиент лицензирования, интегрированный в продукты CSI, периодически отправляет запросы SetAgent'у по http-протоколу.
Для разных продуктов существуют следующие виды запросов:
получение лицензий на нужные продукту фичи;
передача в SetAgent информации о продукте (версия, ИНН, тип кассы и прочее).
Требования к серверу
Процессор | ОЗУ (RAM) | Жесткий диск HDD |
---|---|---|
| 2 ГБ и более |
|
Oracle Java 8:
Порты:
|
Установка и настройка
Откройте порты перед установкой SetAgent.
Linux (Ubutnu)
Установка SetAgent
1. Запустите для установки файл setagent.sh:
Выполните команду:
sudo sh ./setagent.sh
2. В процессе установки будет предложено ввести идентификатор клиента SetID. Данный идентификатор предоставляется менеджером.
Введите идентификатор клиента SetID.
SetID предоставляется менеджером.
3. Дождитесь окончания процесса и статуса сообщения Extracting Set Agent files... OK
.
4. Запустите службу SetAgent, для этого выполните команду:
systemctl start setagent.service
5. Перейдите в папку /opt/SetAgent/logs, содержащую лог-файлы установки и обновления SetAgent:
cd /opt/SetAgent/logs
6. Наберите команду mc
для запуска Midnight Commander.
7. Откройте файл SetAgent.log клавишей F3.
9. Найдите в файле лога событие SetAgent upgrade from
, подтверждающее, что обновление началось.
Пример записи:
18.10 11:20:43.227 INFO [ServerEngine] SetAgent upgrade from 1.0.4 to 1.0.17
Если в лог-файле появилось событие вида Invalid answer token
- обратитесь в службу поддержки CSI для сброса статуса SetID.
Пример записи:
28.07 15:00:10.069 ERROR [ServerEngine] Invalid answer token (Next try in 2 minutes)
java.lang.Exception: Invalid answer token
После выполнения заявки службой поддержки и подтверждения сброса SetID перезапустите службу SetAgent и проверьте в логе наличие сообщения SetAgent upgrade from
.
sudo systemctl restart setagent.service
Команды управления службой
Команда | Описание |
---|---|
| Запуск службы |
| Перезапуск службы |
| Останов службы |
| Просмотр состояния службы |
Удаление
1. Перейдите в папку со службой:
cd /opt/SetAgent/
2. Выполните команду для удаления → подтвердите удаление, введя символ y
.
sudo sh ./uninstall.sh
После сообщения Removing Set Agent service...Done
служба удалена.
3. Удалите лог-файлы инсталлятора командами:
sudo rm -rf /tmp/install_sa.log
sudo rm -rf /tmp/uninstall_sa.log
Конфигурация службы
Для того чтобы внести дополнительные настройки в конфигурацию службы, откройте для редактирования файл config.conf:
Linux: /opt/SetAgent/config.conf
Параметр | Значения |
---|---|
|
|
| Номер порта для работы службы от 0 - 65536. По умолчанию 8089 |
| SetID предоставленный менеджером |
Пример config.conf
# Настройки агента
logLevel=INFO
port=8089
[default]
SetId=00000000000012341234
Настройка лимитов файлов и потребления памяти
Кейс
При установке Set Agent на тот же сервер, где установлен Set Centrum, может возникнуть проблема технического характера при выдаче лицензий кассам:
В логе SetAgent возникают ошибки вида
ERROR [ServerEngine] Too many open files
иERROR [ServerEngine] sendAgentStatistics error: HikariPool-1
-Connection is not available, request timed out after 30000ms
Кассы не могут получить лицензию, сообщают об отсутствии лицензии, не могут обновляться, не получают настройки с сервера по “Новой кассе“.
Порядок действий
1. Выполните команду для проверки существующих ограничений максимального количества открытых файлов для Set Agent:
cat /proc/$(pgrep -f "SetAgent.jar")/limits | fgrep 'Max open files'
2. Выполните команду, чтобы проверить текущее потребление файловых дескрипторов процессами java, в том числе SetAgent:
for pid in `pidof java`; do echo "$(< /proc/$pid/cmdline)"; egrep 'files|Limit' /proc/$pid/limits; echo "Currently open files: $(sudo ls -1 /proc/$pid/fd | wc -l)"; echo; done
3. Выполните команду для проверки настроек юнита в systemd для Set Agent:
cat /etc/systemd/system/setagent.service
По умолчанию сервис Set Agent запускается от имени пользователя root.
4. Откройте на редактирование файл /etc/systemd/system/setagent.service
5. Отредактируйте файл → сохраните изменения.
Отредактируйте следующие параметры:
ExecStart=/opt/SetAgent/jre/bin/java -XX:+UseConcMarkSweepGC -XX:+CMSClassUnloadingEnabled -XX:SurvivorRatio=6 -XX:NewRatio=3 -server -XX:MaxMetaspaceSize=50M -Xms128M -Xmx1024M -jar SetAgent.jar
User=jboss
Добавьте параметр
LimitNOFILE=32768
6. Выполните команду для выдачи прав пользователю jboss на каталоги SetAgent
sudo chown -R jboss:users /opt/SetAgent
7. Убедитесь, что права на файлы и каталоги соответствуют выводу:
ls -lh /opt/SetAgent
8. Выполните команду для перезапуска службы SetAgent:
sudo systemctl daemon-reload
sudo systemctl restart setagent
10. Убедитесь, что настройки применились:
cat /proc/$(pgrep -f "SetAgent.jar")/limits | fgrep 'Max open files'
© 1994-2025, ООО «Кристалл Сервис Интеграция».
Все права защищены..