51 lines
1.7 KiB
Markdown
51 lines
1.7 KiB
Markdown
# Synchronisation des Secrets TLS
|
|
|
|
Ce chart gère la synchronisation des secrets TLS depuis le cluster OPS vers les autres clusters (DEV, RCT, PRD).
|
|
|
|
## Structure
|
|
|
|
- `Chart.yaml` : Définition du chart Helm
|
|
- `values.yaml` : Configuration par défaut
|
|
- `templates/` : Templates Kubernetes
|
|
- `namespace-certificates.yaml` : Namespace pour les certificats sur OPS
|
|
- `secret-*.yaml` : Secrets de référence (optionnel)
|
|
- `sync-job-*.yaml` : Jobs de synchronisation
|
|
- `rbac-secret-sync.yaml` : RBAC pour les Jobs
|
|
|
|
## Utilisation
|
|
|
|
### Option 1 : Synchronisation manuelle via script (Recommandée)
|
|
|
|
Utilisez le script `scripts/sync-tls-secret.sh` :
|
|
|
|
```bash
|
|
./scripts/sync-tls-secret.sh homarr-dev-tls cluster-ops certificates-ops cluster-dev homarr-dev
|
|
```
|
|
|
|
### Option 2 : Synchronisation automatique via Jobs
|
|
|
|
Les Jobs Kubernetes tentent de synchroniser automatiquement, mais nécessitent que les contextes kubectl soient configurés dans le pod.
|
|
|
|
### Option 3 : Synchronisation via CronJob
|
|
|
|
Créez un CronJob qui exécute le script de synchronisation périodiquement.
|
|
|
|
## Configuration
|
|
|
|
Les secrets sont synchronisés depuis :
|
|
- **Source** : Namespace `certificates-ops` sur cluster OPS
|
|
- **Destination** : Namespaces des applications sur clusters DEV/RCT/PRD
|
|
|
|
## Ajout d'un nouveau secret à synchroniser
|
|
|
|
1. Ajoutez une entrée dans `apps/applicationset-tls-secrets-sync.yaml`
|
|
2. Créez un template `sync-job-<app>-<env>.yaml` si nécessaire
|
|
3. Ou utilisez directement le script `sync-tls-secret.sh`
|
|
|
|
## Notes importantes
|
|
|
|
- Les contextes kubectl doivent être configurés pour accéder aux différents clusters
|
|
- Le namespace de destination doit exister sur le cluster cible
|
|
- Les secrets sont copiés avec leurs données, mais les métadonnées sont nettoyées
|
|
|