Установка приложения

Инструкция по установке

Предварительные условия

  • Установленный и настроенный кластер Kubernetes

  • Настроенный Nexus Repository (или иное хранилище артефактов)

  • Keycloak (или MDP) для авторизации

  • Kafka

  • PostgreSQL

  • Git

Подготовка баз данных

Перед установкой необходимо выполнить job для создания следующих образов базы данных:

  • database-qpuidesigner - БД бэкенд-сервиса

  • database-qpuideipbpm - БД сервиса исполнения бизнес-процессов

  • database-qpuidtheme - БД микросервиса Дизайнер тем

Настройка конфигурации сервисов

Пример настроек общих параметров - независимо от авторизации:

   "KAFKA_PORT": "9092",
   "KAFKA_URL": "kafka:9092",
   "CHANNEL_PREFIX": "topicPrefix-",
   "DB_TEST_QUERY": "select 1",
   "JPA_DIALECT": "org.hibernate.dialect.PostgreSQL95Dialect",
   "SERVICE_PORT": "8080",
    QSAVER_HOST: "",
    QSAVER_URL: "",
    QSAVER_PORT: ""

Конфигурация qpuidesigner

    "ARCHERENVIRONMENT": "Наличие сервиса Q.Archer на стенде"

Конфигурация qpuidsourcepackage

   "NEXUS_PROXY_URL": "Адрес Nexus",
   "SERVICE_API_URL": "Путь к API адаптера через gateway, по умолчанию '/api/qpuidsourcepackage/qpuidsourcepackage'"

Конфигурация qpuideipbpm

    "ALLOW_ALL_FOR_DEBUG": "false",
    "CAMUNDA_METRICS_ENABLE": "true",
    "CAMUNDA_TASK_METRICS_ENABLE": "true",
    "FAILED": "NONE",
    "FROM_MODEL_DESIGNER_EVENTS": "from.model.designer.events",
    "JPA_DIALECT": "ru.diasoft.micro.jpa.persist.type.JSONBPostgreSQLDialect",
    "LIQUIBASE_ENABLED": "false",
    "QBPM_HISTORY_TIME_TO_LIVE": "P1D",
    "QBPM_MODE": "dev",
    "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",
    "SERVICE_NAME": "qpuideipbpm",
    "SERVICE_PORT": "8080",
    "TO_MODEL_DESIGNER_EVENTS": "to.model.designer.events

Секреты (Secret) для каждого сервиса

   "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-авторизацией необходимо:

  1. Установить и настроить Keycloak

  2. Установить актуальные версии сервисов:

  • qdesignerui
  • qpuidesigner
  • qpuideipbpm
  • qpuidsourcepackage
  • qpuidtheme
  1. Добавить параметры в сервисных конфигурационных файлах Kubernetes
   "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": ""
  1. Удалить параметр AUTH_PROVIDER=digitalq из конфигурационных файлов

  2. Добавить параметр KUBERNETES_LEGACY_MOD=trueв системный конфигурационный файл

  3. Включить параметр SECURITY_ENABLED=trueв BPM-сервисе

  4. Перезапустить сервисы

MDP-авторизация

Для использования сервисов на стенде с MDP-авторизацией необходимо:

  1. Настроить стенд для работы с MDP

  2. Установить актуальные версии сервисов:

  • qdesignerui
  • qpuidesigner
  • qpuideipbpm
  • qpuidsourcepackage
  • qpuidtheme
  1. Добавить параметры в сервисных конфигурационных файлах Kubernetes
   "AUTH_SERVER_URL": "http://mdpauth:8080",
   "AUTH_SERVICE": "mdpauth",
   "QOAUTH_MODE": "mdpauth",
   "TECH_USERNAME": "",
   "TECH_PASSWORD": ""
  1. Удалить параметр AUTH_PROVIDER=digitalq из конфигурационных файлов

  2. Добавить параметр KUBERNETES_LEGACY_MOD=trueв системный конфигурационный файл

  3. Включить параметр SECURITY_ENABLED=trueв BPM-сервисе

  4. Перезапустить сервисы

Установка в Kubernetes через Helm

Чтобы установить образы в Kubernetes с помощью Helm, используйте команду

helm install <имя-релиза> <путь-к-chartу> --values <путь-к-файлу-values.yaml>

Также можно передать значения напрямую через параметр --set, например:

helm install <имя-релиза> <путь-к-chartу> --set image.tag=v1.0.0

Установка через FTSysConfigManager:

  • Установите и настройте FTSysConfigManager

  • Запустите инсталляцию компонентов в нужный namespace