SvayaИИ-платформаПлатформаПримерыПродуктыВнедрение

Документация / Конфигурация

Конфигурация платформы

Редакция 24 сентября 2026, дополнена 9 ноября 2026

Для администратораПеред развертыванием и при каждом изменении

Вся платформа описана одним документом. В нем записано, сколько экземпляров у каждого сервиса, сколько им дано памяти, какие базы данных подняты, что уходит наружу и что хранится. Платформа собирает по этому документу свою конфигурацию сама, поэтому изменение на работающей платформе начинается с правки документа, а не сервера.

Термин страницы. Этот документ называется описателем платформы. Он состоит из трех файлов, которые складываются в один. Два приезжают в поставке, третий пишете вы.

Три слоя описателя

Слои идут снизу вверх. Верхний перекрывает нижний, и только верхний принадлежит вам.

1
Базовый слой платформы

Состав сервисов, их проверки состояния, зависимости и значения по умолчанию. Приезжает в поставке и соответствует версии платформы. Правке не подлежит.

2
Профиль

Один из трех. Показной профиль ставится на один сервер для оценки. Промышленный поднимает несколько экземпляров сервисов, репликацию баз данных и полные резервные копии. Закрытый профиль делает то же самое, но разрешить в нем выход в интернет нельзя.

3
Ваш слой

Числа и адреса вашей компании. Сколько памяти дать сервису, какие поставщики языковых моделей разрешены, к каким внешним адресам платформа обращается, расписание резервных копий, сроки хранения данных. Единственный слой, который вы ведете сами.

Чем отличаются три профиля

Профиль выбирается один раз и задает поведение целых разделов. Различия между ними не косметические.

Что задает профильПоказнойПромышленныйЗакрытый
Экземпляров у ядра и обработкиОдинДваДва
Обмен событиями внутри платформыВнутри процессаЧерез отдельное хранилищеЧерез отдельное хранилище
Базы данныхПо одному экземпляруС запасной копиейС запасной копией
Сертификат периметраСамоподписанныйВаш, из секретовВаш, из секретов
Отправка телеметрии наружуРазрешена настройкойРазрешена настройкойВыключена и включить нельзя
Выход в интернетРазрешенРазрешен объявленным адресамНевыразим, валидатор отклонит

Показной профиль ставится на один сервер для оценки, и перерыв в работе при обновлении в нем неизбежен, потому что заменять нечему. Промышленный и закрытый отличаются не составом, а тем, что в закрытом часть настроек становится невыразимой, а не просто нежелательной.

Как слои складываются

Правила слияния заданы жестко, чтобы результат не зависел от порядка чтения файлов.

  • Разделы складываются вглубь. Если вы задали в своем слое только память сервиса, все остальные его свойства берутся из нижних слоев.
  • Списки записей с именами складываются по имени. Запись с тем же именем заменяет поля нижнего слоя, а запись с новым именем добавляется к ним.
  • Простые значения и списки без имен заменяются целиком.
  • Пустое значение в верхнем слое удаляет ключ нижнего.

Проверяется не ваш файл, а итог сложения всех трех. Поэтому ошибка вида «мой файл маленький и очевидно правильный» находится там, где она проявляется (в готовом описании), а не там, где написана.

Из чего состоит описатель

РазделЧто задаетКто обычно правит
installationПрофиль, канал обновлений, сроки хранения служебных журналовВы
servicesСервисы платформы, число экземпляров, память и ядра, проверки состоянияВы, числами
eventsКак сервисы обмениваются событиями внутри платформыПрофиль
modelsКлассы языковых моделей и их сопоставление поставщикамВы
databasesPostgreSQL, ClickHouse, Redis и их режим отказоустойчивостиПрофиль, вы уточняете
storageТома данных и объектное хранилищеВы, размерами
networkСегменты сети платформыПрофиль
perimeterЧто публикуется наружу, сертификаты, правила доступности адресовВы
egressК каким внешним адресам платформе разрешено обращаться и какому сервисуВы
secretsИмена секретов и откуда они берутся. Значений здесь нетВы
backupРасписание резервных копий, шифрование, сколько копий хранитьВы
monitoringСбор метрик, срок их хранения, пороги оповещенийВы

Чего в описателе нет намеренно

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

Секреты

В описателе стоят имена секретов и то, откуда они берутся. Значений в описателе нет и быть не может, иначе он не мог бы лежать в вашей системе контроля версий.

Откуда беретсяЧто это значитПример
Платформа сгенерируетЗначение рождается при развертывании и лежит в каталоге секретов платформыПароли баз данных, ключи обезличивания
Принесете выПлатформа ждет готовое значение и без него не подниметсяСертификат периметра, ключи поставщиков моделей, пароль почтового ящика
Пара ключейПлатформа заводит закрытую и открытую половины, у каждой свои потребителиПодпись квитанций обезличивания

У каждого секрета перечислены потребители, то есть какие сервисы его читают. Секрет без потребителей валидатор отклоняет, потому что он означает либо забытую правку, либо лишний секрет на диске.

Каталог секретов принадлежит владельцу платформы и закрыт правами. Копируется он отдельно от резервных копий платформы, вашими средствами, и про это стоит прочитать на странице резервных копий.

Что проверяет валидатор описателя

Кроме схемы, у описателя есть смысловые правила, и их около семидесяти. Считать их наизусть не нужно, важно понимать, какого рода ошибки они ловят.

Класс правилаЧто ловитПример
Ссылки в никудаИмя, которого нетСервис зависит от несуществующего, том или секрет не объявлены, поставщик модели не назван
Половина решенияОдна часть включена, вторая забытаПрогонный контур включен флагом, а сервиса нет. Или класс модели объявлен без развертываний
Противоречие профилюНастройка, несовместимая с выбранным профилемСамоподписанный сертификат в промышленном профиле, выход в интернет в закрытом, логический дамп базы в промышленном
Опасная сетьНастройка, открывающая больше, чем нужноПубличный домен объявлен внутренним, перекрывающиеся маршруты периметра, открытый корень периметра
Несходящиеся числаЗначения, противоречащие друг другуНесколько экземпляров ядра при обмене событиями внутри процесса, отсрочка меньше окна резервной копии

Сообщение правила устроено одинаково. В квадратных скобках стоит код, дальше путь в описателе и объяснение. По коду правило ищется в документации поставки, а по пути находится место в вашем файле.

Поколение конфигурации

У собранной конфигурации есть номер поколения. Он растет с каждой пересборкой и нужен затем, чтобы отличать «сервис работает на свежей конфигурации» от «сервис поднялся на прошлой и не перечитал новую».

Практическое следствие такое. Если правка описателя не проявилась, первым делом смотрят, дошло ли новое поколение до сервиса, а не ищут ошибку в самой правке.

Что нельзя поменять на ходу

Часть настроек применяется пересборкой и перезапуском, а часть требует большего. Различать их стоит заранее, чтобы не планировать правку на рабочее время.

  • Меняется пересборкой и перезапуском сервиса. Память и ядра, пороги оповещений, расписание копий, поставщики моделей, пределы расхода.
  • Требует обновления с планом. Состав сервисов, режим отказоустойчивости баз, профиль платформы.
  • Не меняется с экрана вовсе. Ничего из перечисленного.

Почему собранные файлы не правят руками

Файлы, которые платформа собрала из описателя, руками не редактируются. Такую правку платформа называет правкой в обход описателя и находит ее отдельной проверкой. Пока правка не принята явной командой, обновление и откат не выполняются.

Причина запрета простая. Обновление собирает конфигурацию заново, поэтому правка, сделанная руками в собранном файле, при следующем обновлении пропадет. Проверка на такие правки нужна для того, чтобы вместе с правкой не пропала причина, по которой ее сделали.

Изменение вносится в таком порядке.

  1. Правите свой слой описателя.
  2. Собираете конфигурацию заново.
  3. Проверяете готовность.
  4. Применяете обновление.

Экран конфигурации

Действующую конфигурацию видно в интерфейсе. Разделы свернуты, у каждого стоит имя, пояснение и число параметров, рядом кнопка копирования. Секретные значения замаскированы платформой, то есть в браузер они не попадают вовсе. Экран только показывает, менять конфигурацию с него нельзя, и это осознанное ограничение. Менять платформу можно одним способом, через описатель.

Экран «Конфигурация»: свернутые разделы действующей конфигурации с пояснениями и числом параметров
Конфигурация. Те же значения, что печатает команда просмотра конфигурации. Данные на снимке демонстрационные. Открыть экран целиком