UserAuth.API
Версия чарта: 240830.60.219
OCI-репозиторий: cr.yandex/crpt9c7igqasaqddbg0p/backend/userauth.api/charts/userauth-api
Ingress: auth.medikt.net (управляется через Terraform)
Важно: Управление Ingress для всех сервисов осуществляется через Terraform. Параметр ingress.enabled должен быть установлен в false в values.yaml.
Подготовка к развертыванию
Необходимые Secret'ы
Для развертывания необходимы следующие Secret'ы:
- userdb-connection-string
- directorydb-connection-string
- nats-connection-string
- medikt-jwt-keys
- user-sa-creds
ConfigMap'ы генерируются автоматически из шаблонов чарта. Ingress управляется через Terraform модуль medikt-infra.
Получение чарта
Установка из OCI-репозитория
# Скачивание чарта
helm pull oci://cr.yandex/crpt9c7igqasaqddbg0p/backend/userauth.api/charts/userauth-api \
--version 240830.60.219 \
--untar --untardir ./charts
Развертывание с помощью Helm
Установка
helm install medikt-userauth-api ./charts/userauth-api \
--namespace prod \
--create-namespace \
--values values.yaml
Обновление
# Обновление чарта в namespace prod
helm upgrade medikt-userauth-api ./charts/userauth-api \
--namespace prod \
--values values.yaml
Удаление
# Удаление чарта из namespace prod
helm uninstall medikt-userauth-api --namespace prod
Конфигурация
Параметры values.yaml
| Параметр | Тип | Значение по умолчанию | Описание |
|---|---|---|---|
dotnet_environment | string | Staging | Должно быть Production |
mediktHost | string | "https://medikt.net/" | Базовый URL сервиса Medikt |
cors.origins | array | ["https://ycdev.mvscp.com"] | Разрешенные CORS-источники |
notificationApiGrpcAddress | string | "http://medikt-notification-api:8081" | Адрес Notification API по gRPC |
ConfigMap
Конфигурация приложения (appsettings.json) формируется из шаблона в чарте. Для Production environment файл монтируется в /app/appsettings.Production.json.
Формат ConfigMap:
{
"MediktHost": "https://medikt.net",
"Cors": {
"Origins": [
"https://medikt.net",
"https://my.medikt.net"
]
},
"NotificationApiGrpcAddress": "http://medikt-notification-api:8081"
}
Проверка развертывания
Проверка подов
kubectl get pods -n prod -l app.kubernetes.io/name=userauth-api
Ожидаемый вывод должен показать все поды в статусе Running.
Проверка логов
# Логи конкретного пода
kubectl logs -n prod <pod-name> -f
# Логи всех подов
kubectl logs -n prod -l app.kubernetes.io/name=userauth-api -f
Проверка сервиса
kubectl get svc -n prod medikt-userauth-api
Проверка ConfigMap
kubectl get configmap -n prod medikt-userauth-api -o yaml
Проверка Secret'ов
kubectl get secrets -n prod userdb-connection-string directorydb-connection-string nats-connection-string medikt-jwt-keys user-sa-creds