-
Notifications
You must be signed in to change notification settings - Fork 1
Open
Description
Summary
Create a Kubernetes deployment using Helm, including a production-ready chart, values, secrets integration, autoscaling, and CI publishing. Ensure compatibility with in-cluster Redis or external Redis for the event bus. For AWS environments, optionally deploy the Helm chart via AWS CDK (TypeScript) to EKS.
Source: docs/issues/phase-6-kubernetes-helm.md
Motivation
- Standardize K8s deployment with Helm (de facto tooling)
- Simplify upgrades and configuration via values files
- Enable IaC-driven EKS deployments with CDK on AWS
Scope
- Helm chart in
deploy/helm/llm-proxy - Support for server and optional dispatcher (as separate Deployment)
- Redis: togglable (in-cluster chart dependency or external address)
- Ingress, service, probes, HPA, secrets management
- Optional: AWS CDK (TypeScript) to provision/import EKS and install Helm release
Tasks
- Scaffold Helm chart structure (Chart.yaml, values.yaml, templates/*)
- Templates: Deployment, Service, Ingress, HPA, ConfigMap, Secret
- Values: image, resources, env, Redis settings, admin UI settings, securityContext, podDisruptionBudget
- Secrets: reference from external secret store (optional) or k8s Secret; document both
- Probes:
/health,/ready,/live; wire to container ports - HPA: CPU/memory target tracking; optional custom metrics
- Redis: chart dependency toggle (e.g., bitnami/redis) or external endpoint
- Dispatcher: optional second deployment referencing same Redis bus
- CI: lint chart (helm lint), template validation (helm template), optional chart release to OCI
- Docs: install/upgrade commands, values examples, security notes
Optional (AWS CDK/EKS)
- CDK: provision or import EKS cluster
- CDK:
cluster.addHelmChartto deploy this chart with values, namespace, timeouts - CDK: IRSA for controllers/pods needing AWS access; image/OCI/Helm registry auth if required
- CI: synth/validate CDK; optional deploy to test environment
Acceptance Criteria
- Helm chart installs and upgrades cleanly (helm install/upgrade)
- Probes, HPA, and ingress configured; secrets handled securely
- Optional dispatcher deployment supported
- CI lint/template steps green; docs complete
- If on AWS: CDK-based Helm deployment to EKS is demonstrated or documented
References
- Doc:
docs/issues/phase-6-kubernetes-helm.md - Observability: PR #41
- Security:
docs/security.md
Copilot