Helm chart for the Ferro Labs AI Gateway — a high-performance, multi-provider LLM proxy supporting 20+ AI providers, 6 routing strategies, and an extensible plugin pipeline.
helm repo add ferro-labs https://ferro-labs.github.io/helm-charts
helm repo update
helm install ferrogw ferro-labs/ai-gateway \
--set secrets.adminApiKey="your-admin-key" \
--set secrets.providers.openai="sk-..." \
--set secrets.providers.anthropic="sk-ant-..."
helm install ferrogw ferro-labs/ai-gateway \
--namespace ferrogw \
--create-namespace \
-f my-values.yaml
helm uninstall ferrogw --namespace ferrogw
See values.yaml for the full list of configurable parameters.
| Parameter | Description | Default |
|---|---|---|
replicaCount |
Number of gateway pods | 2 |
image.repository |
Container image repository | ghcr.io/ferro-labs/ai-gateway |
image.tag |
Image tag (defaults to chart appVersion) |
"" |
config.strategy.mode |
Routing strategy | fallback |
secrets.adminApiKey |
Secret for /admin endpoints |
"" |
secrets.providers |
Map of provider name → API key | {} |
ingress.enabled |
Enable Ingress | false |
autoscaling.enabled |
Enable HPA | false |
pdb.enabled |
Enable PodDisruptionBudget | true |
Instead of passing API keys via --set, use an external-secrets or sealed-secrets operator, or reference an existing Secret:
# values.yaml
secrets:
adminApiKey: "" # leave empty
providers: {} # leave empty — keys injected by external-secrets
ingress:
enabled: true
className: nginx
annotations:
cert-manager.io/cluster-issuer: letsencrypt-prod
hosts:
- host: gateway.example.com
paths:
- path: /
pathType: Prefix
tls:
- secretName: ferrogw-tls
hosts:
- gateway.example.com
autoscaling:
enabled: true
minReplicas: 2
maxReplicas: 20
targetCPUUtilizationPercentage: 70