Django обращается к сервису измерений при MEASUREMENTS_USE_MEASUREMENTS=1 (значение по умолчанию в base), так что без него часть API отвечала ошибкой. Сервис переименован в measurements-service, как в brusnika-*. В base он называется measurements-svc, а django ходит на measurements-service — переименовать сервис дешевле, чем патчить переменную в двух релизах django. Бакеты теперь заводит Job в infrastructure/minio/aero, а не команда руками. Чарт MinIO этого не умеет: форк не принимает ни buckets, ни provisioning. Так бакет django был создан императивно и не пережил бы пересоздание контура — развернув всё с нуля, получили бы работающий MinIO и приложения, падающие на отсутствующем бакете. Measurements сломался бы на этом сразу: имя бакета зашито в его vault-шаблоне. Идемпотентность даёт mc mb --ignore-existing. Сайдкар istio у Job отключён: контейнер задачи выходит, envoy продолжает работать, и под навсегда остаётся Running.
27 lines
1.4 KiB
YAML
27 lines
1.4 KiB
YAML
---
|
||
apiVersion: kustomize.config.k8s.io/v1beta1
|
||
kind: Kustomization
|
||
namespace: measurements
|
||
resources:
|
||
- ../base
|
||
|
||
patches:
|
||
- target: {kind: HelmRelease, name: measurements}
|
||
patch: |
|
||
# Имя сервиса приводим к measurements-service, как в brusnika-*.
|
||
#
|
||
# В base сервис называется measurements-svc, а django ходит на
|
||
# MEASUREMENTS_HOST=http://measurements-service.measurements.svc.cluster.local:8000/api
|
||
# (apps/django/base/backend.yaml). Переименовать сервис дешевле, чем
|
||
# патчить переменную в двух релизах django (backend и celery), и заодно
|
||
# совпадает с тем, как это сделано в остальных кластерах.
|
||
- op: replace
|
||
path: /spec/values/services/backend/service/name/_default
|
||
value: measurements-service
|
||
|
||
# S3 внутри кластера. В base endpoint приезжает из самого секрета
|
||
# (.Data.data.client.endpoint), поэтому шаблон править не нужно — адрес
|
||
# задаёт ansible в vault_app_secrets. Бакет measurements заводит
|
||
# infrastructure/minio/aero/buckets-job.yaml: имя зашито в шаблоне
|
||
# аннотации, и без готового бакета приложение не поднимется.
|