# Параметры конфигурации контроллеров и сервисов управления данными и отслеживания экспериментов ## Конфигурация сервиса управления данными ### Конфигурация подключения объектного хранилища | Имя параметра | Обязательный | Назначение | |----------------------------------------|--------------|-----------------------------------------------------------------------------| | UNIP_BOXES_S3_DEFAULT_USER_DATA_BUCKET | Да | Имя бакета, используемого для хранения данных DataBox типа s3DefaultStorage | | UNIP_BOXES_S3_SECRET_NAME | Да | Secret с реквизитами доступа к объектному хранилищу | | UNIP_BOXES_S3_DEFAULT_HOST | Да | Адрес объектного хранилища, используемого по умолчанию | | UNIP_BOXES_S3_DEFAULT_REGION | Да | Регион в объектном хранилище, используемый по умолчанию | ## Конфигурация сервиса отслеживания экспериментов ### Общие параметры конфигурации | Имя параметра | Обязательный | Назначение | |--------------------------------|--------------|---------------------------------------------------------------------| | UNIP_DOMAIN | Да | Имя основного домена | | UNIP_FILES_API | Да | Внутренний адрес API сервиса управления данными | | UNIP_PIPELINES_API | Да | Внешний адрес API сервиса отслеживания экспериментов | | UNIP_PIPELINE_VALIDATION_IMAGE | Да | Имя валидационного образа конвейера эксперимента | | UNIP_PIPELINE_RUN_MODE | Нет | Если Debug, то этап валидации результатов не добавляется в конвейер | | UNIP_DATETIME_FORMAT | Нет | Формат для хранения временных данных | ### Конфигурация подключения к системной СУБД | Имя параметра | Обязательный | Назначение | |----------------------------------|--------------|---------------------------------------------------| | UNIP_DATABASE_PIPELINES_USER | Да | Имя пользователя СУБД | | UNIP_DATABASE_PIPELINES_PASSWORD | Да | Пароль пользователя СУБД | | UNIP_DATABASE_PIPELINES_HOST | Да | Адрес хоста СУБД | | UNIP_DATABASE_PIPELINES_PORT | Да | Порт сервиса СУБД | | UNIP_DATABASE_PIPELINES_DB | Нет | Имя базы данных сервиса отслежвания экспериментов | ## Конфигурация контроллеров ### Общие параметры конфигурации | Имя параметра | Обязательный | Назначение | |--------------------------------|--------------|---------------------------------------------------------------------| | UNIP_DOMAIN | Да | Имя основного домена | | UNIP_FILES_API | Да | Внутренний адрес API сервиса управления данными | | UNIP_PIPELINES_API | Да | Внешний адрес API сервиса отслеживания экспериментов | ### Конфигурация подключения объектного хранилища | Имя параметра | Обязательный | Назначение | |----------------------------------------|--------------|-----------------------------------------------------------------------------| | UNIP_BOXES_S3_DEFAULT_USER_DATA_BUCKET | Да | Имя бакета, используемого для хранения данных DataBox типа s3DefaultStorage | | UNIP_BOXES_CSI_S3_SECRET_NAME | Да | Secret с реквизитами доступа к объетному хранилищу | | UNIP_BOXES_CSI_S3_STORAGE_CLASS | Да | Внешний адрес API сервиса отслеживания экспериментов | ### Конфигурация подключения сервиса развертывания | Имя параметра | Обязательный | Назначение | |------------------|--------------------|--------------------------------------------------------------------------------------------------------------------------------| | ARGO_CD_ENABLED | Да (кроме отладки) | Если True, то сервис развертывания подключен, иначе не подключен. Отключение сервиса развертывания возможно только для отладки | | ARGO_CD_USER | Да (кроме отладки) | Имя пользователя администратора сервиса развертывания | | ARGO_CD_PASSWORD | Да (кроме отладки) | Пароль пользователя администратора сервиса развертывания | | ARGO_CD_API | Да (кроме отладки) | Адрес API сервиса развертывания вида https:///api/v1 | ### Конфигурация подключения внешнего поставщика реквизитов (OIDC провайдера) | Имя параметра | Обязательный | Назначение | |-----------------------------------------------------------|--------------|----------------------------------------------------------------------------------------------| | OIDC_END_USERS_ISSUER_URL | Да | URL эмитента для реалма конечных пользователей | | OIDC_END_USERS_REALM | Да | Реалм конечных пользователей | | OIDC_END_USERS_CLIENT_ID | Да | Идентификатор публичного клиента в реалме конечных пользователей | | OIDC_END_USERS_CLIENT_SECRET | Да | Значение-заглушка секрета публичного клиента в реалме конечных пользователей | | OIDC_END_USERS_ADMIN_CLIENT_ID | Да | Идентификатор административного клиента в реалме конечных пользователей | | OIDC_END_USERS_ADMIN_CLIENT_SECRET | Да | Секрет административного клиента в реалме конечных пользователей | | OIDC_END_USERS_AUD | Да | aud реалма конечных пользователей | | OIDC_END_USERS_COOKIE_SECRET | Да | Значение-заглушка секрета cookie для реалма конечных пользователей | | OIDC_ROBOTS_ISSUER_URL | Да | URL эмитента для реалма робот аккаунтов | | OIDC_ROBOTS_REALM | Да | Реалм робот аккаунтов | | OIDC_ROBOTS_CLIENT_ID | Да | Идентификатор публичного клиента в реалме робот аккаунтов | | OIDC_ROBOTS_CLIENT_SECRET | Да | Значение-заглушка секрета публичного клиента в реалме робот аккаунтов | | OIDC_ROBOTS_ADMIN_CLIENT_ID | Да | Идентификатор административного клиента в реалме робот аккаунтов | | OIDC_ROBOTS_ADMIN_CLIENT_SECRET | Да | Секрет административного клиента в реалме робот аккаунтов | | OIDC_ROBOTS_AUD | Да | aud реалма робот аккаунтов | | OIDC_KEYCLOAK_HOST | Да | Адрес хоста Keycloak | | OIDC_MANAGED_GROUPS_ROOT | Нет | Имя корневой группы для групп, управляемых контроллером | | OIDC_CLUSTER_GROUP_NAME | Нет | Имя группы кластера, которая включает в себя группы, управляемые контроллером | | OIDC_MODIFY | Нет | Если True, то создает и удаляет необходимые ресурсы Keycloak, иначе только проверяет наличие | | UNIP_REPOSITORY_KEYCLOAK_ROBOTS_CREDS_NAMESPACE | Нет | Пространство имен для хранения реквизитов робот аккаунтов | | UNIP_REPOSITORY_KEYCLOAK_ROBOTS_TOKENS_RENEWAL_PERIOD_MIN | Нет | Время обновления токенов робот аккаунтов | ### Конфигурация контроллера модулей данных | Имя параметра | Обязательный | Назначение | |-----------------------------------------------|--------------|------------------------------------------------------------------------------------| | FILES_API_BASE_URL | Да | Внешений адрес API сервиса управления данными | | INGRESS_RULE_HOST | Да | Хост правила Ingress | | INGRESS_BACKEND_SERVICE_NAME | Да | Service для правила Ingress | | INGRESS_BACKEND_SERVICE_PORT | Да | Порт Service для правила Ingress | | UNIP_DATASET_CMP_CHECK_CONTROLLER_PERMISSIONS | Нет | Включает или выключает (True \ False) проверку прав контроллера, по умолчанию True | | UNIP_DATASET_CMP_VALIDATE | Нет | Включает или выключает (True \ False) валидацию датасета, по умолчанию True | ### Конфигурация контроллера публикации API #### Конфигурация CORS (опционально) | Имя параметра | Обязательный | Назначение | |---------------------------------|--------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | UNIP_API_CMP_CORS_ENABLED | Нет | Добавляет настройку CORS в Ingress, создаваемые для APIComponent | | UNIP_API_CMP_APPS_CORS_ENABLED | Нет | Добавляет поддержку настройки CORS в спецификции APIComponent; если не задано, то наследует значение UNIP_API_CMP_CORS_ENABLED | | UNIP_API_CMP_CORS_ALLOW_METHODS | Нет | разрешенные CORS HTTP методы, перечисленные через запятую; если не задано, то все HTTP методы | | UNIP_API_CMP_CORS_ALLOW_HEADERS | Нет | разрешенные CORS HTTP заголовки, перечисленные через запятую; если не задано - `DNT,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range,Authorization` | | UNIP_API_CMP_CORS_ALLOW_ORIGIN | Нет | разрешенные CORS Origin, переичлснные через запятую; если не задано - `*` | | UNIP_API_CMP_CORS_MAX_AGE | Нет | время кэширования preflight запросов; если не задано - `1728000` | При определении конечного значения конкретного параметра для конкретного APIComponent применяется следующая логика: 1. Если `UNIP_API_CMP_CORS_ENABLED: True`, то значения определяются на основе конфигурации контроллера. 2. Если `UNIP_API_CMP_APPS_CORS_ENABLED: True`, то значения, определенные на предыдущем шаге, дополняются значениями для конкретного APIComponent. 1. Если значение параметра задано в спецификации APIComponent, то используется оно. 2. Если значение параметра не задано в спецификации APIComponent, то используется значение из конфигурации контроллера.