Решения
Кейсы
Блог
О нас
Контакты
Решения
Кейсы
Блог
О нас
Контакты
Решения
Кейсы
Контакты
Решения
Кейсы
Блог
О нас
Контакты

Руководство по установке

1. Термины, определения и сокращения
Применительно к настоящему документу используются ряд терминов и сокращений.

Определения терминов и сокращений

БД — База данных

БО — Бэк-офис

БП — Банк-партнер

МП — Мобильное приложение

ОС — Операционная система

БС — Брокер сообщений

ПБО — Подсистема Бэк-офис

ПВ СС — Подсистема взаимодействия со смежными системами

ПВП БО — Подсистема взаимодействия с веб-приложением

ПВП МП — Подсистема взаимодействия с мобильным приложением

ПУ — Подсистема уведомлений

ПАА — Подсистема аутентификации/авторизации

ПМП — Пользователь мобильного приложения

ПХД БО — Подсистема хранения данных Бэк-офиса

ПА — Подсистема аудита

ПЦ — Процессинговый центр

Система — Информационная система «Finative»

СУБД — Система управления базой данных

ВО (Back-office) — Бэк-офис

JS — JavaScript

JSON — JavaScript Object Notation

xmpp (Extensible Messaging and Presence Protocol) — Расширяемый протокол обмена сообщениями и информацией о присутствии


2. Общие сведения о системе
2.1 Назначение системы
Информационная система «Finative» предназначена для предоставления клиенту финансового института функциональности по дистанционному банковскому обслуживанию на мобильных устройствах, использующих платформы iOS и Android.
2.2 Компоненты системы
Информационная система «Finative» состоит из следующих подсистем, представленных в таблице.

Таблица 1 – Перечень документов, предъявляемых на испытания

3. Подсистема взаимодействия со смежными системами
3.1 Назначение
Подсистема взаимодействия со смежными системами (далее – ПВ СС) предназначена для взаимодействия со следующими сервисами:
- Сервис, обеспечивающий доступ к информации о картах пользователей;
- Сервис SMS Server, обеспечивающий отправку SMS/PUSH-сообщений;
- Сервис предоставления информации о банкоматах.
ПВ СС получает данные как из базы данных Бэк-офиса, так и взаимодействует со следующими смежными системами для получения данных и выполнения действий (команд):
- ПЦ. Процессинговый центр;
- SMS Server – для рассылки кодов подтверждения;
- Сервис информации о банкоматах – для получения информации о банкоматах и отображении на карте в смартфоне;

Таблица 2 - Описание смежных систем

3.2 Архитектура решения
На сервере приложения расположены следующие компоненты (в отдельных докерах):
- Основной модуль – осуществляет формирование запросов и обработке ответов из внешних систем;
- Gateway – получение запроса от клиента (HTTPS) и дальнейшая маршрутизация запроса (HTTP) в подсистемы приложения
3.3 Требования к защите информации от несанкционированного доступа
Реализация обмена производится с использованием шифрованного пароля, согласно спецификации SOAP.
3.4 Технологии Системы
Стандарты и технологии, применяемые для функционирования системы:
- Spring Boot;
- Spring Cloud;
- Postgresql (СУБД)
- Hibernate (взаимодействие с СУБД);
- Docker (развертывание системы в изолированных контейнерах);
3.5 Взаимодействие с внешними системами
Взаимодействие Системы с внешними системами осуществляется при помощи Rest- и Web-сервисов и использовании стандартов SOAP/WSDL и форматов XML/JSON.
Обмен информацией с внешними системами основан на применении в Системе стандартных средств и способов взаимодействия, таких как:
- Сетевой протокол TCP/IP;
- Протоколы Интернет – HTTP(S), FTP;
- Стандарты и технологии Web-служб – REST, JSON, XML, WSDL.
Для реализации различного рода протоколов взаимодействия используются открытые стандарты, созданные на основе языка XML, как языка описания информации. Его открытость даёт гарантию независимости систем от различных поставщиков программных решений и обеспечивает их механизмом развития информационных ресурсов в будущем. Для каждого взаимодействия был разработан собственный формат данных, для некоторых схожих по назначению взаимодействий схема xml-документов.

4. Развертывание системы
4.1 Технические требования к серверу
4.1.1 Требования к платформам функционирования сервера приложения
Минимальные требования к аппаратному обеспечению, необходимому для развертывания и функционирования системы:
- 2-ух ядерный процессор или больше;
- RAM не менее 16 ГБ;
- HDD не менее 40 ГБ;
- ОС Linux;
- Необходимое ПО: Nginx;
- Канал связи с БД не менее 1 ГБит/сек.
4.1.2 Требования к подсистеме хранения данных бэк-офиса
Минимальные требования:
- 8-миядерный процессор или больше;
- RAM не менее 32 ГБ;
- HDD не менее 1 ТБ;
- ОС Linux;
- Необходимое ПО: PostgreSQL версии, не ниже 12.3.
4.1.3 Требования к подсистеме взаимодействия со смежными системами
Минимальные требования:
- 4-х ядерный процессор или больше;
- RAM не менее 4 ГБ;
- HDD не менее 8 ГБ;
- ОС Linux;
- Необходимое ПО: OpenJDK 11.
4.2 Установка Fynative
4.2.1 Подготовка сервера приложений
  1. Распаковать полученный архив apps.tar командой:

[root@srv ~]# tar -tvf apps.tar && rm -r app.tar

  1. Перейти в директорию с распакованным архивом
  2. В файле ./composes/main.dc.yml в строках 16-19 заменить IP адреса на адреса виртуальных машин с соответсвующими сервисами:
- "pg:POSTGRES_IP"
- "kafka:KAFKA_IP"
- "prometheus:PROMETHEUS_IP"
- "logs:LOGS_VM_IP"
  1. Разрешить в firewall порты 8080
  2. Перед запуском необходимо, чтобы были запущены все инфраструктурные сервисы (Postgresql, kafka, logs)
  3. Запустить Docker-compose командой

[root@srv ~]# docker-compose up-f main-app.dc.yml -d

4.2.2 Подготовка сервера kafka.
  1. Распаковать полученный архив kafka.tar командой:

[root@srv ~]# tar -tvf kafka.tar && rm -r kafka.tar

  1. Перейти в директорию с распакованным архивом
  2. Запустить сервис командой:

[root@srv ~]# docker-compose up -f kafka.dc.yml -d

4.2.3 Подготовка сервера сбора логов
  1. Распаковать полученный архив logs.tar командой:

[root@srv ~]# tar -tvf logs.tar && rm -r logs.tar

  1. Перейти в директорию с распакованным архивом
  2. Создать папку

[root@srv ~]# mkdir /opt/apps_logs/

  1. Выставить на нее права для uid=999

[root@srv ~]# chown 999:wheel

  1. Запустить сервис:

[root@srv ~]# docker-compose up -f logs.dc.yml -d

4.2.4 Подготовка сервера мониторинга.
  1. Распаковать полученный архив mon.tar командой:

[root@srv ~]# tar -tvf mon.tar && rm -r mon.tar

  1. Перейти в директорию с распакованным архивом
  2. Отредактировать файл, в строках 7-15 поменять IP на нужные, аналогично пункту 1.
  3. Создать папку:

[root@srv ~]# mkdir /opt/prometheus_db/

  1. Выставить права для пользователя

[root@srv ~]# chown 65534:wheel /opt/prometheus_db/

  1. Запустить сервис:

[root@srv ~]# docker-compose up -f monitoring.dc.yml -d

4.2.5 Подготовка сервера Postgres
  1. В созданной базе данных выполнить вход в утилиту psql командой

[root@srv ~]# psql postgres postgres

  1. Выполнить следующие команды:

[psql]# create user apps createdb login password 'postgres@NhbQpJ';

[psql]# create database apps with owner apps;

[psql]# create database apps_audit with owner apps;



Команды создают пользователя и базы данных необходимые для работы приложений.