Files
inecs af26ad4141 Return native Engine NotFound faults and clear Web UI session on 401.
Include the bad id in host/datacenter/cluster errors, expire stale auth in the
console, and document Ingress annotations that preserve fault bodies.
2026-07-22 06:52:04 +03:00

4.0 KiB
Raw Permalink Blame History

Language / Язык: English | Русский

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

Настройки приложения загружаются из окружения (см. .env.example). Docker Compose подставляет многие из них для сервиса simulator.

Основные

Переменная По умолчанию / пример Назначение
APP_HOST 0.0.0.0 Адрес привязки
APP_PORT 8080 Внутренний порт FastAPI (не публичный Engine)
DATABASE_URL postgresql://ovirt:ovirt@postgres:5432/ovirt_simulator DSN asyncpg
TEST_DATABASE_URL как выше DSN для интеграционных тестов
DB_POOL_MIN_SIZE 1 Минимум пула
DB_POOL_MAX_SIZE 10 Максимум пула
LOG_LEVEL INFO Уровень логирования
REQUEST_ID_HEADER X-Request-ID Заголовок корреляции запросов

Series Engine и seed

Переменная По умолчанию Назначение
OVIRT_SERIES 4.5 Контрактный pack при cold start (3.03.6, 4.34.5, master)
SEED_PROFILE minimal Для seed CLI / Helm seed Job (minimal / demo)

Безопасность и задачи

Переменная Назначение
TICKET_SIGNING_KEY Материал подписи лабораторных токенов (меняйте вне игрушечных стендов)
TASK_WORKER_CONCURRENCY Число воркеров с арендой (1–32)
TASK_LEASE_SECONDS Длительность аренды задач в PostgreSQL
SIMULATION_TIME_SCALE Ускоряет длительность симулируемых jobs

Публикация портов на хост

Переменная По умолчанию Назначение
OVIRT_ENGINE_PORT 443 Host → gateway :443 (Engine HTTPS)
OVIRT_UI_PORT 5000 Host → gateway :5000 (Web UI)

См. Порты.

Compose

Файл Роль
docker-compose.yml Dev-стек (сборка + bind mounts)
docker-compose.release.yml Опубликованный образ Hub
.env / .env.example Локальные переопределения

Сервисы:

  • simulator — FastAPI на внутреннем 8080
  • api-gateway — nginx, публикующий Engine + UI (ports.md)
  • postgrespostgres:17.5-bookworm (host-порт по умолчанию не публикуется)
  • migrate — one-shot миграции схемы

Helm

См. Kubernetes / Helm и helm/ovirt-api-simulator/values.yaml.

Value Назначение
image.repository / image.tag Образ контейнера
config.ovirtSeries Pack series → env OVIRT_SERIES
seed.profile minimal / demo
postgresql.enabled Встроенная БД
databaseUrl Внешний DSN, если встроенный Postgres выключен
secrets.ticketSigningKey Нужно ротировать на общих кластерах
service.port Порт ClusterIP (по умолчанию 8080)

gateway.* не используется (нет nginx gateway как в Compose). ingress.* опционален — см. values-ingress-example.yaml и Устранение неполадок для annotations, сохраняющих тела fault Engine.

Контрактные packs

Расположение: contracts/ovirt/<series>/.

В каждом series: api.json, manifest.json и deltas.json. Перегенерация:

make generate-packs