Files
SQS-service/deployments/helm/shared-sqs/values.yaml
T

85 lines
3.9 KiB
YAML

# values.yaml — параметры деплоя shared-sqs
# Updated: 2026-04-13
#
# ЧТО ЭТО:
# shared-sqs — AWS SQS-совместимый сервис очередей сообщений для Kubernetes.
# Работает как замена Amazon SQS: клиенты используют стандартный AWS SDK/CLI,
# просто указывая свой endpoint вместо amazonaws.com.
#
# ЧТО НУЖНО ЗАРАНЕЕ:
# 1. Redis — для хранения очередей и сообщений (любой Redis ≥ 6)
# 2. PostgreSQL — для биллинга (можно отключить: billing.enabled: false)
# 3. Ingress NGINX — установлен в кластере (принимает внешние запросы)
# 4. cert-manager — для автовыпуска TLS-сертификата (letsencrypt)
# 5. DNS-запись — ваш домен должен указывать на IP ingress-контроллера
#
# КАК ДЕПЛОИТЬ:
# helm install shared-sqs ./deployments/helm/shared-sqs -n shared-sqs --create-namespace
#
# КАК ОБНОВИТЬ:
# helm upgrade shared-sqs ./deployments/helm/shared-sqs -n shared-sqs
# Namespace в Kubernetes куда будет задеплоен сервис
namespace: shared-sqs
# Версия образа сервиса
image:
tag: "v0.1.24"
# Redis — хранит все очереди и сообщения.
# addr: адрес в формате host:port (внутренний K8s DNS или внешний IP)
# user: Redis-пользователь (по умолчанию "default" — стандартный встроенный пользователь Redis)
redis:
addr: "rfrm-redisk8s.54467f74-67f5-4ca7-9b4a-bdd50e8c23d6.svc:6379"
user: "default"
password: "quiY2oovugaiChiejah9"
# Токен для административного API (/admin/*).
# Используется для создания тенантов и управления ими.
# Придумайте любую строку, например: openssl rand -hex 20
admin:
token: "sqs-admin-7a7d8bd0c060a75c198d48680f34077a"
# Создать demo-тенанта при первом старте (удобно для проверки работы).
# В продакшне можно поставить false.
seedDemo: true
# Лимиты ресурсов для пода. Для начала этих значений достаточно.
resources:
requests:
memory: "64Mi"
cpu: "50m"
limits:
memory: "256Mi"
cpu: "500m"
# Ingress — открывает сервис наружу по домену.
# host: ваш домен, должен указывать на IP ingress-контроллера кластера.
# После деплоя cert-manager автоматически выпустит TLS-сертификат.
ingress:
enabled: true
className: nginx
host: "qu.kube5s.ru"
annotations:
cert-manager.io/cluster-issuer: letsencrypt-prod
nginx.ingress.kubernetes.io/proxy-body-size: "10m"
nginx.ingress.kubernetes.io/proxy-read-timeout: "30"
nginx.ingress.kubernetes.io/proxy-send-timeout: "30"
tls:
enabled: true
secretName: shared-sqs-tls
# Биллинг — запись статистики по всем SQS-операциям в PostgreSQL.
# Если PostgreSQL нет — поставьте enabled: false, остальное игнорируется.
billing:
enabled: true
postgres:
host: "postgresqlk8s-master.dc5db45d-f8b4-4fd0-ad33-ec4dd017f2d5.svc.cluster.local"
port: "5432"
# База данных должна существовать заранее (CREATE DATABASE sqsdb)
database: "sqsdb"
user: "super"
password: "BQUF5ruECa1ZFlq4wYt3gPJUEmtBMkA9QNK4MM5Sd8al4ArMDlmT16DIKHYBPyif"
# disable — если PostgreSQL без SSL (например локальный)
sslmode: "require"