Инструкция по установке
Предварительные условия
-
Установленный и настроенный кластер Kubernetes
-
Настроенный Nexus Repository (или иное хранилище артефактов)
-
Keycloak (или MDP) для авторизации
-
Kafka
-
PostgreSQL
-
Git
Подготовка баз данных
Перед установкой необходимо выполнить job для создания следующих образов базы данных:
-
database-qpuidesigner - БД бэкенд-сервиса
-
database-qpuideipbpm - БД сервиса исполнения бизнес-процессов
-
database-qpuidtheme - БД микросервиса Дизайнер тем
Настройка конфигурации сервисов
Пример настроек общих параметров - независимо от авторизации:
"KAFKA_HOST": "kafka",
"KAFKA_PORT": "9092",
"KAFKA_URL": "kafka:9092",
"CHANNEL_PREFIX": "topicPrefix-",
"DB_TEST_QUERY": "select 1",
"JPA_DIALECT": "org.hibernate.dialect.PostgreSQLDialect",
"SERVICE_PORT": "8080",
"QSAVER_HOST": "",
"QSAVER_URL": "",
"QSAVER_PORT": ""Конфигурация qpuidesigner
"data": {
"ALLOW_ALL_FOR_DEBUG": "false",
"AUTH_PROVIDER": "digitalq",
"CONFELEMENT_KIND": "2",
"EMPLOYEE_FIELD": "empl_code", // Привязка пользователя к проекту интерфейса. Возможные значения - "employee_code", "empl_code", "user_account_id",
"DB_TEST_QUERY": "SELECT 1",
"JAVA_XMS": "768m",
"JAVA_XMX": "1256m",
"JPA_DIALECT": "org.hibernate.dialect.PostgreSQLDialect",
"QPALETTE_VERSION": "registry-new.diasoft.ru/release/qpalette:25012709",
"PERSONAL_DESK_VERSION": "Ссылка на образ личного кабинета (harbor.ru/repository/qdpd:777)",
"ARCHERENVIRONMENT": "true", // Наличие сервиса Q.Archer на стенде
"SERVICE_NAME": "qpuidesigner"
}Конфигурация qpuidsourcepackage
"data": {
"ALLOW_ALL_FOR_DEBUG": "true",
"CONFELEMENT_KIND": "2",
"JAVA_XMS": "500m",
"JAVA_XMX": "768m",
"LIMIT_CPU": "4",
"LIMIT_MEMORY": "2Gi",
"NEXUS_PROXY_URL": "Адрес Nexus",
"SERVICE_API_URL": "Путь к API адаптера через gateway, по умолчанию '/api/qpuidsourcepackage/qpuidsourcepackage'",
"SERVICE_NAME": "qpuidsourcepackage"
}Конфигурация qpuideipbpm
"data": {
"ALLOW_ALL_FOR_DEBUG": "false",
"CONFELEMENT_KIND": "23",
"JAVA_XMS": "1g",
"JAVA_XMX": "2g",
"JPA_DIALECT": "org.hibernate.dialect.PostgreSQLDialect",
"KUBERNETES_LEGACY_MOD": "true",
"LIMIT_CPU": "2",
"LIMIT_MEMORY": "2Gi",
"QBPM_PROCESS_INPUT_TOPICS": "qvcs-coderepository-add-reply;qmsd-dqservdsgnpassport-and-linked-object-reply;qvcs-commit-create-reply;qdesigner-lowcode-command;qdesigner-publish-project-command;qdpbc-pbc-passport-version-event;qdpqmsd-dqservdsgnpassport-command-reply;qdesigner-publish-project-reply",
"QBPM_PROCESS_OUTPUT_TOPICS": "qvcs-coderepository-add-command;qmsd-dqservdsgnpassport-and-linked-object-command;qvcs-commit-create-command;qdesigner-publish-project-reply;qdesigner-publish-project-reply;qdpqmsd-dqservdsgnpassport-command;qdesigner-publish-project-command",
"QBPM_TASK_ACTION_EVENT": "dq-q-bpm-task-action",
"QBPM_TASK_CANCEL_EVENT": "dq-q-bpm-task-cancel",
"QBPM_TASK_CREATE_EVENT": "dq-q-bpm-task-create",
"REQUEST_CPU": "50m",
"REQUEST_MEMORY": "512Mi",
"RIBBON_REFRESH_INTERVAL": "10000",
"SECURITY_ENABLED": "true",
"SERVICE_NAME": "qpuideipbpm",
"SERVICE_PORT": "8080"
}Секреты (Secret) для каждого сервиса
"DB_DATABASE": "database",
"DB_DRIVER": "org.postgresql.Driver",
"DB_HOST": "postgres-host",
"DB_LOGIN": "login",
"DB_PASSWORD": "password",
"DB_PORT": "5432",
"DB_SCHEMA": "schema",
"DB_TYPE": "postgres",
"DB_URL": "jdbc:postgresql://postgres-host:5432/database?currentSchema=schema"Настройка авторизации
Keycloak-авторизация
Для использования сервисов на стенде с Keycloak-авторизацией необходимо:
-
Установить и настроить Keycloak
-
Установить актуальные версии сервисов:
- qdesignerui
- qpuidesigner
- qpuideipbpm
- qpuidsourcepackage
- qpuidtheme
-
Добавить параметры в сервисных конфигурационных файлах Kubernetes
"QOAUTH_MODE": "keycloak",
"RESOURCE_SERVER_ID": "" // Имя клиента в Keycloak,
"AUTH_SERVER_PUBLIC_KEY": "" // Публичный ключ realm Keycloak для формирования сигнатур JWT,
"AUTH_SERVICE": "keycloak",
"TECH_USERNAME": "",
"TECH_PASSWORD": "",
"KEYCLOAK_AUTH_URL": "",
"KEYCLOAK_CLIENT_ID": "",
"KEYCLOAK_CLIENT_SECRET": ""-
Удалить параметр
AUTH_PROVIDER=digitalqиз конфигурационных файлов -
Добавить параметр
KUBERNETES_LEGACY_MOD=trueв системный конфигурационный файл -
Включить параметр
SECURITY_ENABLED=trueв BPM-сервисе -
Перезапустить сервисы
MDP-авторизация
Для использования сервисов на стенде с MDP-авторизацией необходимо:
-
Настроить стенд для работы с MDP
-
Установить актуальные версии сервисов:
- qdesignerui
- qpuidesigner
- qpuideipbpm
- qpuidsourcepackage
- qpuidtheme
-
Добавить параметры в сервисных конфигурационных файлах Kubernetes
"AUTH_SERVER_CONTEXT": "mdpauth",
"AUTH_SERVER_URL": "http://mdpauth:8080",
"AUTH_SERVICE": "mdpauth",
"QOAUTH_MODE": "mdpauth",
"TECH_USERNAME": "",
"TECH_PASSWORD": ""-
Удалить параметр
AUTH_PROVIDER=digitalqиз конфигурационных файлов -
Добавить параметр
KUBERNETES_LEGACY_MOD=trueв системный конфигурационный файл -
Включить параметр
SECURITY_ENABLED=trueв BPM-сервисе -
Перезапустить сервисы
Установка в Kubernetes через Helm
Чтобы установить образы в Kubernetes с помощью Helm, используйте команду
helm install <имя-релиза> <путь-к-chartу> --values <путь-к-файлу-values.yaml>Также можно передать значения напрямую через параметр --set, например:
helm install <имя-релиза> <путь-к-chartу> --set image.tag=v1.0.0Установка через FTSysConfigManager
-
Установите и настройте FTSysConfigManager
-
Запустите инсталляцию компонентов в нужный namespace