Оглавление |
---|
Отображение дочерних |
---|
Обобщенная архитектура ПО LOYA
Подготовка окружения для системы
Для работы приложений LOYA необходимо подготовленное окружение на операционной системе Ubuntu18.04.03LTS.
Для подготовки необходимого окружения нужен хост с установленной операционной системой Ubuntu18.04.03LTS.
Если планируется использовать отдельный диск под DB, то желательно просто подключить дополнительный диск к хосту, не проводя никаких дополнительных настроек по монтированию. Можно использовать уже настроенные разделы, но они должны быть настроены согласно следующим требованиям: раздел для DB должен быть смонтирован в /mnt/lvloyadb/, раздел для Backup должен быть смонтирован в /mnt/lvloyabackup/.
Для подготовки окружения необходимо соблюдение следующих условий:
- Наличие ОС Ubuntu18.04 LTS, установленной на lvm-раздел. Имя пользователя желательно установить как loya с правами sudo, но не обязательно: главное – наличие sudo. Наличие дисков при необходимости, нужно четко знать и понимать, какой диск под какие данные предполагается использовать.
- Наличие SSH-подключения к подготавливаемому хосту.
- Наличие интернета (необходим для установки Java, MySQL, Telegraf, Elasticsearch, ClickHouse, htop, mc, logtop, ntp, и т.п.).
Скрипт настройки окружения необходимо запросить у представителя ПО.
Для настройки окружения нужен скрипт prepare_os.sh. Его надо скачать из репозитория и скопировать удобным способом на хост, на котором необходимо подготовить окружение.
Перед запуском нужно разрешить права на исполнение:
Блок кода |
---|
chmod +x prepare_os.sh |
Также необходимо проверить доступность обновлений:
Блок кода |
---|
apt-get update |
Далее, запускаем сам скрипт с набором необходимых параметров.
Пример запуска скрипта подготовки окружения для локальной сети нашей компании с тестовой лицензией, где все устанавливается на один диск, с названием хоста для мониторинга test_host_prepareos (имя test_host_prepareos будет также добавлено в hostname):
Блок кода |
---|
./prepare_os.sh 0 0 0 0 test_host_prepareos |
Пример запуска скрипта подготовки окружения для хоста, на котором будет только процессинг в локальной сети нашей компании, с названием хоста для мониторинга test_host_prepareos:
Блок кода |
---|
./prepare_os.sh 0 3 0 0 test_host_prepareos |
Параметры запуска скрипта:
Блок кода |
---|
./prepare_os.sh $1 $2 $3 $4 $5 |
$1 =
0 Все сервисы Loya на одном хосте
2 Backend, API, MySQL, Sphinx, Elasticsearch
3 Processing
$2 =
0 Все на одном root-разделе
1 В наличии отдельный hdd под DB
3 В наличии отдельные hdd под DB и Backup
$3 =
0 Локальная сеть нашей компании
1 сеть клиента
$4 =
0 Тестовая лицензия (тестовый сервер лицензирования)
1 Боевая лицензия (боевой сервер лицензирования)
$5 = Имя хоста для мониторинга Grafana
Самые популярные комбинации:
Блок кода |
---|
./prepare_os.sh 0 0 0 0 test_host_prepareos |
Данная команда запустит скрипт и подготовит полное окружение на одном хосте, а также даст для телеграфа название test_host_prepareos (Telegraf полностью настраивается, но при настройке отключается автостарт и выключается, чтобы в базу не слать тесты).
Блок кода |
---|
./prepare_os.sh 2 3 1 1 klient-backend |
Данная команда запустит скрипт и подготовит полное окружение для backend с двумя хардами, один – под БД, второй – под бекапы.
Блок кода |
---|
./prepare_os.sh 3 0 1 1 klient-processing |
Данная команда запустит скрипт и подготовит полное окружение для processing.
После окончания работы скрипта необходимо открыть недостающие порты для clickhouse и цепочек:
sudo ufw allow 8123/tcp
sudo ufw allow 8123
sudo ufw allow 9900/tcp
sudo ufw allow 9900
Подарочные сертификаты:
sudo ufw allow 9092/tcp
sudo ufw allow 9092
sudo ufw allow 9003/tcp
sudo ufw allow 9003
Elasticsearch:
sudo ufw allow 9092/tcp
sudo ufw allow 9092
Инсталляция Backend
Установка
Для инсталляции сервиса loya-backend необходимо:
- Скопировать архив со скриптом развертки backend-x.x.x.tar.gz (необходимо запросить у представителя ПО).
- Скопировать архив на целевой хост в домашний каталог пользователя loya. При копировании архива с помощью программы Winscp выставить опцию "копировать как бинарные файлы".
- Разархивировать архив:
Блок кода |
---|
$ tar xzf backend-X.X.X.tar.gz |
- Повысить привилегии пользователя loya:
Блок кода |
---|
$ sudo su |
- Запустить скрипт установки:
Блок кода |
---|
# ./backend-X.X.X.sh |
При запросе директории для установки, следует указать директорию /home/loya/loya/.
Блок кода |
---|
* Enter installation path or press ENTER to use current (/root/loya) [ENTER]: /home/loya/loya/ |
При запросе порта для работы приложения, ничего указывать не надо, необходимо подтвердить значение по умолчанию вводом Enter.
Блок кода |
---|
* Enter port number (1-65535) or press ENTER to use current (9090) [ENTER] |
Настройка
После установки необходимо прописать лицензионный ключ в файл user.conf, находящийся в директории /home/loya/loya/backend/conf/user.conf.
Запуск
Команда для запуска Loya-backend, в зависимости от версии релиза ОС Ubuntu:
Ubuntu 16-18 $ sudo systemctl start loya-backend Ubuntu 14 $ sudo service loya_backend start |
Команда для остановки Loya-backend:
Ubuntu 16-18 $ sudo systemctl stop loya-backend Ubuntu 14 $ sudo service loya_backend stop |
Команда для перезапуска Loya-backend:
Ubuntu 16-18 $ sudo systemctl restart loya-backend Ubuntu 14 $ sudo service loya_backend restart |
Команда для получения статуса Loya-backend:
Ubuntu 16-18 $ sudo systemctl status loya-backend Ubuntu 14 $ sudo service loya_backend status |
Обновление
Для обновления сервиса loya-backend необходимо:
- Скопировать архив со скриптом развертки backend-x.x.x.tar.gz (необходимо запросить у представителя ПО).
- Скопировать архив на целевой хост в домашний каталог пользователя loya. При копировании архива с помощью программы Winscp выставить опцию "копировать как бинарные файлы".
- Разархивировать архив:
Блок кода |
---|
$ tar xzf backend-X.X.X.tar.gz |
- Повысить привилегии пользователя loya:
Блок кода |
---|
$ sudo su |
- Остановить loya-backend:
Блок кода |
---|
Ubuntu 16-18 #systemctl stop loya-backend Ubuntu 14 #service loya_backend stop |
- Запустить скрипт установки:
Блок кода |
---|
# ./backend-X.X.X.sh |
На этапе копирования conf-файлов, следует ответить N.
Инсталляция Processing
Установка
Для инсталляции сервиса loya-processing необходимо:
- Скопировать архив со скриптом развертки processing-x.x.x.tar.gz (необходимо запросить у представителя ПО).
- Скопировать архив на целевой хост в домашний каталог пользователя loya. При копировании архива с помощью программы Winscp выставить опцию "копировать как бинарные файлы".
- Разархивировать архив:
Блок кода |
---|
$ tar xzf processing-X.X.X.tar.gz |
- Повысить привилегии пользователя loya:
Блок кода |
---|
$ sudo su |
- Запустить скрипт установки:
Блок кода |
---|
# ./processing-X.X.X.sh |
При запросе директории для установки, следует указать директорию /home/loya/loya/.
Блок кода |
---|
* Enter installation path or press ENTER to use current (/root/loya) [ENTER]: /home/loya/loya/ |
При запросе порта для работы приложения, ничего указывать не надо, необходимо подтвердить значение по умолчанию вводом Enter
Блок кода |
---|
* Enter port number (1-65535) or press ENTER to use current (9010) [ENTER] |
- Если у клиента кассы Frontol, то необходимо дополнительно настроить NGINX.
Настройка
После установки необходимо прописать лицензионный ключ в файл user.conf, находящийся в директории /home/loya/loya/processing/conf/user.conf.
Запуск
Команда для запуска Loya-processing, в зависимости от версии релиза ОС Ubuntu:
Ubuntu 16-18 $ sudo systemctl start loya-processing Ubuntu 14 $ sudo service loya_processing start |
Команда для остановки Loya-processing:
Ubuntu 16-18 $ sudo systemctl stop loya-processing Ubuntu 14 $ sudo service loya_processing stop |
Команда для перезапуска Loya-processing:
Ubuntu 16-18 $ sudo systemctl restart loya-processing Ubuntu 14 $ sudo service loya_processing restart |
Команда для получения статуса Loya-processing:
Ubuntu 16-18 $ sudo systemctl status loya-processing Ubuntu 14 $ sudo service loya_processing status |
Обновление
Для обновления сервиса loya-processing необходимо:
- Скопировать архив со скриптом развертки processing-x.x.x.tar.gz (необходимо запросить у представителя ПО).
- Скопировать архив на целевой хост в домашний каталог пользователя loya. При копировании архива с помощью программы Winscp выставить опцию "копировать как бинарные файлы".
- Разархивировать архив:
Блок кода |
---|
$ tar xzf processing-X.X.X.tar.gz |
- Повысить привилегии пользователя loya:
Блок кода |
---|
$ sudo su |
- Остановить loya-processing:
Блок кода |
---|
Ubuntu 16-18 #systemctl stop loya-processing Ubuntu 14 #service loya_processing stop |
- Запустить скрипт установки:
Блок кода |
---|
# ./processing-X.X.X.sh |
На этапе копирования conf-файлов, следует ответить N.
Инсталляция сервиса API-external
Начиная с версии 1.35 LOYA, API был выделен в отдельный сервис, для того чтобы проблемы при перезагрузке или сильной загруженности loya-backend не приводили к проблемам с доступностью API.
Установка
Для инсталляции сервиса loya-api необходимо:
- Скопировать архив со скриптом развертки loya-external-api-x.x.x.tar.gz (необходимо запросить у представителя ПО).
- Скопировать архив на целевой хост в домашний каталог пользователя loya. При копировании архива с помощью программы Winscp выставить опцию "копировать как бинарные файлы".
- Разархивировать архив:
Блок кода |
---|
$ tar xzf loya-external-api-X.X.X.tar.gz |
- Повысить привилегии пользователя loya:
Блок кода |
---|
$ sudo su |
- Запустить скрипт установки:
Блок кода |
---|
# ./loya-external-api-X.X.X.sh |
При запросе директории для установки, следует указать директорию /home/loya/loya/
Блок кода |
---|
* Enter installation path or press ENTER to use current (/root/loya) [ENTER]: /home/loya/loya/ |
При запросе порта для работы приложения, ничего указывать не надо, необходимо подтвердить значение по умолчанию вводом Enter
Блок кода |
---|
* Enter port number (1-65535) or press ENTER to use current (9091) [ENTER] |
- После установки и запуска отдельного API необходимо указать license.client=" " в файл /home/loya/loya/api/conf/user.conf.
Настройка
После установки необходимо прописать лицензионный ключ в файл user.conf, находящийся в директории /home/loya/loya/api/conf/user.conf. Ключ надо вписать в параметр license.client="" между кавычек. Взять ключ можно из конфигурационного файла user.conf бэкенда, расположенного в директории /home/loya/loya/backend/conf/.
Для полноценной работы сервиса необходимо корректно настроить сервис Nginx. Для этого надо воспользоваться скриптом настройки Nginx по инструкции Типовая конфигурация Nginx. В кратком изложении, необходимо скопировать скрипт config-https.sh и запустить его без параметров.
Инструкция по работе со скриптом:
Блок кода |
---|
$ chmod +x config-https.sh $ sudo su |
Первый вариант запуска – когда на хосте необходимо провести либо первоначальную настройку, либо вернуть текущие настройки nginx к первоначальным:
Блок кода |
---|
# ./config-https.sh |
Запуск
Команда для запуска API-external в зависимости от версии релиза ОС Ubuntu:
Ubuntu 16-18 $ sudo systemctl start loya-api Ubuntu 14 $ sudo service loya_api start |
Команда для остановки API-external:
Ubuntu 16-18 $ sudo systemctl stop loya-api Ubuntu 14 $ sudo service loya_api stop |
Команда для перезапуска API-external:
Ubuntu 16-18 $ sudo systemctl restart loya-api Ubuntu 14 $ sudo service loya_api restart |
Команда для получения статуса API-external:
Ubuntu 16-18 $ sudo systemctl status loya-api Ubuntu 14 $ sudo service loya_api status |
Обновление
Для обновления сервиса loya-api необходимо:
- Скопировать архив со скриптом развертки loya-external-api-x.x.x.tar.gz (необходимо запросить у представителя ПО).
- Скопировать архив на целевой хост в домашний каталог пользователя loya. При копировании архива с помощью программы Winscp выставить опцию "копировать как бинарные файлы".
- Разархивировать архив:
Блок кода |
---|
$ tar xzf loya-external-api-X.X.X.tar.gz |
- Повысить привилегии пользователя loya:
Блок кода |
---|
$ sudo su |
- Остановить loya-api:
Блок кода |
---|
Ubuntu 16-18 # systemctl stop loya-api Ubuntu 14 # service loya_api stop |
- Запустить скрипт установки:
Блок кода |
---|
# ./loya-external-api-X.X.X.sh |
На этапе копирования conf-файлов, следует ответить N.