<< Click to Display Table of Contents >> Администрирование (Linux) > Расширенная установка > Развертывание системы в Kubernetes Порядок развертывания |
![]() ![]() ![]() |
1.Добавьте компоненты системы Directum RX и создайте конфигурационный файл config.yml.
2.Сгенерируйте сертификат для проверки токена доступа к сервисам (Sungero data protection).
4.Скорректируйте параметры в конфигурационном файле config.yml для работы системы в Kubernetes.
5.Запустите сервисы системы с помощью чартов (Helm Charts) и опубликуйте стандартную прикладную разработку Directum RX.
Добавление компонентов и создание конфигурационного файла
На узле администрирования:
1.В службе поддержки Directum RX запросите доступ к репозиторию с docker-образами.
2.Архив с Directum Launcher распакуйте в локальную папку на сервере. Подробнее см. инструкцию по установке системы, раздел «Серверная часть Directum RX» (Windows, Linux).
3.В корень папки скопируйте архивы компонентов в зависимости от используемой ОС:
•Platform.zip или Platform.tar.gz – веб-сервер и сервисы Directum RX;
•DirectumRX.zip или DirectumRX.tar.gz – набор стандартных шаблонов документов, утилита RxCmd и стандартная прикладная разработка Directum RX.
4.Запустите Directum Launcher. Подробнее см. инструкцию по установке системы, раздел «Серверная часть Directum RX» (Windows, Linux).
5.На странице Развертывание убедитесь, что выбран режим Установка, и заполните настройки веб-сервера. При заполнении полей укажите:
Протокол. Оставьте в поле значение http. При необходимости протокол можно изменить перед запуском сервисов и публикацией разработки.
Сервер БД:
•в полях Пользователь и Пароль укажите данные пользователя сервера БД с привилегиями суперпользователя. Если пользователь еще не создан, это можно сделать позже, на этапе создания базы данных;
•оставьте пустыми поля Администратор и Пароль.
directumrx. Проверьте, что флажок установлен.
6.Нажмите на кнопку Сохранить.
В результате сгенерируется конфигурационный файл config.yml. Путь до файла: <Папка с Directum Launcher>/etc/config.yml.
Генерация сертификата Sungero data protection
Сгенерируйте сертификат для проверки токена доступа к сервисам (Sungero data protection). Для этого перейдите в папку с Directum Launcher и выполните команду:
do generate_data_protection_cert_from_config
./do.sh generate_data_protection_cert_from_config
ПРИМЕЧАНИЕ. Если сертификат генерируется на компьютере с операционной системой Microsoft Windows Server 2012/2012R2/2016, то команду генерации сертификата для проверки токена доступа к сервисам выполняйте с параметром --legacy:
do generate_data_protection_cert_from_config --legacy
./do.sh generate_data_protection_cert_from_config --legacy
В результате генерируется сертификат по пути, заданному в параметре DATA_PROTECTION_CERTIFICATE_FILE, с паролем, указанным в DATA_PROTECTION_CERTIFICATE_FILE_PASSWORD.
1.Задайте переменные окружения для пользователя, от имени которого будет создана база данных:
set CONNECTION_STRING_ADMIN_USERNAME=<Имя пользователя сервера БД>
set CONNECTION_STRING_ADMIN_PASSWORD=<Пароль>
export CONNECTION_STRING_ADMIN_USERNAME=<Имя пользователя сервера БД>
export CONNECTION_STRING_ADMIN_PASSWORD=<Пароль>
Где:
CONNECTION_STRING_ADMIN_USERNAME – имя пользователя сервера БД с правами администратора. Права администратора есть у пользователей, которые на сервере БД включены в роль sysadmin (для Microsoft SQL) или в роль с атрибутом superuser (для СУБД на основе PostgreSQL). Для повышения информационной безопасности не рекомендуется указывать стандартного пользователя: sa – для Microsoft SQL, postgres – для СУБД на основе PostgreSQL;
CONNECTION_STRING_ADMIN_PASSWORD – пароль пользователя сервера БД, указанного в переменной CONNECTION_STRING_ADMIN_USERNAME.
Переменные окружения хранятся только в текущей сессии командной строки, поэтому данные защищены от компрометации.
2.Перейдите в папку с Directum Launcher и выполните команду для создания базы данных:
do db up
./do.sh db up
1.Откройте на редактирование конфигурационный файл config.yml. Путь до файла: <Папка с Directum Launcher>/etc/config.yml.
2.Из секции services удалите секции:
•GenericService;
• IIS и ServiceRunner;
• SungeroHaproxy.
Добавьте секции SungeroWorker, ReportService, WorkflowBlockService, SungeroWidgets, IndexingService, InitialIndexing с базовыми настройками.
Пример настройки:
SungeroWorker:
<<: *base
ReportService:
<<: *base
WorkflowBlockService:
<<: *base
SungeroWidgets:
<<: *base
IndexingService:
<<: *base
InitialIndexing:
<<: *base
3.В секцию variables добавьте переменную use_host_fqdn_for_check и укажите для нее значение true.
4.В секцию logs_path добавьте параметр LOG_TO со значением stdout.
5.В секцию common_config добавьте параметр ENABLE_SCALING и укажите для него значение true.
6.Во всех параметрах конфигурационного файла замените переменную {{ host_fqdn }} на ее значение, переменную {{ home_path }} – на /app.
7.В параметре DATA_PROTECTION измените путь на /app/cert.pfx.
8.В секции RxCmd заполните параметр INTEGRATION_SERVICE_URL.
9.В секциях всех сервисов измените значение порта на 15672.
Пример настройки:
SungeroWebServer:
WEB_HOST_HTTP_PORT: 15672
SungeroWebClient:
WEB_HOST_HTTP_PORT: 15672
IntegrationService:
WEB_HOST_HTTP_PORT: 15672
StorageService:
PORT: 15672
PreviewStorage:
DEFAULT_SERVICE_PORT: 15672
ClientsConnectionService:
SERVICE_PORT: 15672
SungeroCentrifugo:
port: 15672
LogService:
PORT: 15672
10.В секции ClientsConnectionService в параметре CENTRIFUGO_API_URI укажите значение 'http://sungerocentrifugo:15672/api'.
11.В секции SungeroCentrifugo в параметре proxy_connect_endpoint укажите значение 'http://clientsconnectionservice:15672/authorize'.
12.Откройте файл values.yaml. Путь до файла:
<Папка с Helm Chart>/services-up/values.yaml
Из файла values.yaml в config.yml скопируйте секции:
•global. В параметрах укажите:
registry – адрес репозитория;
version – номер версии docker-образов.
•k8s с секциями secrets и services.
В значение параметра DATA_PROTECTION_CERTIFICATE скопируйте сертификат для проверки токена доступа к сервисам (Sungero data protection) в кодировке Base64. Путь до сертификата указан в конфигурационном файле config.yml в параметре DATA_PROTECTION_CERTIFICATE_FILE.
Например, для кодирования можно использовать OpenSSL:
openssl.exe base64 -A -in "<Путь до сертификата>"
В секции services для секций StorageService и PreviewStorage в параметре storageSize задайте объем дискового пространства, необходимый для хранения документов и файлов предпросмотра соответственно. Также укажите значение в параметре storageClass – класс, который используется в Kubernetes.
Пример настройки:
k8s:
secrets:
DATA_PROTECTION_CERTIFICATE: |-
BASE64CERT
services:
StorageService:
storageClass: "longhorn-storage"
storageSize: "100Gi"
PreviewStorage:
storageClass: "longhorn-storage"
storageSize: "1Gi"
Запуск сервисов и публикация стандартной разработки
ВАЖНО. Для доступа к системе рекомендуется использовать защищенный протокол HTTPS. Вариант работы по протоколу HTTP не рекомендуется использовать для удаленного доступа к системе Directum RX. Допускается только для работы в локальной сети, например, для тестирования системы. В этом случае данные от клиентских приложений передаются к серверу по сети в открытом виде.
1.Настройте работу системы по протоколу HTTPS. Подробнее см. в документации Kubernetes статью Ingress, раздел TLS.
Также вы можете настроить доступ по протоколу через конфигурационный файл config.yml. Так как возможны разные способы настройки, то по умолчанию TLS отключен.
1.В секции k8s.secrets в параметре tls.enabled укажите значение true. 2.В параметре ingress_tls для сертификата SSL/TLS укажите ключи в кодировке base64: tls.crt – отрытый ключ; tls.key – закрытый ключ. 3.В карточке хранилища в поле Адрес сайта измените протокол доступа к сервису хранилищ. |
2.Установите Helm Chart развертывания сервисов:
helm upgrade <ReleaseName> --install -f <Путь до config.yml> <Путь до папки с Helm Сhart>
Пример команды:
helm upgrade rx-services --install -f D:\rx_k8s\ets\config.yml D:\rx_k8s\etc\plugins\platform_plagin\helm_chart\services_up
3.Проверьте доступность сайта по адресу, указанному в параметре host_fqdn в конфигурационном файле config.yml. Проверьте соединение с файловым хранилищем.
4.Опубликуйте стандартную прикладную разработку:
do rx install
./do.sh rx install
Если в результате публикации возникла ошибка, то:
1.Проверьте и при необходимости скорректируйте настройки:
•правильность указанного в config.yml протокола: HTTP или HTTPS;
•доступность файлового хранилища;
•доступность сервиса интеграции по URL, указанному в секции RxCmd конфигурационного файла config.yml.
2.Перепубликуйте разработку принудительно:
do rx install --force-install
./do.sh rx install --force-install
© Компания Directum, 2024 |