6. Запуск модуля
6.1. Предусловия выполнения первого запуска Counter-provider версии 2.7.0
Приведенные ниже шаги необходимо выполните при первом запуске Counter-provider версии 2.7.0 с персистентностью в Prostore.
Задайте необходимые настройки в конфигурационном файле модуля новой версии.
При кастомизации шага инкремента номеров счетчиков (
counter.increment-gap), он устанавливается одинаковым для всех экземпляров модуля. При установкеincrement-gap >1возможны пропуски генерируемой последовательности значений после обновления или при перезапуске модуля.Для обновления выберите период минимальной прикладной активности
Остановите Counter-provider
Запустите Counter-provider версии 2.7.0 в одном экземпляре.
В случае запуска нескольких экземпляров возможны ошибки при выполнении миграции.
После успешного выполнения миграции (модуль запущен, в логах отсутствуют ошибки миграции) при необходимости выполнить запуск других экземпляров.
В случае наличия в логах ошибок миграции, необходимо устранить возможные причины и повторить запуск одного экземпляра Counter-provider новой версии.
6.2. Доступные способы запуска модуля
Модуль можно запускать помощи Docker, как JAR-файл или с использованием systemd.
Для запуска модуля при помощи Docker введите команду:
docker start <название модуля>
Для запуска модуля из JAR-файла, введите команду:
java
[-Dconfig.location=<путь до application.yml> ]
[-Dlogging.config=logback.xml]
-jar <путь jar>
Команды, заключенные в [], выполняются опционально.
Для запуска модуля при помощи systemd создайте unit-файл /etc/systemd/system/<название модуля>.service со следующим содержимым:
[Unit]
Description=<описание>
After=network.target
[Service]
Type=simple
User=<пользователь>
WorkingDirectory=<путь до каталога с jar и logback.xml>
ExecStart=<путь до исполняемого файла java> -Dconfig.location=<путь до конфига> -Dlogging.config=logback.xml -jar <путь до jar>
Restart=on-failure
RestartSec=5
[Install]
WantedBy=multi-user.target
Примените настройки и запустите сервис:
sudo systemctl daemon-reload
sudo systemctl enable --now <название модуля>.service
7. Остановка модуля
Остановка модуля выполняется при помощи Docker-команды:
docker stop <название модуля>
Для ручной остановки необходимо подключиться по SSH к серверу, найти нужный процесс и остановить его.
Пример:
ps aux | grep <название модуля>
kill <pid>