Transcoder-edgecenter-sync
Версия чарта
Версия чарта: 260521.213.3121
OCI-репозиторий: cr.yandex/crpt9c7igqasaqddbg0p/backend/transcoder/edgecentersync/charts/transcoder-edgecenter-sync
Введение
transcoder-edgecenter-sync — это сервис, который синхронизирует статус видео с EdgeCenter CDN. Сервис проверяет состояние видео на EdgeCenter и обновляет базу данных в случае необходимости (очистка неактуальных данных).
Важно: Ingress для этого сервиса не требуется (работает как background worker).
Необходимые Secret'ы
Для развертывания необходимы следующие Secret'ы:
ConfigMap'ы генерируются автоматически из шаблонов чарта:
medikt-transcoder-edgecenter-sync-appsettings.jsonmedikt-transcoder-common-appsettings.common.json(общая конфигурация)
Получение чарта из OCI-репозитория
helm pull oci://cr.yandex/crpt9c7igqasaqddbg0p/backend/transcoder/edgecentersync/charts/transcoder-edgecenter-sync \
--version 260521.213.3121 \
--untar --untardir ./charts
Развертывание
Установка
helm install medikt-transcoder-edgecenter-sync ./charts/transcoder-edgecenter-sync \
--namespace prod \
--values ./values/transcoder-edgecenter-sync_prod.yaml \
--create-namespace
Обновление
helm upgrade medikt-transcoder-edgecenter-sync ./charts/transcoder-edgecenter-sync \
--namespace prod \
--values ./values/transcoder-edgecenter-sync_prod.yaml
Удаление
helm uninstall medikt-transcoder-edgecenter-sync --namespace prod
Конфигурация (values.yaml)
Основные параметры
| Параметр | Тип | По умолчанию | Описание |
|---|---|---|---|
dotnet_environment | string | Staging | Окружение .NET (Staging/Production) |
replicaCount | int | 1 | Количество реплик (фиксировано) |
image.repository | string | cr.yandex/.../edgecentersync | Docker образ |
image.pullPolicy | string | IfNotPresent | Политика pull образа |
EdgeCenter
| Параметр | Тип | По умолчанию | Описание |
|---|---|---|---|
edgeCenter.baseUrl | string | https://api.edgecenter.ru/streaming | Base URL EdgeCenter API |
Нагрузка и масштабирование
| Параметр | Тип | По умолчанию | Описание |
|---|---|---|---|
resources.limits.cpu | string | 1000m | Лимит CPU |
resources.requests.cpu | string | 500m | Запрос CPU |
Volumes
| Имя volume | Тип | Mount path | Описание |
|---|---|---|---|
appsettings-volume | configMap | /app/appsettings.environment.json | Конфигурация приложения |
appsettings-common | configMap | /app/appsettings.common.json | shared-конфигурация, деплоится через terraform |
Конфигурация affinity
Сервис размещается на нодах с label api_affinity=true.
Примеры значений
Производственная конфигурация (prod)
dotnet_environment: Production
replicaCount: 1
Проверка развертывания
# Проверка статуса релиза
helm list -n prod
# Проверка подов
kubectl get pods -n prod -l app.kubernetes.io/name=transcoder-edgecenter-sync
# Логи пода
kubectl logs -n prod <pod-name> -f
Примечания
- Сервис использует exec-based probes для health check (проверка файла
/tmp/healthy) - Фиксированное количество реплик (1) - масштабирование не требуется
- Сервис регулярно проверяет состояние видео на EdgeCenter CDN
- Нагрузка на CPU минимальна (без ограничений по умолчанию)