Quick deploy decision¶
Status: Current | Last reviewed: 2026-05-28
Pick your deploy target. Each row points at the dedicated guide.
Decision matrix¶
| Goal | Target | Guide |
|---|---|---|
| Promote a service to TrueServe-owned production | GKE Sentinel | deploy-gke.md + promote-to-sentinel.md |
| Stand up a customer environment in AWS | EKS | deploy-eks.md |
| Stand up a customer environment in GCP (not Sentinel) | GKE customer | deploy-gke.md (use customer values) |
| Stand up a customer environment in Azure | AKS | deploy-aks.md |
| On-prem / air-gapped | Self-hosted | deploy-self-hosted.md |
| Validate a chart change before promoting | Kind in Vanguard | Kind validation |
What you need¶
For any cloud target:
- Kubernetes 1.28+.
- A registry the cluster can pull from.
- A DNS zone you control.
- TLS issuance (cert-manager + Let's Encrypt or a corporate CA).
- An ingress controller (nginx-ingress is the default).
For voice traffic specifically:
- A node pool that supports
hostNetworkpods. - Public addressing for SIP and media (Global Accelerator on AWS, regional LB or static IP on GCP/Azure).
- A media-pool kernel-tuning profile. See media-pool-tuning.md.
Prerequisites checklist¶
Before running any deploy:
- [ ] Helm 3.14+ installed locally
- [ ]
kubectlcontext pointing at the target cluster - [ ]
MASTER_ENCRYPTION_KEYavailable in the destination secret store - [ ] Postgres + Redis reachable (in-cluster or managed)
- [ ] Object storage bucket reachable
- [ ] DNS records for
*.<your-domain>pointing at the ingress LB