Перейти к содержимому
Скачать PDF

Состав платформы

Раздел «Установка и администрирование» написан для службы ИТ, которая ставит и обслуживает DeepDive в своём контуре — on-premise или в частном облаке (см. «Варианты развёртывания»). Работа пользователей и администраторов организаций описана в разделах «Руководство пользователя» и «Руководство администратора».

Платформа — шесть сервисов. Пять серверных собраны в один образ и различаются точкой входа, поэтому всегда обновляются одной версией; шестой — веб-интерфейс.

СервисНазначениеПорт
configЦентрализованная конфигурация: раздаёт остальным сервисам их настройки3001
service-discoveryРеестр сервисов и их адресов3002
identityКто вошёл и что ему можно: пользователи, организации, роли, интеграция с Keycloak3005
instanceУстановка и её организации: идентификатор, оформление3007
apiОсновной сервис: GraphQL-API, ассистент, диалоги, база знаний, подключения к источникам данных3000
uiВеб-интерфейс, общается с api только по GraphQL—

Перед платформой стоит oauth2-proxy — единственная точка входа снаружи. Он завершает TLS, проверяет сессию в Keycloak и передаёт платформе, кто пришёл. Интерфейс и API живут на одном домене за ним.

Сервисы стартуют по цепочке, и каждый ждёт готовности предыдущего по его /healthz:

config (3001) стартует первым, зависимостей нет
└─ service-discovery (3002)
├─ identity (3005)
└─ instance (3007)
└─ api (3000)
└─ ui

Практическое следствие: если config не поднялся, не поднимется ни один сервис, — разбор всегда начинается с него.

У api, кроме /healthz, есть /livez: он выполняет SELECT 1 через собственный пул соединений и отвечает 503, если база не возвращает ответ. По нему Kubernetes перезапускает под, который потерял соединения с PostgreSQL (например, после пересоздания пода базы), — /healthz базу не проверяет.

СистемаДля чегоОбязательнаОткуда берётся
PostgreSQL 16 с расширением vector (pgvector)База платформы: настройки, организации, диалоги, состояние ассистента, база знаний; база сервиса identity; база Keycloak, если он из комплектаДаИз комплекта, на отдельной машине или ваш
RedisКэш платформы и сессии входаДаИз комплекта, на отдельной машине или ваш
NATS JetStreamШина событий, поток ответа ассистента в интерфейсДаИз комплекта или ваш
S3-совместимое хранилищеВложения диалогов и выгрузкиДаИз комплекта, на отдельной машине или ваше
KeycloakВход в платформу (OIDC)ДаИз комплекта или ваш
Языковая модельОтветы ассистента; нужен вызов инструментов (tool calling) и потоковый ответДаВаш endpoint в контуре или внешний провайдер по API
Модель векторизации (embeddings)Поиск по базе знанийДаВаш endpoint в контуре или внешний провайдер по API
ClickHouseВитрина бизнес-данных, таблицы из загруженных файловНетИз комплекта или ваш
Oracle, PostgreSQLИсточники бизнес-данных, если ассистент читает их напрямуюНетВаши
LangfuseТрассировка работы ассистентаНетТолько ваш: из комплекта не ставится

Что из этого поднимает комплект, а что подключается ваше, решается при установке, — см. «Выбор компонентов».

База знаний живёт в базе платформы. Отдельного сервера под неё нет: таблицу и индексы платформа заводит сама при старте, в той же PostgreSQL. Поэтому к серверу PostgreSQL одно требование сверху — расширение vector. Граф знаний на Neo4j, который был в платформе до версии 1.0, удалён: ни сервера, ни тома, ни пароля под него больше не нужно.

Ассистент отвечает по данным, к которым платформа подключена как к источникам: ClickHouse, Oracle и PostgreSQL. Подключение — запись в базе платформы; витрину ClickHouse, названную при установке, заводит источником сама установка, остальные подключаются в интерфейсе. Платформа данные в источник не загружает и не пишет — наполнение витрины остаётся за вашей службой эксплуатации. Подробнее — в «Руководстве администратора».

Сборка 8817d38 от 3 ноября 2026 г.