127 lines
5.4 KiB
YAML
127 lines
5.4 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
|
|
|
|
# Количество реплик пода (для начала достаточно 1)
|
|
replicaCount: 1
|
|
|
|
# Docker-образ сервиса
|
|
image:
|
|
repository: naeel/shared-sqs
|
|
tag: "v0.1.24"
|
|
pullPolicy: IfNotPresent
|
|
|
|
# imagePullSecrets не нужен — образ публичный на Docker Hub.
|
|
# Если используете приватный registry, раскомментируйте и укажите имя Secret:
|
|
# imagePullSecrets:
|
|
# - name: my-registry-secret
|
|
imagePullSecrets: []
|
|
|
|
# Redis — хранит все очереди и сообщения.
|
|
# addr: адрес в формате host:port (можно внутренний K8s DNS или внешний IP)
|
|
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
|
|
|
|
# Endpoint облачного API Nubes — нужен только если используется UI-консоль
|
|
# с аутентификацией через Nubes. Если UI не нужен — можно не менять.
|
|
nubesEndpoint: "https://deck-api-test.ngcloud.ru/api/v1"
|
|
|
|
# Лимиты ресурсов для пода. Для начала этих значений достаточно.
|
|
resources:
|
|
requests:
|
|
memory: "64Mi"
|
|
cpu: "50m"
|
|
limits:
|
|
memory: "256Mi"
|
|
cpu: "500m"
|
|
|
|
# Порт внутри контейнера. Менять не нужно.
|
|
service:
|
|
type: ClusterIP
|
|
port: 4100
|
|
|
|
# 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
|
|
# Имя Secret куда cert-manager положит TLS-сертификат
|
|
secretName: shared-sqs-tls
|
|
|
|
# Параметры проверки здоровья пода. Менять не нужно.
|
|
probes:
|
|
liveness:
|
|
path: /health
|
|
initialDelaySeconds: 5
|
|
periodSeconds: 10
|
|
readiness:
|
|
path: /health
|
|
initialDelaySeconds: 3
|
|
periodSeconds: 5
|
|
|
|
# Стратегия обновления. RollingUpdate — обновление без даунтайма.
|
|
strategy:
|
|
type: RollingUpdate
|
|
rollingUpdate:
|
|
maxSurge: 1
|
|
maxUnavailable: 0
|
|
|
|
# Биллинг — запись статистики по всем SQS-операциям в PostgreSQL.
|
|
# Если PostgreSQL нет — поставьте enabled: false, остальное игнорируется.
|
|
billing:
|
|
enabled: true
|
|
postgres:
|
|
# Адрес PostgreSQL (внутренний K8s DNS или внешний хост)
|
|
host: "postgresqlk8s-master.dc5db45d-f8b4-4fd0-ad33-ec4dd017f2d5.svc.cluster.local"
|
|
port: "5432"
|
|
# База данных должна существовать заранее (CREATE DATABASE sqsdb)
|
|
database: "sqsdb"
|
|
user: "super"
|
|
password: "BQUF5ruECa1ZFlq4wYt3gPJUEmtBMkA9QNK4MM5Sd8al4ArMDlmT16DIKHYBPyif"
|
|
sslmode: "require"
|
|
# Альтернатива паролю выше: указать имя уже существующего K8s Secret.
|
|
# Если задан — поле password выше игнорируется.
|
|
existingSecret: ""
|
|
secretKey: "password"
|