ch4/planpalto-helm/values-prod.yaml

52 lines
1.4 KiB
YAML

# Prod overrides. Everything else inherits values.yaml.
# Own host + ALB group, separate from the pre-Argo live release still serving
# fakhri-k8 from the planpal-helm namespace. Cut DNS over to this later.
namespace: planpal-prod
image:
frontend:
tag: latest
backend:
tag: latest
externalSecrets:
storeName: prod-aws-planpal
secrets:
backend-env: planpal/backend-env
aws-env: planpal/aws-env
seed-env: planpal/seed-env
frontend-env: planpal/frontend
ingress:
host: prod.fakhri-k8.sandbox.devopsinstitute.id
certArn: arn:aws:acm:ap-southeast-3:134604498185:certificate/79b1f257-0f66-4b32-96cb-5ea5c12792f6
groupName: planpal-helm # share the one public ALB with argocd + gitea
# Prod backend sized to spread across nodes under load and scale wide.
# 250m request => ~7 pods/node (1930m allocatable); max 12 => uses all 4 nodes.
apps:
backend:
command: [planpal-server]
image: backend
envFrom: [backend-env, aws-env]
ports:
- { name: http, containerPort: 8088 }
- { name: metrics, containerPort: 9090 }
service:
port: 8088
targetPort: 8088
probePath: /api/v1/health
probePort: 8088
resources:
requests: { cpu: 250m, memory: 96Mi }
limits: { cpu: 500m, memory: 256Mi }
hpa: { min: 2, max: 12, cpu: 60 }
pdb: { maxUnavailable: 1 }
seedJob:
enabled: true
# Scrape prod app metrics into Prometheus + ship the Grafana dashboard.
monitoring:
enabled: true