====== Schéma d'architecture ======
{{ :ujusum:x-ressources:architecture.svg |}}
====== k8s/ — Helm Umbrella Chart (19 fichiers) ======
k8s/
├── Chart.yaml # 7 dépendances : ingress-nginx, kong, cloudnative-pg,
│ # redis, minio, kube-prometheus-stack, cert-manager
├── values.yaml # valeurs par défaut
├── values-dev.yaml # 1 réplica partout, redis standalone, postgres 1 instance
├── values-prod.yaml # HPA activé, backups, 3 instances postgres, 4 pods minio
└── templates/
├── namespaces.yaml # frontend / backend / tools
├── _helpers.tpl
├── api/ # Deployment, Service, HPA, PDB, ServiceMonitor
├── frontends/ # Deployment + Service + Ingress (1 boucle range pour les 6 apps)
├── kong/ # KongPlugin (jwt, key-auth, rate-limit, spike-arrest) + HTTPRoute + ReferenceGrant
└── postgres/ # CloudNativePG Cluster + ScheduledBackup (backups → Minio)
====== Déploiement K8s ======
# Installer les CRDs d'abord (cert-manager, CloudNativePG, Kong Gateway API)
helm repo add ingress-nginx https://kubernetes.github.io/ingress-nginx
helm repo add konghq https://charts.konghq.com
helm repo add cnpg https://cloudnative-pg.github.io/charts
helm repo add bitnami https://charts.bitnami.com/bitnami
helm repo add prometheus-community https://prometheus-community.github.io/helm-charts
helm repo add jetstack https://charts.jetstack.io
helm repo update
cd k8s
helm dependency update
# Dev
helm install rental-platform . -f values-dev.yaml
# Prod
helm install rental-platform . -f values-prod.yaml