5. Установка модуля
Действия по установке выполняются через SSH консоль технологического пользователя.
5.1. Установка КриптоПро
Установка СМЭВ3-адаптера возможна, только если были добавлены ключи (контейнер закрытого ключа) для сервиса «КриптоПро».
В случае использования для электронной подписи сервиса «КриптоПро», необходимо предварительно выполнить шаги:
скачать «КриптоПро JCP» (https://www.cryptopro.ru/download?pid=129) для Java JRE на сервер, где будет установлен СМЭВ3–адаптер;
установить загруженное ПО, следуя инструкции и документации на официальном сайте;
получить сертификат для установки от уполномоченных лиц и установить его в «КриптоПро».
6. Процесс установки
Модуль СМЭВ3-адаптер поставляется в виде JAR-файла. В поставку также входят следующие файлы:
файл настроек конфигурации модуля СМЭВ3-адаптер
application.yml;
сконфигурированные pebble-шаблоны.
Общий процесс установки состоит из следующих действий:
Выполнить предусловия для запуска новой версии модуля.
Настроить конфигурацию модуля.
Создать на сервере директорию для загрузки файлов модуля.
Загрузить файлы модуля в созданную директорию.
Запустить JAR-файл модуля (Описание процесса запуска приведено в разделе Запуск модуля Руководства администратора Компонента «Витрина данных»).
Проверить установку модуля.
6.1. Предусловия выполнения первого запуска новой версии модуля
Начиная с версии 2.6.0 хранение данных персистентности модуля осуществляется в снапшот-таблицах Prostore. Пересоздание таблиц и миграция данных выполняется автоматически при старте модуля.
Для исключения возникновения ошибок миграции, перед первым запуском новой версии компонентов модуля необходимо выполнить следующие действия:
Проверить версию Prostore (Для работы новой версии СМЭВ3-адаптера (с хранением данных персистентности в Prostore) требуется Prostore версии 7.6 и выше).
Проверить тип подключенных датасорсов Prostore (В Prostore данные персистентности хранятся в snapshot-таблицах, которые поддерживаются только в датасорсах с типом ADP):
если все имеющиеся датасорсы с типом ADP, перейти к следующему шагу;
если нет ни одного ADP-датасорса, то необходимо развернуть СУБД PostgreSQL и настроить подключение к Prostore (при отсутствии ADP использование новой версии СМЭВ3-адаптера с персистентностью в Prostore невозможно);
если имеются и ADP, и датасорсы других типов, необходимо в конфигурационном файле СМЭВ3-адаптера задать перечень наименований ADP датасорсов, используемых для обеспечения персистентности;
Опционально - включить выполнение миграции из Zookeeper (В конфигурационном файле нового СМЭВ3-адаптера задать настройки подключения к Zookeeper и установить флаг
MIGRATION_ZK_ENABLE:false).Для обновления выбрать период минимальной прикладной активности.
Остановить выгрузку изменений по расписанию.
Остановить СМЭВ3-адаптер.
Запустить новую версию СМЭВ3-адаптера в одном экземпляре (в случае запуска нескольких экземпляров возможны ошибки при выполнении миграции).
После успешного выполнения миграции (модуль запущен, в логах отсутствуют ошибки миграции) необходимо в конфигурации модуля отключить выполнение миграции из Zookeeper (если была включена) и выполнить запуск других экземпляров при необходимости.
В случае наличия в логах ошибок миграции, необходимо устранить возможные причины и повторить запуск одного экземпляра СМЭВ3-адаптера версии 2.6.0 и выше.
6.2. Настройка конфигурации
Настройка конфигурации выполняется путем редактирования параметров файла конфигурации application.yml.
Пример файла application.yml и возможные настройки конфигурации модуля приведены в разделе Конфигурация СМЭВ3-адаптер (application.yml) Руководства администратора Компонента «Витрина данных».
6.3. Добавление папки для загрузки файлов модуля
Создайте на сервере папку, в которую будут загружены файлы модуля, например, /opt/smev3-adapter.
В случае если ранее была установлена старая версия СМЭВ3-адаптера, сделайте его резервную копию.
6.4. Загрузка файлов на сервер
Загрузите в созданную на предыдущем шаге папку:
JAR-файл модуля;
файл настроек конфигурации модуля СМЭВ3-адаптер (
application.yml);
сконфигурированные pebble-шаблоны.
6.5. Кластеризация модуля
Кластеризация модуля достигается путем запуска копии экземпляра данного модуля. Оптимальным вариантом является использование оркестраторов, например:
Kubernetes;
Openshift;
Docker-swarm;
Nomad.