Релиз идёт из base без единого патча, и это проверено по исходникам
bim-backend-v2, а не принято на веру:
* DJANGO_HOST в base уже правильный (backend-svc.django:80) — редкость,
у processing и workspaces там лежал несуществующий backend:8000;
* DB_CERT_PATH_2/3/4 указывают на сертификат управляемой СУБД Яндекса,
которого в контуре нет, но зануления не требуют: файл читается только
под флагом ENABLE_SSL, а при нуле к строке подключения дописывается
?sslmode=disable и путь не трогается;
* пять комплектов POSTGRES_*_N в vault-шаблоне смотрят на один хост —
в проде это реплики, в контуре СУБД одна.
Django ходил в никуда: BIMV2_INTERNAL_HOST в base ведёт в namespace
bim-api к сервису bim-backend-v2-service, а релиз разворачивается в
namespace bim и называет сервис backend-svc. Поправлено в обоих релизах
django — backend и celery.
Наружу выведен отдельным поддоменом bim.sarex.local.lonsdaleites.ru, а не
префиксом на домене платформы: своего фронтенда у сервиса нет, общего с
платформой origin тоже, а его пути конфликтовали бы с маршрутом /api/
django. Имя добавлено в dnsNames сертификата — без этого браузер получил
бы сертификат без него.
Обвязка: regcred и роль Vault для namespace bim, apps/bim в
gitea_sync_paths, секрет secrets/apps/bim/postgres (база bim_db и роль bim
уже заведены в contour.databases).
ИЗВЕСТНЫЙ РИСК, проверяется логами первого пода. В ветке develop у
bim-backend-v2 миграции катятся при старте httpserver, ошибка фатальна, а
адрес БД внутри RunOnStartup взят не из конфига, а из константы
rc1b-sse4o3n9vea392g4.mdb.yandexcloud.net:6432. Из контура он недостижим.
Если этот код попал в образ contour_f9f2a39-dirty, под уйдёт в
CrashLoopBackOff и лечиться это будет только пересборкой образа.
18 lines
1.2 KiB
YAML
18 lines
1.2 KiB
YAML
# Слой 3: прикладные сервисы контура.
|
||
apiVersion: kustomize.config.k8s.io/v1beta1
|
||
kind: Kustomization
|
||
resources:
|
||
- ../../../apps/django/aero
|
||
# Сервис измерений. Django обращается к нему при MEASUREMENTS_USE_MEASUREMENTS=1
|
||
# (значение по умолчанию в base), поэтому без него часть API отвечает ошибкой.
|
||
- ../../../apps/measurements/aero
|
||
# Движок workflow. Развёрнут частично: только api и engine-low, без
|
||
# собственного фронтенда — подробности в apps/processing/aero.
|
||
- ../../../apps/processing/aero
|
||
# Воркспейсы: api и фронтенд-ремоут. Фронтенд наружу не публикуется — его
|
||
# подгружает главный фронтенд платформы через свой nginx (/workspaces-v2/).
|
||
- ../../../apps/workspaces/aero
|
||
# BIM API. Django обращается к нему через BIMV2_INTERNAL_HOST — адрес там
|
||
# чужой (namespace bim-api), поправлен патчем в apps/django/aero.
|
||
- ../../../apps/bim/aero
|