Установка серверной части в docker¶
Скрипты написаны на Python 3 и выполняют следующие автоматизированные операции:
- Установку и конфигурирование базы данных PostgreSQL
- Запуск sql-скриптов создания и обновления схем БД
- Установку и конфигурирование сервера приложений WildFly
- Развертывание приложения RMS на WildFly
Скрипты *.py
вместе с необходимыми для выполнения файлами сгруппированы по папкам, запускаются из соответствующих папок.
Для первичной установки RMS скрипты выполняются в последовательности, указанной в названии папок (postgres_setup.py
, migrate_db.py
, wildfly_setup.py
, deploy_rms.py
)
Если требуется обновить RMS, из артефакта новой версии, запускаются скрипты migrate_db.py
и deploy_rms.py
Примечание
Для установки Postgresql вне докера перейдите в раздел - Ручная установка и первичная настройка PostgreSQL в CentOS 7
,
затем в раздел - Создание/обновление схем БД (2_migrate_db)
Установка и конфигурирование СУБД PostgreSQL (1_postgres_setup)¶
В файле config/postgres_setup.config
указываются параметры установки БД (по умолчанию запуск в докер контейнере, имя докер контейнера robin-postgres
, имя сети robin
)
В папке images
находится первоначально сконфигурированный докер образ PostgreSQL. В папке build
- файлы для создания этого образа
Для запуска выполнить скрипт postgres_setup.py
В ходе установки будет установлен пароль суперпользователя "postgres"
- postgres
. Так же будут созданы пользователи "user_robin"
, "user_orch"
, "user_quartz"
с паролем Qwerty123
Данные пароли при необходимо поменять и внести правки в конфигурационные файлы migrate_db.config
, wildfly_setup.config
Создание/обновление схем БД (2_migrate_db)¶
Создание/обновление схем БД осуществляется инструментом миграции FlyWay
В файле config/migrate_db.config
находятся параметры запуска команд FlyWay (запуск FlyWay в докере, параметры доступа к БД и т.д.)
В папке images
находится официальный докер образ flyway:6.1.1
В папке sql
- список всех миграций БД. (будут применены только новые, по отношению к текущей версии схемы БД)
Для запуска выполнить скрипт migrate_db.py
Установка и конфигурирование сервера приложений WildFly (3_wildfly_setup)¶
В файле config/wildfly_setup.config
указываются параметры запуска WildFly (запуск WildFly в докере, параметры datasourse
и переменные среды JAVA_OPTS
)
Необходимо выделить достаточное количество ресурсов для сервера приложений. Для этого в переменных JAVA_OPTS
нужно изменить следующие параметры:
- /
Xmx2G
- максимальный размер оперативной памяти выделенной виртуальной машинеJVM
- /
XX:MaxMetaspaceSize=512M
- максимальный размер памяти выделенной под метаданные приложения
В файле config/logging.cli
- пакет команд jboss-cli
для настройки логирования. В них прописаны параметры ротации логов.
В папке certificate
находятся файлы ключей и хранилища сертификатов.
В папке images
- официальный докер образ wildfly:18.0.0.Final
и образ утилиты keytool
В папке jboss
- файлы модулей WildFly необходимых приложению RMS
В папке jdbc-driver
- драйвер postgresql-42.2.8.jar
Для запуска выполнить скрипт wildfly_setup.py
В ходе установки будет запрошен и установлен пароль администратора (для доступа веб консоли WildFly. Консоль доступна на порту 9990
)
Так же установщик попросит указать сертификаты, ввести пароли существующих и создаваемых хранилищ ключей.
В папке certificate/server/
уже лежат тестовые сертификаты. При необходимости заменить на актуальные.
- SSL сертификат агента:
client.crt
- SSL сертификат сервера:
dev-orch.robin.it.ru.pfx
(пароль исходника - 1) - обязательный сертификат верификации RMC:
orchestrator-client.p12
(пароль - Qwerty123, alias - orchestrator-client). Alias и пароль должны быть прописаны вapplication.properties
приложения RMS.
Настройку SSL можно отключить в конфигурационном файле config/wildfly_setup.config
Развертывание приложения RMS на сервер WildFly (4_deploy_rms)¶
В файле config/deploy_rms.config
указываются параметры подключения к серверу WildFly
В папке properties
- файлы свойств приложения RMS.
В папке target
- war-файл приложения RMS
В папке wildfly_updates
- файлы jboss-cli
скрипты обновления конфигурации WildFly (соответствующие версиям RMS)
Для запуска выполнить скрипт deploy_rms.py