LoQR — различия между версиями

Материал из PayControl Wiki
Перейти к: навигация, поиск
(Windows)
 
(не показано 12 промежуточных версий 1 участника)
Строка 1: Строка 1:
 
=Инсталляция=
 
=Инсталляция=
 +
==Linux==
 
# Установить на серверы '''LoQR Internal''' и '''LoQR External''' Java Runtime Environement (8/11).
 
# Установить на серверы '''LoQR Internal''' и '''LoQR External''' Java Runtime Environement (8/11).
 
# Создать БД Redis, доступную для '''LoQR Internal''' и '''LoQR External'''.
 
# Создать БД Redis, доступную для '''LoQR Internal''' и '''LoQR External'''.
Строка 53: Строка 54:
 
REDIS_HOST=redis-hostname
 
REDIS_HOST=redis-hostname
 
REDIS_DB=1</syntaxhighlight>
 
REDIS_DB=1</syntaxhighlight>
 +
# Указать в external/application.yml адрес самого LoQR External:
 +
#* <syntaxhighlight lang="yaml">
 +
  url: "http://loqr-ext-hostname:loqr-ext-port"
 +
</syntaxhighlight>
 
# Запустить инсталлятор
 
# Запустить инсталлятор
 
#* на сервере '''LoQR Internal''':<syntaxhighlight lang="bash">./install internal</syntaxhighlight>
 
#* на сервере '''LoQR Internal''':<syntaxhighlight lang="bash">./install internal</syntaxhighlight>
 
#* на сервере '''LoQR External''':<syntaxhighlight lang="bash">./install external</syntaxhighlight>
 
#* на сервере '''LoQR External''':<syntaxhighlight lang="bash">./install external</syntaxhighlight>
 +
 +
==Windows==
 +
 +
=== winsw ===
 +
 +
https://www.baeldung.com/spring-boot-app-as-a-service#1-windows-service-wrapper
 +
 +
=== NSSM ===
 +
 +
* Установить на серверы '''LoQR Internal''' и '''LoQR External''' Java Runtime Environement (8/11).
 +
* Создать БД Redis, доступную для '''LoQR Internal''' и '''LoQR External'''.
 +
* Загрузить стабильный NSSM (http://nssm.cc/download) и распаковать папку nssm.
 +
* Положить в одну папку файлы loqr-internal*.jar/loqr-extertnal*.jar и application.yml.
 +
* Открыть терминал от Администратора->перейти в папку *\nssm\win64
 +
* Для установки будет использован файл win64\nssm.exe, SHA-256  f689ee9af94b00e9e3f0bb072b34caaf207f32dcb4f5782fc9ca351df9a06c97
 +
* Пример установки:
 +
[[Файл:LoQ_example.jpg]]
 +
* Установка LoQR Internal, как сервис:
 +
 +
Перейдите в папку nssm->win64 и в терминале выполните команду:
 +
nssm install LoQInt
 +
 +
В открывшихся настройках сервиса:
 +
Path - путь до java.exe
 +
Startup directory - указать путь к папке с loqr-internal
 +
Arguments - параметры запуска - "-Xms256m -Xmx512m -jar C:\"путь к папке с loqr-internal"\loqr-internal-1.0.34.jar --logging.file=C:\"путь к папке с loqr-internal"\app.log"
 +
* Установка LoQR External, как сервис
 +
Перейдите в папку nssm->win64 и терминале выполните команду:
 +
nssm install LoQExt
 +
 +
В открывшихся настройках сервиса:
 +
Path - путь до java.exe
 +
Startup directory - указать путь к папке с loqr-external
 +
Arguments - параметры запуска - "-Xms256m -Xmx512m -jar C:\"путь к папке с loqr-external"\loqr-external-1.0.34.jar --logging.file=C:\"путь к папке с loqr-external"\app.log"
 +
* Логи будут записываться в файл app.log рядом с jar-файлом.
 +
* После конфигурирования можно запускать сервисы.
 +
 
=Конфигурирование=
 
=Конфигурирование=
 
==Включение TLS==
 
==Включение TLS==
Строка 79: Строка 121:
 
         min-idle: 8
 
         min-idle: 8
 
</syntaxhighlight>
 
</syntaxhighlight>
 +
 
==Пример полной конфигурации==
 
==Пример полной конфигурации==
 
<syntaxhighlight lang="yaml">
 
<syntaxhighlight lang="yaml">
Строка 106: Строка 149:
 
       pool:
 
       pool:
 
         min-idle: 8
 
         min-idle: 8
 +
</syntaxhighlight>
 +
=Администрирование=
 +
==Запуск и остановка служб сервера LoQR==
 +
Запуск:
 +
<syntaxhighlight lang="bash">
 +
systemctl start pc-loqr-external
 +
systemctl start pc-loqr-internal
 +
</syntaxhighlight>
 +
Остановка:
 +
<syntaxhighlight lang="bash">
 +
systemctl stop pc-loqr-external
 +
systemctl stop pc-loqr-internal
 +
</syntaxhighlight>
 +
Перезапуск:
 +
<syntaxhighlight lang="bash">
 +
systemctl restart pc-loqr-external
 +
systemctl restart pc-loqr-internal
 +
</syntaxhighlight>
 +
==Просмотр журналов==
 +
<syntaxhighlight lang="bash">
 +
journalctl -u pc-loqr-external
 +
journalctl -u pc-loqr-internal
 
</syntaxhighlight>
 
</syntaxhighlight>

Текущая версия на 12:56, 7 декабря 2022

Инсталляция

Linux

  1. Установить на серверы LoQR Internal и LoQR External Java Runtime Environement (8/11).
  2. Создать БД Redis, доступную для LoQR Internal и LoQR External.
  3. Распаковать архив с инсталлятором.
  4. Разрешить запуск файла install.
  5. Скопировать конфигурационные файлы internal.conf.DEFAULT и external.conf.DEFAULT в файлы internal.conf и external.conf соответственно.
  6. В файлах internal.conf и external.conf указать необходимые конфигурационные параметры.
    • internal.conf
      # Installator Params (NOT NEED TO MODIFY) - Параметры инсталлятора. Не стоит изменять при необходимости.
      PC_MODULE=internal 
      PC_TITLE="PC LoQR Internal"
      PC_MODULE_FILENAME=loqr-1.0-25.jar
      
      # PC LoQR Internal Params
      
      ## Self params - Протокол доступа, имя сервера LoQR Internal, порт, пользователь, под которым будет запускаться служба.
      PC_URL=http://loqr-int-hostname
      PC_PORT=8098
      PC_USER=pc_user
      
      ## Another components addressation - Расположение прочих компонентов
      
      ### PC LoQR External
      PC_LOQR_EXT_URI=http://loqr-ext-hostname:8099
      
      ### PC Server
      PC_SERVER_URI=https://pc-server-hostname/pc-api/
      
      ### Redis
      REDIS_PORT=6379
      REDIS_HOST=redis-hostname
      REDIS_DB=1
      
    • external.conf
      # Installator Params (NOT NEED TO MODIFY)
      PC_MODULE=external
      PC_TITLE="PC LoQR External"
      PC_MODULE_FILENAME=loqr-external-1.0-25.jar
      
      
      # PC LoQR External Params
      
      ## Self params
      PC_URL=http://loqr-ext-hostname
      PC_PORT=8099
      PC_USER=pc_user
      PC_QR_LOGO=logo.png
      
      ## Another components addressation
      
      ### PC LoQR Internal
      PC_LOQR_INT_URI=http://loqr-int-hostname:8098
      
      ### Redis
      REDIS_PORT=6379
      REDIS_HOST=redis-hostname
      REDIS_DB=1
      
  7. Указать в external/application.yml адрес самого LoQR External:
    •   url: "http://loqr-ext-hostname:loqr-ext-port"
      
  8. Запустить инсталлятор
    • на сервере LoQR Internal:
      ./install internal
      
    • на сервере LoQR External:
      ./install external
      

Windows

winsw

https://www.baeldung.com/spring-boot-app-as-a-service#1-windows-service-wrapper

NSSM

  • Установить на серверы LoQR Internal и LoQR External Java Runtime Environement (8/11).
  • Создать БД Redis, доступную для LoQR Internal и LoQR External.
  • Загрузить стабильный NSSM (http://nssm.cc/download) и распаковать папку nssm.
  • Положить в одну папку файлы loqr-internal*.jar/loqr-extertnal*.jar и application.yml.
  • Открыть терминал от Администратора->перейти в папку *\nssm\win64
  • Для установки будет использован файл win64\nssm.exe, SHA-256 f689ee9af94b00e9e3f0bb072b34caaf207f32dcb4f5782fc9ca351df9a06c97
  • Пример установки:

LoQ example.jpg

  • Установка LoQR Internal, как сервис:
Перейдите в папку nssm->win64 и в терминале выполните команду:
nssm install LoQInt
В открывшихся настройках сервиса:
Path - путь до java.exe
Startup directory - указать путь к папке с loqr-internal
Arguments - параметры запуска - "-Xms256m -Xmx512m -jar C:\"путь к папке с loqr-internal"\loqr-internal-1.0.34.jar --logging.file=C:\"путь к папке с loqr-internal"\app.log"
  • Установка LoQR External, как сервис
Перейдите в папку nssm->win64 и терминале выполните команду:
nssm install LoQExt
В открывшихся настройках сервиса:
Path - путь до java.exe
Startup directory - указать путь к папке с loqr-external
Arguments - параметры запуска - "-Xms256m -Xmx512m -jar C:\"путь к папке с loqr-external"\loqr-external-1.0.34.jar --logging.file=C:\"путь к папке с loqr-external"\app.log"
  • Логи будут записываться в файл app.log рядом с jar-файлом.
  • После конфигурирования можно запускать сервисы.

Конфигурирование

Включение TLS

Чтобы включить TLS необходимо в конфигурационном файле application.yml LoQR External в секцию server добавить записи:

  ssl:
    key-store-type: PKCS12
    key-store: <path-to-pkcs-12-file>
    key-store-password: <pkcs-12 password>
    key-alias: <key-alias>

Аутентификация в Redis

Для аутентификации по паролю в Redis необходимо его указать в параметрах подключения, в поле password:

spring:
  redis:
    host: redis.example.com
    port: 6379
    database: 1
    password: pass
    lettuce:
      pool:
        min-idle: 8

Пример полной конфигурации

server:
  port: 8099
  address: 0.0.0.0
  ssl:
    key-store-type: PKCS12
    key-store: /media/keystore/examcont.p12
    key-store-password: 874814
    key-alias: examplecont
loqrExternal:
  url: "http://loqr.example.com:8099"
  loqr: "http://loqr.example.com:8098"
  logoQRPath: "/opt/loq/logo_.png"
  logoOn: true
  timeoutInSecond:
    QR: 120
    session: 600
spring:
  redis:
    host: redis.example.com
    port: 6379
    database: 1
    password: pass
    lettuce:
      pool:
        min-idle: 8

Администрирование

Запуск и остановка служб сервера LoQR

Запуск:

systemctl start pc-loqr-external
systemctl start pc-loqr-internal

Остановка:

systemctl stop pc-loqr-external
systemctl stop pc-loqr-internal

Перезапуск:

systemctl restart pc-loqr-external
systemctl restart pc-loqr-internal

Просмотр журналов

journalctl -u pc-loqr-external
journalctl -u pc-loqr-internal