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 Helmvalues.yaml: Configuration par défauttemplates/: Templates Kubernetesnamespace-certificates.yaml: Namespace pour les certificats sur OPSsecret-*.yaml: Secrets de référence (optionnel)sync-job-*.yaml: Jobs de synchronisationrbac-secret-sync.yaml: RBAC pour les Jobs
Utilisation
Option 1 : Synchronisation manuelle via script (Recommandée)
Utilisez le script scripts/sync-tls-secret.sh :
./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-opssur cluster OPS - Destination : Namespaces des applications sur clusters DEV/RCT/PRD
Ajout d'un nouveau secret à synchroniser
- Ajoutez une entrée dans
apps/applicationset-tls-secrets-sync.yaml - Créez un template
sync-job-<app>-<env>.yamlsi nécessaire - 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