mirror of
https://github.com/andwati/telecom-platform.git
synced 2026-10-18 11:02:54 +00:00
feat: Add Kustomize environment configurations for dev, staging, and prod deployments
- Add dev kustomization with debug logging, 100 req/min rate limit, single replica counts - Add staging kustomization with info logging, 500 req/min rate limit, 2 replicas, metrics enabled - Add prod kustomization with warn logging, 1000 req/min rate limit, 2-3 replicas, GDPR/audit enabled - Add environment-specific configMapGenerator with LOG_LEVEL, ENVIRONMENT, RATE_LIMIT settings - Add environment-specific secretGenerator with DATABASE_URL, REDIS_URL, JWT_SECRET, encryption key (prod
This commit is contained in:
@@ -0,0 +1,40 @@
|
||||
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||
kind: Kustomization
|
||||
metadata:
|
||||
name: telecom-platform-dev
|
||||
resources:
|
||||
- ../../kubernetes/00-namespace.yaml
|
||||
- ../../kubernetes/01-mongodb.yaml
|
||||
- ../../kubernetes/02-redis.yaml
|
||||
- ../../kubernetes/03-api-server.yaml
|
||||
- ../../kubernetes/04-charging-engine.yaml
|
||||
- ../../kubernetes/manifests/
|
||||
patchesStrategicMerge:
|
||||
- api-server-dev-patch.yaml
|
||||
- charging-engine-dev-patch.yaml
|
||||
namespace: telecom-platform-dev
|
||||
commonLabels:
|
||||
app.kubernetes.io/environment: dev
|
||||
app.kubernetes.io/managed-by: kustomize
|
||||
configMapGenerator:
|
||||
- name: telecom-platform-config
|
||||
literals:
|
||||
- LOG_LEVEL=debug
|
||||
- ENVIRONMENT=dev
|
||||
- RATE_LIMIT_REQUESTS=100
|
||||
- RATE_LIMIT_WINDOW=60
|
||||
secretGenerator:
|
||||
- name: telecom-platform-secrets
|
||||
literals:
|
||||
- DATABASE_URL=postgresql://postgres:dev123@postgres:5432/telecom_dev
|
||||
- REDIS_URL=redis://redis:6379
|
||||
- JWT_SECRET=dev-jwt-secret-key
|
||||
replicas:
|
||||
- name: api-server
|
||||
count: 1
|
||||
- name: charging-engine
|
||||
count: 1
|
||||
- name: packet-gateway
|
||||
count: 1
|
||||
- name: web-dashboard
|
||||
count: 1
|
||||
@@ -0,0 +1,49 @@
|
||||
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||
kind: Kustomization
|
||||
metadata:
|
||||
name: telecom-platform-prod
|
||||
resources:
|
||||
- ../../kubernetes/00-namespace.yaml
|
||||
- ../../kubernetes/01-mongodb.yaml
|
||||
- ../../kubernetes/02-redis.yaml
|
||||
- ../../kubernetes/03-api-server.yaml
|
||||
- ../../kubernetes/04-charging-engine.yaml
|
||||
- ../../kubernetes/manifests/
|
||||
- ../istio/
|
||||
- ../backup/
|
||||
- ../monitoring/
|
||||
- ../elk-stack/
|
||||
patchesStrategicMerge:
|
||||
- api-server-prod-patch.yaml
|
||||
- charging-engine-prod-patch.yaml
|
||||
- mongodb-prod-patch.yaml
|
||||
namespace: telecom-platform-prod
|
||||
commonLabels:
|
||||
app.kubernetes.io/environment: prod
|
||||
app.kubernetes.io/managed-by: kustomize
|
||||
configMapGenerator:
|
||||
- name: telecom-platform-config
|
||||
literals:
|
||||
- LOG_LEVEL=warn
|
||||
- ENVIRONMENT=production
|
||||
- RATE_LIMIT_REQUESTS=1000
|
||||
- RATE_LIMIT_WINDOW=60
|
||||
- METRICS_ENABLED=true
|
||||
- GDPR_ENABLED=true
|
||||
- AUDIT_ENABLED=true
|
||||
secretGenerator:
|
||||
- name: telecom-platform-secrets
|
||||
literals:
|
||||
- DATABASE_URL=postgresql://postgres:prod123@postgres:5432/telecom_prod
|
||||
- REDIS_URL=redis://redis:6379
|
||||
- JWT_SECRET=prod-jwt-secret-key
|
||||
- ENCRYPTION_KEY=prod-encryption-key-256bits
|
||||
replicas:
|
||||
- name: api-server
|
||||
count: 3
|
||||
- name: charging-engine
|
||||
count: 2
|
||||
- name: packet-gateway
|
||||
count: 2
|
||||
- name: web-dashboard
|
||||
count: 2
|
||||
@@ -0,0 +1,41 @@
|
||||
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||
kind: Kustomization
|
||||
metadata:
|
||||
name: telecom-platform-staging
|
||||
resources:
|
||||
- ../../kubernetes/00-namespace.yaml
|
||||
- ../../kubernetes/01-mongodb.yaml
|
||||
- ../../kubernetes/02-redis.yaml
|
||||
- ../../kubernetes/03-api-server.yaml
|
||||
- ../../kubernetes/04-charging-engine.yaml
|
||||
- ../../kubernetes/manifests/
|
||||
patchesStrategicMerge:
|
||||
- api-server-staging-patch.yaml
|
||||
- charging-engine-staging-patch.yaml
|
||||
namespace: telecom-platform-staging
|
||||
commonLabels:
|
||||
app.kubernetes.io/environment: staging
|
||||
app.kubernetes.io/managed-by: kustomize
|
||||
configMapGenerator:
|
||||
- name: telecom-platform-config
|
||||
literals:
|
||||
- LOG_LEVEL=info
|
||||
- ENVIRONMENT=staging
|
||||
- RATE_LIMIT_REQUESTS=500
|
||||
- RATE_LIMIT_WINDOW=60
|
||||
- METRICS_ENABLED=true
|
||||
secretGenerator:
|
||||
- name: telecom-platform-secrets
|
||||
literals:
|
||||
- DATABASE_URL=postgresql://postgres:staging123@postgres:5432/telecom_staging
|
||||
- REDIS_URL=redis://redis:6379
|
||||
- JWT_SECRET=staging-jwt-secret-key
|
||||
replicas:
|
||||
- name: api-server
|
||||
count: 2
|
||||
- name: charging-engine
|
||||
count: 2
|
||||
- name: packet-gateway
|
||||
count: 2
|
||||
- name: web-dashboard
|
||||
count: 2
|
||||
Reference in New Issue
Block a user